Example #1
0
        public async Task <ActionResult> TakeSurvey(string refno, string email)
        {
            if (String.IsNullOrEmpty(refno) || String.IsNullOrEmpty(email))
            {
                return(HttpNotFound());
            }

            var resSurvey = await WepApiMethod.SendApiAsync <ReturnSurveyModel>(HttpVerbs.Get, $"RnP/Survey/GetLinkedSurvey?refno={refno}&email={email}");

            if (!resSurvey.isSuccess)
            {
                return(HttpNotFound());
            }

            var survey = resSurvey.Data;

            if (survey == null)
            {
                return(HttpNotFound());
            }

            var sresp = new UpdateSurveyResponseModel
            {
                SurveyID = survey.ID,
                Type     = Model.SurveyResponseTypes.Actual,
                Email    = email,
                Contents = ""
            };

            var srmodel = new ReturnSurveyResponseModel
            {
                Survey   = survey,
                Response = sresp
            };

            if (survey.StartDate > DateTime.Now)
            {
                return(RedirectToAction("SurveyNotStarted", "Home", new { area = "RnP", id = survey.ID }));
            }
            if (survey.EndDate < DateTime.Now)
            {
                return(RedirectToAction("SurveyExpired", "Home", new { area = "RnP", id = survey.ID }));
            }

            if (survey.RequireLogin && (!CurrentUser.IsAuthenticated()))
            {
                return(RedirectToAction("LoginAndReturn", "Auth", new { area = "", returnurl = "~/RnP/Home/TakeSurvey?refno=" + refno + "&email=" + email }));
            }
            else
            {
                return(View(srmodel));
            }
        }
Example #2
0
        // Answer targeted survey
        // GET: RnP/Home/PrivateSurvey
        public async Task <ActionResult> PrivateSurvey(int?id)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }

            var resSurvey = await WepApiMethod.SendApiAsync <ReturnSurveyModel>(HttpVerbs.Get, $"RnP/Survey?id={id}");

            if (!resSurvey.isSuccess)
            {
                return(HttpNotFound());
            }

            var survey = resSurvey.Data;

            if (survey == null)
            {
                return(HttpNotFound());
            }

            var sresp = new UpdateSurveyResponseModel
            {
                SurveyID = survey.ID,
                Type     = Model.SurveyResponseTypes.Actual,
                Contents = ""
            };

            var srmodel = new ReturnSurveyResponseModel
            {
                Survey   = survey,
                Response = sresp
            };

            if (survey.StartDate > DateTime.Now)
            {
                return(RedirectToAction("SurveyNotStarted", "Home", new { area = "RnP", id = survey.ID }));
            }
            if (survey.EndDate < DateTime.Now)
            {
                return(RedirectToAction("SurveyExpired", "Home", new { area = "RnP", id = survey.ID }));
            }

            return(View(srmodel));
        }