Ejemplo n.º 1
0
 // GET: Questionnaire/Update/id
 public ActionResult Update(int id)
 {
     try
     {
         using (var dataContext = new HuntingEntities())
         {
             var user = AclUserContext.GetDetail(dataContext, User.Identity.Name);
             if (user == null)
             {
                 ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                 return(RedirectToAction("Index", "Home"));
             }
             var questionnaire = QuestionnaireContext.GetDetail(dataContext, id);
             if (questionnaire == null)
             {
                 ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_FOUND);
                 return(RedirectToAction("Index", "Home"));
             }
             if (user.CanUpdateTerritory(questionnaire.MapItemType.Territory) == false)
             {
                 ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                 return(RedirectToAction("Index", "Territory", new { id = questionnaire.MapItemType.TerritoryId }));
             }
             var model = new QuestionnaireUpdateModel(questionnaire);
             return(View(model));
         }
     }
     catch (Exception exception)
     {
         logger.Error(exception, "QuestionnaireController");
         ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Danger, GlobalRes.ERROR_EXCEPTION);
         return(RedirectToAction("Index", "Home"));
     }
 }
Ejemplo n.º 2
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, QuestionnaireContext questionnaireContext)
        {
            questionnaireContext.Database.Migrate();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseStaticFiles();

            app.UseRouting();

            app.UseAuthorization();

            app.UseEndpoints(endpoints => {
                endpoints.MapRazorPages();
            });
        }
        private static MailContent createVendorReportEmail(Vendor vendor, String recipient, UserPurchase user, int categoryId)
        {
            MailContent mailContent = new MailContent();

            mailContent.MailFrom      = vendorsContactEmail;
            mailContent.MailingAdress = recipient;
            QuestionnaireContext _context = new QuestionnaireContext();
            String sectionName            = (categoryId != 0) ? _context.Categories.Where(x => x.Id == categoryId).First().Title
                : "General List of ‘Suggested Service Providers’";

            mailContent.Subject  = "Referral from AFFI-FSMA Assessments – Request for Information";
            mailContent.HtmlText = "<table border=\"0\" cellpadding=\"1\" cellspacing=\"1\" style=\"width: 600px;\">"
                                   + "<tbody><tr><td>"
                                   + "<img alt=\"\" src=\"http://affi-fsma.seneca.com/Content/img/affi_logo.jpg\" style=\"width: 100px; height: 73px;\" /></td>"
                                   + "<td><div><span style=\"font-size:18px;\"><strong>Responses from the AFFI &ndash; FSMA Self Assessment</strong></span></div>"
                                   + "<div><span style=\"font-size:18px;\"><strong>Request for Information to &ldquo;Suggested Service Provider&rdquo;</strong></span></div>"
                                   + "</td></tr></tbody></table><br/>"
                                   + "<span style=\"font-size:16px;\">TO: " + vendor.Name + "<br/><br/>"
                                   + "The following person has clicked on the “Contact Me” button while taking the AFFI – FSMA Self-Assessment:<br/><br/>"
                                   + "Name of person: " + user.Name + "<br/>"
                                   + "Facility name: " + user.FacilityName + "<br/>"
                                   + "Email address: " + user.Email + "<br/>"
                                   + "Date and time: " + DateTime.Now.ToLongDateString() + " " + DateTime.Now.ToShortTimeString() + "<br/><br/>"
                                   + "Section of the AFFI – FSMA Self-Assessment Report: " + sectionName + "<br/><br/>"
                                   + "By clicking on the Contact Me button the person anticipates that they will receive information about your company’s services related to the section of the FSMA Self-Assessment Report as referenced above.<br/><br/>"
                                   + "If you have any questions about this email, please “Reply” to this email with your questions.<br/><br/>"
                                   + "Thank you – <br/>"
                                   + "Seneca Corporation</span>";
            return(mailContent);
        }
Ejemplo n.º 4
0
        public UnitOfWork(string connectionString)
        {
            context     = new QuestionnaireContext(connectionString);
            UserManager = new ApplicationUserManager(new UserStore <ApplicationUser>(context));
            RoleManager = new ApplicationRoleManager(new RoleStore <ApplicationRole>(context));

            UserManager.PasswordValidator = passwordValidator;
            UserManager.UserValidator     = new AppUserValidator(UserManager);
        }
Ejemplo n.º 5
0
 public AnswersController(QuestionnaireContext context)
 {
     // To init database withTest data do this
     //foreach (var q in Question.Init())
     //{
     //    context.Add(q);
     //}
     //context.SaveChanges();
     _context = context;
 }
