public List <FlashCard> GetAllFlashCards(int deckID) { List <FlashCard> cardsList = new List <FlashCard>(); try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); SqlCommand cmd = new SqlCommand(SQL_GetAllCardsAssociatedWithDeck, conn); cmd.Parameters.AddWithValue("@Deck_id", deckID); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { FlashCard tempCard = new FlashCard(); tempCard.cardID = Convert.ToInt32(reader["Card_id"]); tempCard.question = Convert.ToString(reader["Question"]); tempCard.answer = Convert.ToString(reader["Answer"]); tempCard.image = Convert.ToString(reader["Image"]); tempCard.tag = Convert.ToString(reader["Name"]); cardsList.Add(tempCard); } } } catch (SqlException) { throw; } return(cardsList); }
public bool UpdateCard(int id, FlashCard card) { int rowsAffected = -1; try { using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlCommand cmd = new SqlCommand(SQL_UpdateCard, connection); cmd.Parameters.AddWithValue("@question", card.question); cmd.Parameters.AddWithValue("@image", card.image); cmd.Parameters.AddWithValue("@answer", card.answer); cmd.Parameters.AddWithValue("@tagName", card.tag); cmd.Parameters.AddWithValue("@cardId", card.cardID); rowsAffected = cmd.ExecuteNonQuery(); } } catch (Exception) { throw; } return(rowsAffected > 0); }
public void CreateCard(FlashCard newCard, int deckID) { try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); SqlCommand cmd = new SqlCommand(SQL_CreateNewCardInCardTable, conn); cmd.Parameters.AddWithValue("@Question", newCard.question); cmd.Parameters.AddWithValue("@Answer", newCard.answer); cmd.Parameters.AddWithValue("@Image", newCard.image); cardID = Convert.ToInt32(cmd.ExecuteScalar()); cmd = new SqlCommand(SQL_CreateNewTagInTagTable, conn); cmd.Parameters.AddWithValue("@Name", newCard.tag); tagID = Convert.ToInt32(cmd.ExecuteScalar()); cmd = new SqlCommand(SQL_CreateNewCardDeckRelationship, conn); cmd.Parameters.AddWithValue("@Deck_id", deckID); cmd.Parameters.AddWithValue("@Card_id", cardID); cmd.ExecuteScalar(); cmd = new SqlCommand(SQL_CreateNewTagCardRelationship, conn); cmd.Parameters.AddWithValue("@Card_id", cardID); cmd.Parameters.AddWithValue("@Tag_id", tagID); cmd.ExecuteScalar(); } } catch (SqlException) { throw; } }
public FlashCard GetSingleCard(int id) { FlashCard singleFlashCard = new FlashCard(); try { using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); SqlCommand cmd = new SqlCommand(SQL_GetSingleCard, conn); cmd.Parameters.AddWithValue("@id", id); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { singleFlashCard.cardID = Convert.ToInt32(reader["Card_id"]); singleFlashCard.question = Convert.ToString(reader["Question"]); singleFlashCard.image = Convert.ToString(reader["Image"]); singleFlashCard.answer = Convert.ToString(reader["Answer"]); singleFlashCard.tag = Convert.ToString(reader["Name"]); } } } catch (SqlException) { throw; } return(singleFlashCard); }
private void VerifyFlashCards(Collection newCollection, IEnumerable <FlashCardCollection> flashcards) { foreach (var fc in flashcards) { var flashCard = _flashCardRepository.Obter(fcp => fcp.Question == fc.FlashCard.Question, i => i.Samples).SingleOrDefault(); if (flashCard == null) { flashCard = new FlashCard { Question = fc.FlashCard.Question, Answer = fc.FlashCard.Answer, Status = fc.FlashCard.Status, Samples = fc.FlashCard.Samples }; } else { /* * foreach (var sample in fc.FlashCard.Samples) * { * flashCard.Samples.Add(sample); * }*/ } newCollection.AddFlashCard(flashCard, fc.Occurrences); } }
protected async override void OnNavigatedTo(NavigationEventArgs e) { deckName = NavigationContext.QueryString["deck"]; cardName = NavigationContext.QueryString["card"]; var folder = await Windows.Storage.ApplicationData.Current.LocalFolder.CreateFolderAsync("decks", CreationCollisionOption.OpenIfExists); var stream = await(await(await folder.GetFolderAsync(deckName)).GetFileAsync(cardName)).OpenStreamForReadAsync(); using (StreamReader reader = new StreamReader(stream)) { string s = await reader.ReadToEndAsync(); FlashCard f = JsonConvert.DeserializeObject <FlashCard>(s); panel.DataContext = f; foreach (var v in f.Definitions) { PhoneTextBox box = new PhoneTextBox(); box.Style = this.Resources["temp"] as Style; box.Text = v; box.TextWrapping = TextWrapping.Wrap; boxes.Add(box); list.Children.Add(box); } } }
public void FlashCard_Constructor() { // Données du test FlashCard cardTestOK = new FlashCard("test", "test"); FlashCard cardTestEmpty1 = new FlashCard("", "test"); FlashCard cardTestEmpty2 = new FlashCard("test", ""); FlashCard cardTestEmpty3 = new FlashCard("", ""); FlashCard cardTestSpace1 = new FlashCard(" ", "test"); FlashCard cardTestSpace2 = new FlashCard("test", " "); FlashCard cardTestSpace3 = new FlashCard(" ", " "); FlashCard cardTestNull1 = new FlashCard(null, "test"); FlashCard cardTestNull2 = new FlashCard("test", null); FlashCard cardTestNull3 = new FlashCard(null, null); // Test Boolean result1 = cardTestOK.IsCardOK(); Boolean result2 = cardTestEmpty1.IsCardOK() || cardTestEmpty2.IsCardOK() || cardTestEmpty3.IsCardOK(); Boolean result3 = cardTestSpace1.IsCardOK() || cardTestSpace2.IsCardOK() || cardTestSpace3.IsCardOK(); Boolean result4 = cardTestNull1.IsCardOK() || cardTestNull2.IsCardOK() || cardTestNull3.IsCardOK(); // Vérification Assert.IsTrue(result1, "Echec du test sur la valeur correct"); Assert.IsFalse(result2, "Echec du test sur une chaîne de caractères vide"); Assert.IsFalse(result3, "Echec du test sur une chaîne de caractère remplis d'espace"); Assert.IsFalse(result4, "Echec du test sur une chaîne de caractère NULL"); }
public void IsCardAlreadyIn() { // Data FlashCard cardBase = new FlashCard("test", "test"); FlashCard cardReplica = new FlashCard("test", "test"); FlashCard cardOtherReference = cardBase; Quiz quizTest = new Quiz("quizTest"); // Tests quizTest.AddCard(cardBase); Boolean result1 = (quizTest.GetCards().Count == 1); quizTest.AddCard(cardBase); Boolean result2 = (quizTest.GetCards().Count == 1); quizTest.GetCards().Clear(); quizTest.AddCard(cardBase); quizTest.AddCard(cardReplica); Boolean result3 = (quizTest.GetCards().Count == 1); quizTest.GetCards().Clear(); quizTest.AddCard(cardBase); quizTest.AddCard(cardOtherReference); Boolean result4 = (quizTest.GetCards().Count == 1); // Verification Assert.IsTrue(result1, "Erreur l'ajout d'une carte à un quiz vide ne fonctionne pas"); Assert.IsTrue(result2, "Erreur l'ajout d'une carte deux fois au même quiz a été autorisé"); Assert.IsTrue(result3, "Erreur l'ajout de deux carte différente mais dont les valeurs sont identiques a été autorisé"); Assert.IsTrue(result4, "Erreur l'ajout d'une copie d'une carte avec une référence différente a été autorisé"); }
private async void ApplicationBarIconButton_Click(object sender, EventArgs e) { var folder = await Windows.Storage.ApplicationData.Current.LocalFolder.CreateFolderAsync("decks", CreationCollisionOption.OpenIfExists); folder = await folder.GetFolderAsync(deckName); ObservableCollection <string> ss = new ObservableCollection <string>(); foreach (var v in boxes) { ss.Add(v.Text); } FlashCard f = new FlashCard(cardName, ss); string fs = JsonConvert.SerializeObject(f); var file = await folder.CreateFileAsync(cardName, CreationCollisionOption.ReplaceExisting); using (var stream = await file.OpenStreamForWriteAsync()) { byte[] bytes = System.Text.Encoding.UTF8.GetBytes(fs.ToCharArray()); await stream.WriteAsync(bytes, 0, bytes.Length); } NavigationService.GoBack(); }
/// <summary> /// Executes a docking station diagnostic operation. /// </summary> /// <returns>Docking station event</returns> public DockingStationEvent Execute() { // Initialize resource manager's culture to be same as current configuration culture. DiagnosticResources.Culture = Configuration.DockingStation.Language.Culture; // Make the return event and return diagnostic and wire them together. DiagnosticEvent dsEvent = new DiagnosticEvent( this ); dsEvent.DockingStation = Controller.GetDockingStation(); // Retrieve IDS's complete information. // Make the builder for the details. DetailsBuilder details = new DetailsBuilder(); details.AddDockingStation( dsEvent.DockingStation ); // SGF 23-May-2011 INS-1741 ReportDiagnosticDate(details); GeneralDiagnostic generalDiagnostic = new GeneralDiagnostic( Configuration.DockingStation.SerialNumber, DateTime.UtcNow ); ExecuteDiagnostics( dsEvent, details ); // Retrieve the details. dsEvent.Details = details.ToString(); // Write the details to a log file. FlashCard.WriteTextFile( LAST_RUN_DETAILS_FILE_NAME, dsEvent.Details ); dsEvent.Diagnostics.Add( generalDiagnostic ); generalDiagnostic.Items = _gdpList.ToArray(); return dsEvent; // Return the event }
protected void Page_Load(object sender, EventArgs e) { db = (FlashEntities)Session["db"]; if (Session["user"] == null) { Response.Redirect("~/Default.aspx"); } user = (Student)Session["user"]; if (Session["quiz"] == null) { quiz = new FlashCard(); Session["quiz"] = quiz; } else { quiz = (FlashCard)Session["quiz"]; } if (!IsPostBack) { quiz.Op = "+"; btnAnswer.Enabled = false; lblQuestion.Text = "----------"; lblCorrect.Text = ""; lblWelcome.Text = "Welcome " + user.FirstName + " " + user.LastName; lblMessage.Visible = false; lblCorrect.Visible = false; } }
public void ViewModelTestEditACard() { Group m = new Group(); m.Setup(); m.testMode = true; FlashCard card = new FlashCard("Question", "Answer", "Test"); FlashCard newCard = new FlashCard("que", "ans", "Test"); m.Cards.Add(card); FlashCardsViewModel vm = new FlashCardsViewModel("Test", m.Cards, m); vm.EditFlashCard(card, newCard); bool found = false; foreach (FlashCard f in vm.AllCards) { if (f.ToString() == card.ToString()) { found = true; } } Assert.IsFalse(found); // this should be false }
public void ViewModelTestEditAGroup() { Group m = new Group(); m.Setup(); m.testMode = true; FirstPageViewModel vm = new FirstPageViewModel(m); vm.NewGroup = "Test"; FlashCard card = new FlashCard("Example question", "Example answer", "Test"); vm.AddGroupToList(); ListOfUniqueGroups L = new ListOfUniqueGroups(); vm.EditGroupName("Test", "Edit"); bool found = false; foreach (FlashCard f in vm.FlashCards) { if (f.Group == card.Group) { found = true; } } Assert.IsFalse(found); // this should be false }
public ActionResult <List <FlashCard> > updateFlashCard([FromForm] FlashCard updatedCard, int id) { //for security, make sure that the id used in API call matches the id in the flashcard object that's passed in if (updatedCard.image == null) { updatedCard.image = ""; } //make sure this card is, in fact, already existing in the DB var existingCard = Dal.GetSingleCard(id); if (existingCard == null || existingCard.cardID == 0) { return(NotFound()); } //For fields passed in from the API ... if those fields are null, keep the existing data in the DB //For the fields passed in from API that are NOT null, update that data in the DB existingCard.question = updatedCard.question == "" ? existingCard.question : updatedCard.question; existingCard.image = updatedCard.image == "" ? existingCard.image : updatedCard.image; existingCard.answer = updatedCard.answer == "" ? existingCard.answer : updatedCard.answer; existingCard.tag = updatedCard.tag == "" ? existingCard.tag : updatedCard.tag; bool isNowUpdated = Dal.UpdateCard(id, existingCard); if (isNowUpdated) { return(Dal.GetFlashCardsByTag(existingCard.tag)); } return(NotFound()); }
public void FlashCard_IsStringValid() { // Données du test string ok = "test OK"; string emptyString = ""; string nullString = null; string spaceString = " "; FlashCard cardTest = new FlashCard("test", "test"); // Test Boolean Result1 = cardTest.IsStringValid(ok); Boolean Result2 = cardTest.IsStringValid(emptyString); Boolean Result3 = cardTest.IsStringValid(nullString); Boolean Result4 = cardTest.IsStringValid(spaceString); // Vérification Assert.IsTrue(Result1, "Echec du test sur la valeur correct"); Assert.IsFalse(Result2, "Echec du test sur la valeur vide"); Assert.IsFalse(Result3, "Echec du test sur la valeur null"); Assert.IsFalse(Result4, "Echec du test sur la valeur espace"); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Question,Answer,UserId")] FlashCard flashCard) { if (id != flashCard.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(flashCard); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FlashCardExists(flashCard.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["UserId"] = new SelectList(_context.ApplicationUsers, "Id", "Id", flashCard.UserId); return(View(flashCard)); }
public ActionResult AddFlashCard([Bind(Include = "ID,Word1,Word2,Image")] FlashCard flashCard) { int id = flashCard.ID; String Word1 = flashCard.Word1; String Word2 = flashCard.Word2; Chapter chapter = db.Chapters.Find(flashCard.ID); int rc = chapter.FlashCards.FindLastIndex(a => a.ID > 0); rc++; flashCard.Word1 = Word1; flashCard.Word2 = Word2; flashCard.ID = rc; flashCard.UserID = User.Identity.Name; HttpPostedFileBase file = Request.Files["Imagefile"]; if (file != null && file.ContentLength > 0) { flashCard.Image = file.FileName; file.SaveAs(HttpContext.Server.MapPath("~/images/") + flashCard.Image); } db.FlashCards.Add(flashCard); chapter.FlashCards.Add(flashCard); db.Entry(chapter).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Details" + "/" + id)); }
public void ViewModelTestDeleteAGroup() { Group m = new Group(); m.Setup(); m.testMode = true; FirstPageViewModel vm = new FirstPageViewModel(m); vm.NewGroup = "Test"; FlashCard card = new FlashCard("Example question", "Example answer", "Test"); vm.AddGroupToList(); ListOfUniqueGroups L = new ListOfUniqueGroups(); L.Name = "Test"; vm.DeleteItem(L); bool found = false; foreach (FlashCard f in vm.FlashCards) { if (f.ToString() == card.ToString()) { found = true; } } Assert.IsFalse(found); // this should be false }
public static void Main(string[] args) { Console.WriteLine("Welcome to the FLASH CARD quiz"); FlashCard quiz = new FlashCard(); Console.Write("Please select an operation (+, -, * or /)? "); quiz.Op = Console.ReadLine(); Console.WriteLine("To exit the quiz enter a blank answer."); bool playing = true; while (playing) { string equation = quiz.BuildEquation(); Console.Write(equation); string temp = Console.ReadLine(); if (temp.Length == 0) { playing = false; } else { double answer = double.Parse(temp); if (quiz.CheckAnswer(answer) == true) { Console.WriteLine("CORRECT"); } else { Console.WriteLine("INCORRECT"); } } } }
public void GetRandomQuestion() { int randomQuestionIndex = Random.Range(0, unansweredQuestions.Count); currentQuestion = unansweredQuestions[randomQuestionIndex]; factText.text = currentQuestion.fact; }
public ActionResult DeleteConfirmed(int id) { FlashCard flashCard = db.FlashCards.Find(id); db.FlashCards.Remove(flashCard); db.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult Complete(int fId) { FlashCard leCurrent = dbContext.FlashCards.FirstOrDefault(a => a.FlashCardId == fId); leCurrent.IsComplete = true; dbContext.SaveChanges(); return(RedirectToAction("Study", new { ChId = leCurrent.ChapterId })); }
public EditFlashCardViewModel(FlashCard card, FlashCardsViewModel flashCardsViewModel) { this.oldFlashCard = card; this.flashCardsViewModel = flashCardsViewModel; Question = card.Question; Answer = card.Answer; SaveCommand = new Command(execute: SaveNewCard); }
public static double TypingGameStart() { Console.WriteLine("Type without errors: "); FileStream fs = new FileStream("dotnet.txt", FileMode.Open); Deck deck = new Deck("CSharp"); using (StreamReader sr = new StreamReader(fs)) { String line; FlashCard card = new FlashCard(); while ((line = sr.ReadLine()) != null) { if (line.Count() > 4)//is valid line { //Console.WriteLine(line); card = new FlashCard(); card.Question = line; deck.Add(card); } } } deck.cards = deck.cards.Randomize(); double points = 0; Stopwatch sw = Stopwatch.StartNew(); for (int i = 0; i < 2; i++) { //Question must contain one word FlashCard c = (FlashCard)deck.cards[i]; Regex rx = new Regex(@"\b([a-zA-Z]+)\b"); if (rx.IsMatch(c.Question)) { var taa = ""; int j = 0; while (!taa.Equals(c.Question.Trim()) && j < 1) { Console.WriteLine("\n{0}", c.Question); sw.Restart(); taa = Console.ReadLine(); sw.Stop(); j++; if (taa.Equals(c.Question.Trim())) { points += 1; /// sw.Elapsed.TotalSeconds; Console.WriteLine("points: \n{0}\naverage: {1}", points, points / i); } } } } return(points); }
/// <summary> /// function to enqueue more cards to the Cards card queue to keep the game going /// </summary> public void EnqueueCard() { Random random = new Random(); FlashCard fc = new FlashCard(random.Next(0, 100), random.Next(0, 100), random.Next(0, 4)); switch (fc.Operator) { case (0): //add fc.OperatorSymbol = "+"; fc.Answer = fc.FirstOperand + fc.SecondOperand; break; case (1): //subtract fc.OperatorSymbol = "-"; if (fc.FirstOperand < fc.SecondOperand) //make sure the first operand is always greater than the second operand { int temp = fc.FirstOperand; fc.FirstOperand = fc.SecondOperand; fc.SecondOperand = temp; } fc.Answer = fc.FirstOperand - fc.SecondOperand; break; case (2): //multiply fc.OperatorSymbol = "X"; if (fc.FirstOperand > 10 && fc.SecondOperand > 10) //make sure at least one of the operands is <=10 for calculation simplicity { int randomizer = random.Next(0, 2); ///randomize the position of the operand <10 in the arithmetic problem switch (randomizer) { case (0): fc.FirstOperand = random.Next(0, 11); break; case (1): fc.SecondOperand = random.Next(0, 11); break; } } fc.Answer = fc.FirstOperand * fc.SecondOperand; break; case (3): //divide fc.OperatorSymbol = "/"; fc.SecondOperand = random.Next(1, 20); //regenerate the second operand to prevent it from being 0 or too large if (fc.FirstOperand < fc.SecondOperand || fc.FirstOperand % fc.SecondOperand != 0) //make sure at least one of the operand or the answer of the problem is <=10 for calculation simplicity { fc.FirstOperand = fc.SecondOperand * random.Next(1, 11); } fc.Answer = fc.FirstOperand / fc.SecondOperand; break; } Cards.Enqueue(fc); InputAnswer = null; }
public void UpdateFlashCard(FlashCard frontEndCard) { FlashCard updateCard = FCContext.FCards.Single(x => x.Id == frontEndCard.Id); updateCard.Category = frontEndCard.Category; updateCard.Front = frontEndCard.Front; updateCard.Back = frontEndCard.Back; FCContext.SaveChanges(); }
public ActionResult Edit([Bind(Include = "CardId,CardType,Question,Answer")] FlashCard flashCard) { if (ModelState.IsValid) { db.Entry(flashCard).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(flashCard)); }
public bool NextFlashCard(out FlashCard card) { if (_gameState == GameState.NotReady || _gameState == GameState.Result) { throw new ServiceException("Invalid state"); } if (_gameState != GameState.Ready && !_currentGuessed) { _skipNumber++; } if (_currentIndex == _cardList.Count) { _gameState = GameState.Result; card = null; _currentCard = null; return(false); } _gameState = GameState.Playing; card = _cardList.ElementAt(_currentIndex++); card.Number = _currentIndex; _currentCard = card; _currentGuessed = false; _currentWrong = false; _hintCts?.Cancel(); _hintCts = new CancellationTokenSource(); if (ConfigurationService.Current.ShowHint) { Task.Factory.StartNew(() => RequestHint(_hintCts.Token)); } if (_gameMode == GameMode.GuessMode) { _tangoService.Mark(_currentCard.Tango, Mark.Seen); var tmpTangoList = new List <Tango>(_tangoList); tmpTangoList.Shuffle(); tmpTangoList.Remove(card.Tango); var correctIndex = new Random().Next(NumberOfCards); var guessList = new List <Tango>(); for (var i = 0; i < NumberOfCards; i++) { guessList.Add(i == correctIndex ? card.Tango : tmpTangoList.ElementAt(i)); } GuessTangoList = guessList; } return(true); }
public IActionResult NewWordSubmit(FlashCard NewCard, int ChId) { if (ModelState.IsValid) { NewCard.ChapterId = ChId; dbContext.FlashCards.Add(NewCard); dbContext.SaveChanges(); return(RedirectToAction("NewWord", new { ChId = ChId })); } return(View("NewWord")); }
public ActionResult Create([Bind(Include = "CardId,CardType,Question,Answer")] FlashCard flashCard) { if (ModelState.IsValid) { db.FlashCards.Add(flashCard); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(flashCard)); }