/// <summary> /// get the session data for persistent storage /// </summary> /// <returns></returns> public AnkiSessionData GetSessiondata() { var sessiondata = new AnkiSessionData() { Day = CurrentDay, CardsSet = _cardSet }; return(sessiondata); }
private void InitSession(List <Card> loadedcards, AnkiSessionData sessiondata = null) { if (sessiondata == null) { CurrentDay = 1; foreach (var card in loadedcards.OrderBy(c => c.Question)) { CardState cardstate = new CardState(card.Question, card.Answer); _cardSet.Add(cardstate); } } else { CurrentDay = sessiondata.Day + 1; _cardSet = sessiondata.CardsSet; } }
/// <summary> /// Session ctor /// </summary> /// <param name="newdeck">list of card loaded from disk</param> /// <param name="sessiondata">session data taken from the session store, null for the first sessino</param> public AnkiSession(List <Card> newdeck, AnkiSessionData sessiondata = null) { //_deck = new Dictionary<int, Card>(); _cardSet = new List <CardState>(); InitSession(newdeck, sessiondata); }