ListeningController.cs 6.0 KB

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