コード例 #1
0
ファイル: QuestionnaireController.cs プロジェクト: blajib/QCM
        public ActionResult PageCreateQuestionnaire(int id, String erreur)
        {
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("PageCreateQuestionnaire.Questionnaire.Entrée(idQuestionnaire : {0})", id));
            if (erreur != null)
            {
                ViewBag.Error = erreur;
            }

            var questionnaireEntity             = new Questionnaires();
            ViewModelQuestionnaireElements vmqe = new ViewModelQuestionnaireElements();

            try
            {
                questionnaireEntity = DALQuestionnaire.FindById(id);
                vmqe.questionnaire  = questionnaireEntity;
                vmqe.elements       = DALElement.SelectAllFromQuestionnaire(id);
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("PageCreateQuestionnaire.Questionnaire.Exception(idQuesstionnaire : {0}, exception : {1}", id, e));
                return(RedirectToAction("ListeQuestionnaires", "Questionnaire", new { erreur = ErrorList.pageCreateQuestionnaire }));
            }


            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("PageCreateQuestionnaire.Questionnaire.Sortie(idQuestionnaire : {0})", id));

            return(View(vmqe));
        }
コード例 #2
0
        public ActionResult CommencerQuestionnaire()
        {
            Elements element = new Elements();

            if (DALSession.sessionStart == 1)
            {
                return(RedirectToAction("RetourElementEnCours", "UserQuestionnaire"));
            }

            try
            {
                DALSession.nombreElements = DALElement.SelectAllFromQuestionnaire(DALSession.questionnaire.Id).Count;
                DALSession.lastElement    = DALElement.SelectLastElement(DALSession.questionnaire.Id);
                DALSession.sessionStart   = 1;
                element              = DALElement.FindElementByOrdre(DALSession.numElement, DALSession.questionnaire.Id);
                DALSession.element   = element;
                DALSession.dateDebut = DateTime.Now;
                DALSession.listeIdElement.Add(DALSession.element.Id);
                DALSession.nombreQuestionsQuestionnaire = DALElement.SelectAllQuestionFromQuestionnaire(DALSession.questionnaire.Id).Count;
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("CommencerQuestionnaire.UserQuestionnaire.Exception(Exception: {0})", e));
                return(RedirectToAction("Index", "UserQuestionnaire", new { error = ErrorList.commencerQuestionnaire }));
            }
            if (element.TypeElement_Id == 1)
            {
                return(RedirectToAction("SuiteDescription", "UserQuestionnaire"));
            }
            else
            {
                return(RedirectToAction("SuiteQuestion", "UserQuestionnaire"));
            }
        }
コード例 #3
0
        public JsonResult IndexJquery(ViewModelUserQuestionnaire model)
        {
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("InsertJquery.UserQuestionnaire.Entrée(idQuestionnaire : {0},nom candidat : {1}, prenom candidat{2})", model.idQuestionnaire, model.nom, model.prenom));

            try
            {
                DALSession.questionnaire = DALQuestionnaire.FindById(model.idQuestionnaire);
                DALSession.listeElements = DALElement.SelectAllFromQuestionnaire(DALSession.questionnaire.Id);
                var utilisateurExistant = DALUtilisateur.FindUtilisateurByNomPrenom(model.nom, model.prenom);
                if (utilisateurExistant != null)
                {
                    DALSession.idUtilisateur = utilisateurExistant.Id;
                }
                DALSession.nom    = model.nom;
                DALSession.prenom = model.prenom;


                Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("InsertJquery.UserQuestionnaire.Sortie(nom session: {0},prenom session : {1})", DALSession.nom, DALSession.prenom));
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("InsertJquery.UserQuestionnaire.Exception(Exception: {0})", e));
                return(Json(ErrorList.IndexJqueryUserQuestionnaire));
            }
            return(Json(new
            {
                redirectUrl = Url.Action("Index", "UserQuestionnaire" /*, new { idQuestionnaire = idQuestionnaire }*/),
                isRedirect = true
            }));
        }
コード例 #4
0
ファイル: QuestionController.cs プロジェクト: blajib/QCM
        /**
         * Cela insert la question et dirige vers la page updateQuestion
         */
        public ActionResult CreateQuestion(ViewModelChoixQuestion model)/*intituleQuestion, texteQuestion, idQuestionnaire*/
        {
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("CreateQuestion.Question.Entrée(intitule question : {0}, idQuestionnaire : )", model.intituleQuestion, model.idQuestionnaire));

            Elements       element       = new Elements();
            Questionnaires questionnaire = new Questionnaires();
            int            count;

            try
            {
                count = DALElement.SelectAllFromQuestionnaire(model.idQuestionnaire).Count;
                Choixes choix = new Choixes();
                element.intitule         = model.intituleQuestion;
                element.texte            = model.texteQuestion;
                element.questionnaire_id = model.idQuestionnaire;
                //Le 2 du type signifie question
                element.TypeElement_Id = 2;
                element.ordre          = count + 2;
                DALElement.InsertElement(element);
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("PageUpdateQuestion.Question.Exception(exception : {0})", e));
                return(RedirectToAction("PageCreateQuestionnaire", "Questionnaire", new { erreur = ErrorList.createQuestion }));
            }
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("Retour question créer puis redirect vers PageUpdateQuestion({0})", element.Id));

            return(RedirectToAction("PageUpdateQuestion", "Question", new { idElement = element.Id }));
        }
