Ejemplo n.º 1
0
        private static void AddNewCard(IndividualCardModel newCard, Guid parentSetID, SqliteConnection db)
        {
            SqliteCommand insertCardCommand = new SqliteCommand();

            insertCardCommand.Connection = db;

            insertCardCommand.CommandText =
                "INSERT INTO IndividualFlashcard VALUES " +
                "(" +
                "NULL," +
                "@Term, " +
                "@Definition, " +
                "@CardID, " +
                "@ParentSetID, " +
                "@IsLearned, " +
                "@IsStarred" +
                ");";

            insertCardCommand.Parameters.AddWithValue("@Term", newCard.Term);
            insertCardCommand.Parameters.AddWithValue("@Definition", newCard.Definition);
            insertCardCommand.Parameters.AddWithValue("@CardID", newCard.CardID);
            insertCardCommand.Parameters.AddWithValue("@ParentSetID", parentSetID);
            insertCardCommand.Parameters.AddWithValue("@IsLearned", newCard.IsLearned);
            insertCardCommand.Parameters.AddWithValue("@IsStarred", newCard.IsStarred);
            insertCardCommand.ExecuteReader();
        }
 private void StarCardFunction(IndividualCardModel cardToStar)
 {
     if (!cardToStar.IsStarred)
     {
         for (int i = 0; i < TempFlashCardSet.FlashcardCollection.Count; i++)
         {
             if (!TempFlashCardSet.FlashcardCollection[i].IsStarred)
             {
                 TempFlashCardSet.FlashcardCollection.Move(TempFlashCardSet.FlashcardCollection.IndexOf(cardToStar), i);
                 break;
             }
         }
         cardToStar.IsStarred = true;
     }
     else
     {
         TempFlashCardSet.FlashcardCollection.Move(TempFlashCardSet.FlashcardCollection.IndexOf(cardToStar), TempFlashCardSet.FlashcardCollection.Count - 1);
         cardToStar.IsStarred = false;
     }
 }
Ejemplo n.º 3
0
        private static void EditFlashcard(IndividualCardModel editedCard, SqliteConnection db)
        {
            SqliteCommand editCardCommand = new SqliteCommand();

            editCardCommand.Connection = db;

            editCardCommand.CommandText =
                "UPDATE IndividualFlashcard " +
                "SET " +
                "Term = @Term, " +
                "Definition = @Definition, " +
                "IsLearned = @IsLearned, " +
                "IsStarred = @IsStarred " +
                "WHERE " +
                "CardID = @CardID;";

            editCardCommand.Parameters.AddWithValue("@Term", editedCard.Term);
            editCardCommand.Parameters.AddWithValue("@Definition", editedCard.Definition);
            editCardCommand.Parameters.AddWithValue("@CardID", editedCard.CardID);
            editCardCommand.Parameters.AddWithValue("@IsLearned", editedCard.IsLearned);
            editCardCommand.Parameters.AddWithValue("@IsStarred", editedCard.IsStarred);
            editCardCommand.ExecuteReader();
        }
        private async Task <bool> SaveAction(bool goingHomeAfter = false)
        {
            if (OriginalFlashCardSet != null)
            {
                if (!PerformValidation())
                {
                    await new MessageDialog("Set name and\\or description are too long.").ShowAsync();
                    return(false);
                }
                OriginalFlashCardSet.Name        = TempFlashCardSet.Name;
                OriginalFlashCardSet.Description = TempFlashCardSet.Description;
                OriginalFlashCardSet.IsStarred   = TempFlashCardSet.IsStarred;

                foreach (IndividualCardModel editedCard in TempFlashCardSet.FlashcardCollection)
                {
                    int indexOfOriginal = OriginalFlashCardSet.FlashcardCollection.IndexOf(editedCard);
                    if (indexOfOriginal > -1)
                    {
                        IndividualCardModel originalCard = OriginalFlashCardSet.FlashcardCollection[indexOfOriginal];
                        if (originalCard.CardID.Equals(editedCard.CardID))
                        {
                            originalCard.IsLearned  = editedCard.IsLearned;
                            originalCard.IsStarred  = editedCard.IsStarred;
                            originalCard.Term       = editedCard.Term;
                            originalCard.Definition = editedCard.Definition;
                        }
                    }
                    else
                    {
                        OriginalFlashCardSet.FlashcardCollection.Add(editedCard);
                    }
                }

                for (int i = 0; i < OriginalFlashCardSet.FlashcardCollection.Count; i++)
                {
                    IndividualCardModel originalCard = OriginalFlashCardSet.FlashcardCollection[i];
                    if (!TempFlashCardSet.FlashcardCollection.Contains(originalCard))
                    {
                        OriginalFlashCardSet.FlashcardCollection.Remove(originalCard);
                        i--;
                    }
                }

                for (int i = 0; i < TempFlashCardSet.FlashcardCollection.Count; i++)
                {
                    int indexInOriginal = OriginalFlashCardSet.FlashcardCollection.IndexOf(TempFlashCardSet.FlashcardCollection[i]);
                    if (indexInOriginal > -1)
                    {
                        OriginalFlashCardSet.FlashcardCollection.Move(indexInOriginal, i);
                    }
                }
            }
            else if (ImportedFlashcardSets == null)
            {
                if (!PerformValidation())
                {
                    await new MessageDialog("Set name and\\or description are too long.").ShowAsync();
                    return(false);
                }
                OriginalFlashCardSet = TempFlashCardSet;
            }
            else
            {
                return(await NextImportedSetAction(true, goingHomeAfter));
            }

            prNavigationService.NavigateTo("SetPage");
            Messenger.Default.Send(OriginalFlashCardSet, "SetView");
            Messenger.Default.Send(OriginalFlashCardSet, "EditSet");
            return(true);
        }
 private void DeleteCardFunction(IndividualCardModel cardlToDelete)
 {
     TempFlashCardSet.RemoveCardFromSet(cardlToDelete);
 }