Ejemplo n.º 6
0
        public static void Seed(QuestionnaireContext dbContext)
        {
            var questionnaire = ReadQuestionnaireData();

            AddQuestionnaire(dbContext, questionnaire);
            AddSubjects(questionnaire, dbContext);
            AddQuestions(questionnaire, dbContext);
            AddAnswers(questionnaire, dbContext);

            dbContext.SaveChanges();
        }
Ejemplo n.º 7
0
        private static void AddSubjects(Questionnaire questionnaire, QuestionnaireContext dbContext)
        {
            var subjects = questionnaire.QuestionnaireItems
                           .Select(x => new Subject
            {
                SubjectId   = x.SubjectId,
                OrderNumber = x.OrderNumber,
                Texts       = ToTranslations(x.Texts)
            }).ToArray();

            dbContext.Subjects.AddRange(subjects);
        }
Ejemplo n.º 8
0
 public IHttpActionResult CheckIn(CreateCheckInModel model)
 {
     try
     {
         using (var dataContext = new HuntingEntities())
         {
             var session = GetSession();
             if (session == null)
             {
                 return(Content(HttpStatusCode.Unauthorized, SESSION_INVALID_MESSAGE));
             }
             var userSession = AclUserContext.GetUserSession(dataContext, session);
             if (userSession == null)
             {
                 return(Content(HttpStatusCode.Unauthorized, SESSION_INVALID_MESSAGE));
             }
             var mapItem = MapItemContext.GetDetail(dataContext, model.MapItemId);
             if (mapItem == null)
             {
                 return(Content(HttpStatusCode.NotFound, NOT_FOUND_MESSAGE));
             }
             if (userSession.AclUser.CanViewTerritory(mapItem.Territory) == false)
             {
                 return(Content(HttpStatusCode.Forbidden, FORBIDDEN_MESSAGE));
             }
             Questionnaire questionnaire = null;
             if (model.QuestionnaireId.HasValue)
             {
                 questionnaire = QuestionnaireContext.GetDetail(dataContext, model.QuestionnaireId.Value);
             }
             if (model.IsValid(dataContext, questionnaire) == false)
             {
                 return(Content(HttpStatusCode.BadRequest, BAD_REQUEST_MESSAGE));
             }
             var updateModel = new CheckInUpdateModel(model, questionnaire);
             var pointId     = CheckInContext.Update(dataContext, null, updateModel, userSession.AclUser, null);
             if (pointId == null)
             {
                 return(Content(HttpStatusCode.InternalServerError, FAILED_MESSAGE));
             }
             return(Ok(pointId.Value.ToString()));
         }
     }
     catch (Exception exception)
     {
         logger.Error(exception, "MobileController");
         return(InternalServerError());
     }
 }
        public ActionResult Create(QuestionUpdateModel model)
        {
            try
            {
                using (var dataContext = new HuntingEntities())
                {
                    int languageId = (int)Session[LocalizationAttribute.SESSION_LANGUAGE_ID];
                    var user       = AclUserContext.GetDetail(dataContext, User.Identity.Name);
                    if (user == null)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                        return(RedirectToAction("Index", "Home"));
                    }
                    var questionnaire = QuestionnaireContext.GetDetail(dataContext, model.QuestionnaireId);
                    if (questionnaire == null)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_FOUND);
                        return(RedirectToAction("Index", "Home"));
                    }
                    if (user.CanUpdateTerritory(questionnaire.MapItemType.Territory) == false)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                        return(RedirectToAction("Index", "Territory", new { id = questionnaire.MapItemType.TerritoryId }));
                    }

                    if (ModelState.IsValid)
                    {
                        var newItemId = QuestionContext.Update(dataContext, null, model, user);
                        if (newItemId.HasValue)
                        {
                            ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Success, QuestionRes.SUCCESS_CREATE);
                            return(RedirectToAction("Index", "Question", new { id = model.QuestionnaireId }));
                        }
                        else
                        {
                            ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, QuestionRes.ERROR_CREATE);
                        }
                    }
                    model.FillCodeList(languageId);
                    return(View(model));
                }
            }
            catch (Exception exception)
            {
                logger.Error(exception, "QuestionController");
                ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Danger, GlobalRes.ERROR_EXCEPTION);
                return(RedirectToAction("Index", "Home"));
            }
        }
Ejemplo n.º 10
0
        private static void AddQuestions(Questionnaire questionnaire, QuestionnaireContext dbContext)
        {
            var questions = questionnaire.QuestionnaireItems
                            .SelectMany(x => x.QuestionnaireItems)
                            .Select(x => new Question
            {
                SubjectId          = x.SubjectId,
                QuestionId         = x.QuestionId,
                OrderNumber        = x.OrderNumber,
                QuestionnaireId    = questionnaire.QuestionnaireId,
                AnswerCategoryType = x.AnswerCategoryType,
                Texts = ToTranslations(x.Texts)
            })
                            .ToArray();

            dbContext.Questions.AddRange(questions);
        }
