// GET: Forms public ActionResult Index() { var id = Request.QueryString["id"]; if (id != null) { UpdateList(); SurveyViewModel s = listSurvey.Find(l => l.Id == new Guid(id)); if (s != null) { IsPreview = false; ViewBag.Survey = id; AccountController.RememberSurveyId(new Guid(id)); } } else { Guid s = AccountController.GetSurveyId(); if (s != null) { ViewBag.Survey = s; } } return(View()); }
// GET: Designs/Create public ActionResult Create() { if (AccountController.CheckPermission("Design-Create")) { System.Web.HttpContext.Current.Session["action"] = "Survey-Create"; UpdateList(); AnimatesController a = new AnimatesController(); ViewBag.Question = a.GetQuestion(AccountController.GetSurveyId()).OrderBy(x => x.Number); ViewBag.QuestionId = new SelectList(a.GetQuestion(AccountController.GetSurveyId()), "Id", "Content"); ViewBag.ImageTypeId = listImageType.ToList(); return(View()); } else { return(RedirectToAction("Index", "Home")); } }
//// GET: Questions //public ActionResult Index() //{ // UpdateList(); // return View(listQuestion); //} //[HttpGet] //public ActionResult Index(string searchString) //{ // if (!String.IsNullOrEmpty(searchString)) // { // SearchController s = new SearchController(); // return s.SearchOnDatabase(searchString); // } // else // { // UpdateList(); // return View(listQuestion); // } //} //// GET: Questions/Details/5 //public ActionResult Details(Guid? id) //{ // if (id == null) // { // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); // } // UpdateList(); // QuestionViewModel questionViewModel = listQuestion.Find(x => x.Id == id);//db.QuestionViewModels.Find(id); // if (questionViewModel == null) // { // return HttpNotFound(); // } // return View(questionViewModel); //} //// GET: Questions/Create //public ActionResult Create() //{ // UpdateList(); // ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type"); // ViewBag.SurveyId = new SelectList(listSurvey, "Id", "Title"); // return View(); //} //// POST: Questions/Create //// To protect from overposting attacks, please enable the specific properties you want to bind to, for //// more details see http://go.microsoft.com/fwlink/?LinkId=317598. //[HttpPost] //[ValidateAntiForgeryToken] //public ActionResult Create([Bind(Include = "Id,Content,Number,QuestionTypeId,TimeLength,SurveyId,IsFreeText,IsDeleted,ModifiedDate,ModifiedUserId,DeletionDate,DeletionUserId,CreatedDate,CreatedUserId")] QuestionViewModel questionViewModel) //{ // if (ModelState.IsValid) // { // questionViewModel.Id = Guid.NewGuid(); // questionViewModel.AddQuestion(questionViewModel); // return RedirectToAction("Index"); // } // UpdateList(); // ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type", questionViewModel.QuestionTypeId); // ViewBag.SurveyId = new SelectList(listSurvey, "Id", "Title", questionViewModel.SurveyId); // return View(questionViewModel); //} //------------Create Question in User---------------------------- public ActionResult TemporaryQuestion() { //UpdateList(); var id = AccountController.GetSurveyId(); var questions = db.Questions.Where(x => x.IsDeleted == false && x.SurveyId == id); List <QuestionViewModel> q = new List <QuestionViewModel>(); QuestionViewModel question; foreach (var item in questions) { question = new QuestionViewModel(item); question.GetQuestionAnswerViewList(); q.Add(question); } ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type"); // q.OrderBy(x => x.Number); return(View(q.OrderBy(x => x.Number))); }
//------end color //---------------------------apply to all public JsonResult ApplyAll(string questionId, string color, int size) { if (AccountController.CheckSurveyId()) { AnimateViewModel a; UpdateList(); var id = new Guid(questionId); var surveyId = AccountController.GetSurveyId(); var q = listQuestion.Where(x => x.SurveyId == surveyId); var animates = listAnimate.Where(x => x.QuestionId == id); if (animates != null) { foreach (var item in q) { if (item.Id != id) { item.FontColor = color; item.FontSize = size; item.UpdateQuestion(item); var animates2 = listAnimate.Where(x => x.QuestionId == item.Id); foreach (var i in animates) { var check = animates2.Where(x => x.imageType == i.imageType).FirstOrDefault(); if (check == null) { a = new AnimateViewModel { Id = Guid.NewGuid(), QuestionId = item.Id, ImageId = i.ImageId, Height = i.Height, Width = i.Width, PosX = i.PosX, PosY = i.PosY, Depth = i.Depth }; a.AddAnimate(); } else { check.ImageId = i.ImageId; check.Height = i.Height; check.Width = i.Width; check.PosX = i.PosX; check.PosY = i.PosY; check.Depth = i.Depth; check.UpdateAnimate(); } } if (animates.Count() < animates2.Count()) { foreach (var i in animates) { var check = animates2.Where(x => x.imageType != i.imageType); if (check != null) { foreach (var j in check) { j.DeleteAnimate(); } } } } } } } } return(Json(questionId, JsonRequestBehavior.AllowGet)); }
public JsonResult SaveAnswers(string answer, string answers, string questionid, string ipaddress, string browser) { List <QuestionAnswerViewModel> q = AccountController.GetQuestionAnswer(); RespondentViewModel r = AccountController.GetRespondent(); if (r == null) { r = new RespondentViewModel(); r.Id = Guid.NewGuid(); if (AccountController.CheckUser()) { r.UserId = AccountController.GetUser().Id; r.IsRegistered = true; } r.IPAdress = ipaddress; r.BrowserName = browser; r.SurveyId = AccountController.GetSurveyId(); } //q.Add(new QuestionViewModel{Id = new Guid(questionid)}); //int i = r.Count - 1; if (r.Responses == null) { r.Responses = new List <ResponseViewModel>(); } if (q == null) { q = new List <QuestionAnswerViewModel>(); } if (answer != null) { QuestionAnswerViewModel qa = new QuestionAnswerViewModel { Id = Guid.NewGuid(), QuestionId = new Guid(questionid), Answer = answer }; q.Add(qa); AccountController.RememberQuestionAnswer(q); ResponseViewModel rs = new ResponseViewModel { Id = Guid.NewGuid(), QuestionId = new Guid(questionid), ResponseAnswer = qa.Id, RespondentId = r.Id }; r.Responses.Add(rs); } else if (answers != "") { string[] a = answers.Split(','); //UpdateList(); //var type = listQuestion.Find(x=>x.Id==new Guid(questionid)).Type; //if (type == "Yes/No") //{ // answers = new List<string>(); //} foreach (var item in a) { if (item != "") { ResponseViewModel rs = new ResponseViewModel { Id = Guid.NewGuid(), QuestionId = new Guid(questionid), ResponseAnswer = new Guid(item), RespondentId = r.Id }; r.Responses.Add(rs); } } } AccountController.RememberRespondent(r); return(Json(true, JsonRequestBehavior.AllowGet)); }
// GET: Questions/Create //public ActionResult CreateQuestion() //{ // UpdateList(); // ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type"); // ViewBag.SurveyId = new SelectList(listSurvey, "Id", "Title"); // return View(); //} public ActionResult CreateQuestion(Guid QuestionTypeId, string Content, int?Count, string[] dynamicField) { QuestionViewModel questionViewModel = new QuestionViewModel(); if (QuestionTypeId != null && Content != null && Content != "") { questionViewModel.Id = Guid.NewGuid(); questionViewModel.QuestionTypeId = QuestionTypeId; questionViewModel.Content = Content; questionViewModel.Number = AccountController.Count(); questionViewModel.SurveyId = AccountController.GetSurveyId(); questionViewModel.Survey = AccountController.GetSurvey(); questionViewModel.TimeLength = TimeSpan.FromSeconds(3); if (Count != null) { if (Count < 2) { return(RedirectToAction("Create", "Surveys", new { error = "Scale should more than two" })); } questionViewModel.IsScale = true; questionViewModel.Count = (int)Count; questionViewModel.AddQuestion(questionViewModel); } else if (dynamicField.Count() > 0 && dynamicField[0] != "") { questionViewModel.AddQuestion(questionViewModel); List <QuestionAnswerViewModel> answer = new List <QuestionAnswerViewModel>(); QuestionAnswerViewModel q = new QuestionAnswerViewModel(); int i = 1; foreach (var item in dynamicField) { if (item != "" && item != null) { q = new QuestionAnswerViewModel(); q.Id = Guid.NewGuid(); q.QuestionId = questionViewModel.Id; q.Answer = item; q.OrderNumber = i; answer.Add(q); i++; } else { return(RedirectToAction("Create", "Surveys", new { error = "Answer can't be empty" })); } } foreach (var item in answer) { item.AddQuestionAnswer(item); } } else { questionViewModel.IsFreeText = true; questionViewModel.AddQuestion(questionViewModel); } TemporaryQuestion(); UpdateList(); ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type", questionViewModel.QuestionTypeId); ViewBag.SurveyId = new SelectList(listSurvey, "Id", "Title", questionViewModel.SurveyId); return(RedirectToAction("Create", "Surveys")); } UpdateList(); ViewBag.QuestionTypeId = new SelectList(listQuestionType, "Id", "Type", questionViewModel.QuestionTypeId); ViewBag.SurveyId = new SelectList(listSurvey, "Id", "Title", questionViewModel.SurveyId); return(RedirectToAction("Create", "Surveys", new { error = "Question can't be empty" })); }