コード例 #5
0
        /**
         * Créer la description puis amène à la page UpdateDescription
         */
        public ActionResult CreateDescription(string intitule, string texte, int idQuestionnaire)
        {
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("CreateDescription.Description.Entrée(idQuestionnaire : {0})", idQuestionnaire));

            ViewModelQuestionnaireElements model = new ViewModelQuestionnaireElements();
            Elements       element       = new Elements();
            Questionnaires questionnaire = new Questionnaires();
            int            count;

            try
            {
                count                    = DALElement.SelectAllFromQuestionnaire(idQuestionnaire).Count;
                element.intitule         = intitule;
                element.texte            = texte;
                element.questionnaire_id = idQuestionnaire;
                element.TypeElement_Id   = 1;
                element.ordre            = count + 2;
                DALElement.InsertElement(element);
                model.idElement       = element.Id;
                model.idQuestionnaire = idQuestionnaire;
                model.texte           = texte;
                model.intituleElement = intitule;
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("PageCreateDescription.Description.Exception(Exception: {0})", e));
                return(RedirectToAction("PageCreateQuestionnaire", "Questionnaire", new{ id = idQuestionnaire, error = ErrorList.createDescription }));
            }


            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("PageCreateDescription.Description.Sortie(idQuestionnaire : {0})", model.idQuestionnaire));

            return(RedirectToAction("PageUpdateDescription", "Description", model));
        }
コード例 #6
0
ファイル: QuestionnaireController.cs プロジェクト: blajib/QCM
        /**
         * Fonction delete appelé en Jquery
         */
        public JsonResult DeleteQuestionnaireJquery(int idQuestionnaire)
        {
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("DeleteQuestionnaire.Questionnaire.Entrée({0})", idQuestionnaire));
            MediaController med       = new MediaController();
            var             pothImage = Path.Combine(Server.MapPath(_CST_DIRECTORY_IMAGE));
            var             pothVideo = Path.Combine(Server.MapPath(_CST_DIRECTORY_VIDEO));

            try
            {
                var questionnaire = DALQuestionnaire.FindById(idQuestionnaire);
                if (DALElement.SelectAllQuestionFromQuestionnaire(idQuestionnaire) != null)
                {
                    var elements = DALElement.SelectAllFromQuestionnaire(idQuestionnaire);
                    foreach (var element in elements)
                    {
                        if (DALMedia.SelectAllFromElement(element.Id) != null)
                        {
                            var images = DALMedia.SelectAllFromElement(element.Id);
                            foreach (var image in images)
                            {
                                med.DeleteImage(image.Id, pothImage);
                            }
                        }

                        if (DALMedia.SelectVideoFromElement(element.Id) != null)
                        {
                            med.DeleteVideo(DALMedia.SelectVideoFromElement(element.Id).Id, pothVideo);
                        }

                        if (element.TypeElement_Id == 2)
                        {
                            if (DALChoix.SelectAllByElement(element.Id) != null)
                            {
                                var choix = DALChoix.SelectAllByElement(element.Id);
                                foreach (var c in choix)
                                {
                                    if (c.image_id != null)
                                    {
                                        med.DeleteImage((int)c.image_id, pothImage);
                                    }
                                }
                            }
                        }
                    }
                }
                DALQuestionnaire.DeleteQuestionnaire(idQuestionnaire);
            }
            catch (Exception e)
            {
                Tools.Logger.Ecrire(Tools.Logger.Niveau.Erreur, string.Format("DeleteQestionnaireJquery.Questionnaire.Exception(idquestionnaire : {0})", idQuestionnaire));
                //return RedirectToAction("ListeQuestionnaires", "Questionnaire", new { erreur = ErrorList.intituleQuestionnaire });
                return(Json(new
                {
                    redirectUrl = Url.Action("ListeQuestionnaires", "Questionnaire", new { erreur = ErrorList.deleteQuestionnaire }),
                    isRedirect = true
                }));
            }
            Tools.Logger.Ecrire(Tools.Logger.Niveau.Info, string.Format("DeleteQuestionnaire.Questionnaire.Sortie(idQuestionnaire : {0})", idQuestionnaire));

            return(Json(new
            {
                redirectUrl = Url.Action("ListeQuestionnaires", "Questionnaire"),
                isRedirect = true
            }));
        }