Ejemplo n.º 11
0
        private static void AddAnswers(Questionnaire questionnaire, QuestionnaireContext dbContext)
        {
            var answers = questionnaire.QuestionnaireItems
                          .SelectMany(x => x.QuestionnaireItems)
                          .SelectMany(x => x.QuestionnaireItems)
                          .Where(x => x.AnswerId.HasValue)
                          .Select(x => new Answer
            {
                AnswerId    = x.AnswerId.Value,
                QuestionId  = x.QuestionId,
                OrderNumber = x.OrderNumber,
                AnswerType  = x.AnswerType,
                Texts       = ToTranslations(x.Texts)
            })
                          .ToArray();

            dbContext.Answers.AddRange(answers);
        }
Ejemplo n.º 12
0
 public void FillCodeLists(HuntingEntities dataContext, MapItem mapItem)
 {
     if (mapItem != null)
     {
         this.QuestionnaireSelectList = QuestionnaireContext.GetSelectList(dataContext, mapItem.MapItemTypeRecord, this.QuestionnaireId);
     }
     if (this.QuestionList != null)
     {
         foreach (var questionModel in this.QuestionList)
         {
             if (questionModel.QuestionType == QuestionTypeEnum.DropDown)
             {
                 var question   = dataContext.Questions.First(item => item.Id == questionModel.Id);
                 var optionList = question.Options.
                                  Where(item => item.IsDeleted == false).
                                  OrderBy(item => item.Order).
                                  ToList();
                 questionModel.OptionList = new SelectList(optionList, "Id", "Name", questionModel.OptionId);
             }
         }
     }
 }
Ejemplo n.º 13
0
        private static void Main(string[] args)
        {
            CreateAdminAndCheckLogin();
            AddQuestionsToDb();
            return;

            SubjectRepository subjectRepo = new SubjectRepository();
            Subject           subject     = new Subject()
            {
                Nickname         = "Zoli",
                Age              = 22,
                Gender           = Gender.Female,
                QuestionAnswers  = new List <QuestionAnswer>(),
                SessionStartDate = DateTime.Now
            };

            subjectRepo.Create(subject);

            using QuestionManager questionManager = new QuestionManager();
            Question[] questions = questionManager.GetQuestionsForSubject(subject).ToArray();

            var answers = questions.Select(q => new QuestionAnswer()
            {
                Answer   = true,
                Question = q
            });

            subject.QuestionAnswers.AddRange(answers);
            subjectRepo.SaveChanges();

            Console.WriteLine("FINISHED");
            Console.ReadKey();

            using var context = new QuestionnaireContext();
            context.Questions.RemoveRange(context.Questions);
            context.QuestionAnswers.RemoveRange(context.QuestionAnswers);
            context.Subjects.RemoveRange(context.Subjects);
            context.SaveChanges();
        }
Ejemplo n.º 14
0
 public ActionResult SelectQuestionnaireAjax(CheckInUpdateModel model)
 {
     try
     {
         using (var dataContext = new HuntingEntities())
         {
             int languageId = (int)Session[LocalizationAttribute.SESSION_LANGUAGE_ID];
             var language   = LanguageContext.GetLanguage(languageId);
             var user       = AclUserContext.GetDetail(dataContext, User.Identity.Name);
             if (user == null)
             {
                 return(PartialView(@"AjaxError", GlobalRes.ERROR_NOT_ALLOWED));
             }
             ModelState.Clear();
             if (model.QuestionnaireId.HasValue)
             {
                 var questionnaire = QuestionnaireContext.GetDetail(dataContext, model.QuestionnaireId.Value);
                 if (questionnaire == null)
                 {
                     return(PartialView(@"AjaxError", GlobalRes.ERROR_NOT_FOUND));
                 }
                 if (user.CanViewTerritory(questionnaire.MapItemType.Territory) == false)
                 {
                     return(PartialView(@"AjaxError", GlobalRes.ERROR_NOT_ALLOWED));
                 }
                 model.FillQuestionnaire(null, questionnaire, language);
                 model.FillCodeLists(dataContext, null);
             }
             return(PartialView(model));
         }
     }
     catch (Exception exception)
     {
         logger.Error(exception, "CheckInController");
         return(PartialView(@"AjaxError", GlobalRes.ERROR_EXCEPTION));
     }
 }
