VocaController.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. using NEducation.Code;
  2. using NEducation.Models;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Configuration;
  6. using System.Linq;
  7. using System.ServiceModel;
  8. using System.Web;
  9. using System.Web.Mvc;
  10. namespace NEducation.Controllers
  11. {
  12. public class VocaController : Controller
  13. {
  14. // GET: Voca
  15. public ActionResult Index()
  16. {
  17. Session["navitab"] = "Voca";
  18. if (!CheckAuthToken())
  19. {
  20. Session.Clear();
  21. return Redirect("/Home/Index");
  22. }
  23. Session["courseType"] = "1";
  24. return View();
  25. }
  26. public ActionResult Learning(String lessonId, String lessonName)
  27. {
  28. if (CheckAuthToken())
  29. {
  30. System.Diagnostics.Debug.WriteLine("vocabulary lessonId: " + lessonId + " lessonName: " + lessonName);
  31. VocabularyModel model = new VocabularyModel();
  32. model.lessonId = lessonId;
  33. model.lessonName = lessonName;
  34. ViewBag.lessonName = lessonName;
  35. Session["lessonName"] = lessonName;
  36. // get lesson by lessonId
  37. UserRequest userRequest = new UserRequest();
  38. if (Session["msisdn"] == null) userRequest.users = null;
  39. else userRequest.users = Session["msisdn"] as string;
  40. userRequest.lessonId = lessonId;
  41. String rs = UtilsController.SendPost(userRequest, Session.SessionID, UtilsController.WsType.GetContentOfVocabulary);
  42. ListLessonData lessons = new ListLessonData(rs);
  43. Session["vocabularies"] = lessons;
  44. model.vocabularies = lessons.vocabularies;
  45. System.Diagnostics.Debug.WriteLine(model.vocabularies);
  46. Session["model"] = model;
  47. Session["lessonId"] = lessonId;
  48. return View("Learning", model);
  49. }
  50. else
  51. {
  52. Session.Clear();
  53. return Redirect("/Home/Index");
  54. }
  55. }
  56. public ActionResult LearningFinish(String lessonId)
  57. {
  58. if (CheckAuthToken())
  59. {
  60. ViewBag.lessonName = Session["lessonName"] as String;
  61. ViewBag.lessonId = lessonId;
  62. Session["lessonId"] = lessonId;
  63. VocabularyModel model = Session["model"] as VocabularyModel;
  64. return View("LearningFinish", model);
  65. }
  66. else
  67. {
  68. Session.Clear();
  69. return Redirect("/Home/Index");
  70. }
  71. }
  72. public ActionResult Testing(String lessonId)
  73. {
  74. if (CheckAuthToken())
  75. {
  76. VocabularyModel model = new VocabularyModel();
  77. UserRequest userRequest = new UserRequest();
  78. if (Session["msisdn"] == null) userRequest.users = null;
  79. else userRequest.users = Session["msisdn"] as string;
  80. userRequest.lessonId = lessonId;
  81. String rs = UtilsController.SendPost(userRequest, Session.SessionID, UtilsController.WsType.GetContentOfQuestion);
  82. System.Diagnostics.Debug.WriteLine("res: " + rs);
  83. ListLessonData lessons = new ListLessonData(rs);
  84. System.Diagnostics.Debug.WriteLine(lessons.questions);
  85. Session["questions"] = lessons;
  86. model.questions = lessons.questions;
  87. System.Diagnostics.Debug.WriteLine(model.questions);
  88. Session["model"] = model;
  89. Session["modelTestingType"] = "vocab";
  90. Session["lessonId"] = lessonId;
  91. Session["correctCount"] = 0;
  92. ViewBag.lessonName = Session["lessonName"] as String;
  93. return View("Testing", model);
  94. }
  95. else
  96. {
  97. Session.Clear();
  98. return Redirect("/Home/Index");
  99. }
  100. }
  101. public ActionResult TestingResult()
  102. {
  103. if (CheckAuthToken())
  104. {
  105. ViewBag.lessonName = Session["lessonName"] as String;
  106. ViewBag.lessonId = Session["lessonId"] as String;
  107. //VocabularyModel model = Session["model"] as VocabularyModel;
  108. var testingResult = Session["testingResult"];
  109. return View("TestingResult", testingResult);
  110. }
  111. else
  112. {
  113. Session.Clear();
  114. return Redirect("/Home/Index");
  115. }
  116. }
  117. private bool CheckAuthToken()
  118. {
  119. if (Session["AuthToken"] != null && Request.Cookies["AuthToken"] != null)
  120. {
  121. if (!Session["AuthToken"].ToString().Equals(Request.Cookies["AuthToken"].Value))
  122. {
  123. return false;
  124. }
  125. else
  126. {
  127. return true;
  128. }
  129. }
  130. else
  131. {
  132. return false;
  133. }
  134. }
  135. }
  136. }