Ejemplo n.º 15
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, QuestionnaireContext dbContext)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            dbContext.Database.EnsureCreated();
            app.UseHttpsRedirection();
            app.UseStaticFiles();
            app.UseSpaStaticFiles();

            app.UseRouting();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller}/{action=Index}/{id?}");
            });

            app.UseSpa(spa =>
            {
                spa.Options.SourcePath = "ClientApp";

                if (env.IsDevelopment())
                {
                    spa.UseReactDevelopmentServer(npmScript: "start");
                }
            });
        }
Ejemplo n.º 16
0
        public static List <Category> getCategoriesList()
        {
            QuestionnaireContext context = new QuestionnaireContext();

            return(context.Categories.ToList());
        }
Ejemplo n.º 17
0
 public QuestionService(QuestionnaireContext questionnaireContext)
 {
     _questionnaireContext = questionnaireContext;
 }
 public DropMenuDatasController(QuestionnaireContext context)
 {
     _context = context;
 }
Ejemplo n.º 19
0
        public static void Seed(QuestionnaireContext context)
        {
            context.Database.EnsureCreated();

            if (context.Results.Any())
            {
                return;
            }

            var resultList = new List <Result>
            {
                new Result {
                    Text = "Возрастное ограничение данной игры: +18"
                },
                new Result {
                    Text = "Возрастное ограничение данной игры: +16"
                },
                new Result {
                    Text = "Возрастное ограничение данной игры: +12"
                },
                new Result {
                    Text = "Возрастное ограничение данной игры: +6"
                },
                new Result {
                    Text = "Возрастное ограничение данной игры: +0"
                },
            };

            context.Results.AddRange(resultList);

            context.SaveChanges();

            context.BinaryQuestions.AddRange(new List <BinaryQuestion>
            {
                new BinaryQuestion
                {
                    Text = "Присутствует ли в сюжете игры натуралистические сцены половых отношений или сексуального насилия?",
                    DeterminateAnswer = true,
                    Result            = resultList.FirstOrDefault(r => r.Id == 1),
                    Order             = 1
                },
                new BinaryQuestion
                {
                    Text = "Встречаются ли в игре отдельные бранные слова и (или) выражения, относящиеся к нецензурной брани?",
                    DeterminateAnswer = true,
                    Result            = resultList.FirstOrDefault(r => r.Id == 1),
                    Order             = 2
                },
                new BinaryQuestion
                {
                    Text = "Игра содержит изображение или описание, побуждающие к совершению антиобщественных действий (в том числе к потреблению алкогольной и спиртосодержащей продукции, участию в азартных играх, занятию бродяжничеством или попрошайничеством)?",
                    DeterminateAnswer = true,
                    Result            = resultList.FirstOrDefault(r => r.Id == 2),
                    Order             = 3
                },
                new BinaryQuestion
                {
                    Text = "Содержит ли игра натуралистические изображение или описание несчастного случая, аварии, катастрофы либо ненасильственной смерти без демонстрации их последствий, которые могут вызывать у детей страх, ужас или панику?",
                    DeterminateAnswer = true,
                    Result            = resultList.FirstOrDefault(r => r.Id == 3),
                    Order             = 4
                },
                new BinaryQuestion
                {
                    Text = "Игра содержит информацию, причиняющую вреда здоровью и (или) развитию детей (в том числе информационная продукция, содержащая оправданные ее жанром и (или) сюжетом эпизодические ненатуралистические изображение или описание физического и (или) психического насилия (за исключением сексуального насилия) при условии торжества добра над злом и выражения сострадания к жертве насилия и (или) осуждения насилия)?",
                    DeterminateAnswer = true,
                    Result            = resultList.FirstOrDefault(r => r.Id == 4),
                    Order             = 5
                }
            });

            context.SaveChanges();
        }
Ejemplo n.º 20
0
 public QuestionnaireController(QuestionnaireContext context)
 {
     db = context;
 }
Ejemplo n.º 21
0
 public BaseRepository(QuestionnaireContext context)
 {
     Context = context;
     DbSet   = context.Set <T>();
 }
Ejemplo n.º 22
0
 public HomeController(QuestionnaireContext context)
 {
     _context = context;
 }
Ejemplo n.º 23
0
 private static void InitizeData(QuestionnaireContext context)
 {
     //throw new NotImplementedException();
 }
Ejemplo n.º 24
0
 public PartialRepository(QuestionnaireContext context)
 {
     questionnaireContext = context;
     DbSet = context.Set <T>();
 }
Ejemplo n.º 25
0
 public QuestionnaireService(QuestionnaireContext _questionnaireContext)
 {
     questionnaireContext = _questionnaireContext;
 }
Ejemplo n.º 26
0
 public AdminLoginManager()
 {
     dbContext = new QuestionnaireContext();
 }