Exemplo n.º 1
0
        public ActionResult Create(ENSEIGNANT enseignant)
        {
            enseignant.LOGIN = enseignant.NOM;
            RegisterModel rg = new RegisterModel();
            userC.isLoginAlreadyUsed(enseignant.NOM);

            string motDePasse = Request.Form["Mot de passe"];
            if (motDePasse.Length < 6)
            {
                ViewBag.ERROR = "Veuillez entrer un mot de passe de plus de 6 caractères.";
                return View(enseignant);
            }
            string profil = Request.Form["Profil"];

            string username = enseignant.NOM;
            string usernameBase = username;
            int valeurAutre = 1;

            if (ModelState.IsValid)
            {

                while (userC.isLoginAlreadyUsed(username))
                {
                    username = usernameBase + valeurAutre.ToString();
                }
                rg.UserName = username;
                rg.Password = motDePasse;
                rg.ConfirmPassword = motDePasse;
                // On enregistre la personne dans la BD !
                dak.Register(rg);

                if (profil.Equals("Super_user"))
                {
                    Roles.AddUserToRole(rg.UserName, "Super_user");
                    Roles.AddUserToRole(rg.UserName, "Normal_user");
                }
                else
                {
                    Roles.AddUserToRole(rg.UserName, "Normal_user");
                }
                enseignant.LOGIN = username;
                db.ENSEIGNANTs.Add(enseignant);
                db.SaveChanges();

                // Permettra de renvoyer à la vue le login effectivement enregistré dans la BD
                ViewBag.LOGIN = username;
                //return RedirectToAction("Index");
                return View(enseignant);
            }

            return View(enseignant);
        }
Exemplo n.º 2
0
        public ActionResult Index(int id =0)
        {
            //
            bool ensSelectionEstNul = true;
            ENSEIGNANT enseignant = new ENSEIGNANT();
            ReservationModels reservationModel = new ReservationModels(); // permet d'effectuer une requete pour avoir l'emploi du temps

            // On charge l'utilisateur choisi par le select enseignant
            ViewBag.listeEnseignant = db.ENSEIGNANTs.ToList();
            if (id != 0)
            {
                enseignant = db.ENSEIGNANTs.Find(id);
                if (enseignant != null)
                {
                    ensSelectionEstNul = false;
                }
            }

            // Si l'enseignant n'est pas nul alors on fait la requête pour avoir son emploi du temps
            // Sinon on charge l'emploi du temps de l'utilisateur courant
            if (!ensSelectionEstNul)
            {
                // requete permettant de récupérer l'emploi du temps de l'utilisateur sélectionné
                var query = from res in db.RESERVATIONs
                            where res.ENSEIGNEMENT.ENSEIGNANT.LOGIN == enseignant.LOGIN
                            select res;

                var liste_va = from r in query
                               where r.STATUS == 1
                               select r;
                reservationModel.reservations_valides = liste_va.ToList<RESERVATION>();
            }
            else
            {
                // requete permettant de récupérer l'emploi du temps de l'utilisateur connecté
                string username = WebSecurity.CurrentUserName;

                var query = from res in db.RESERVATIONs
                            where res.ENSEIGNEMENT.ENSEIGNANT.LOGIN == username
                            select res;

                var liste_va = from r in query
                               where r.STATUS == 1
                               select r;
                reservationModel.reservations_valides = liste_va.ToList<RESERVATION>();
            }

            // Permet de structurer le code que l'on transmettra au Jquery pour l'affichage

            string boucle_nom_du_cours;
            string[] boucle_heure_minute_debut;
            string[] boucle_heure_minute_fin;
            string boucle_date_debut_annee;
            string boucle_date_debut_mois;
            string boucle_date_debut_jour;

            string ensemble_reservation = "{ header: {left: 'prev,next today', center: 'title',right: 'month,agendaWeek,agendaDay' },editable: false, events: [";

            int nombre_iteration = reservationModel.reservations_valides.Count;
            int iteration_courant = 0;

            foreach (RESERVATION i in reservationModel.reservations_valides)
            {
                iteration_courant++;
                boucle_nom_du_cours = i.ENSEIGNEMENT.COUR.LIBELLE_COURS;
                boucle_date_debut_annee = i.DATE_RESERVATION.Year.ToString();
                boucle_date_debut_mois = (i.DATE_RESERVATION.Month-1).ToString();
                boucle_date_debut_jour = i.DATE_RESERVATION.Day.ToString();
                boucle_heure_minute_debut = i.CRENAUX.HEURE_DEBUT.Split(new string[] { "h" }, StringSplitOptions.None);
                boucle_heure_minute_fin = i.CRENAUX.HEURE_FIN.Split(new string[] { "h" }, StringSplitOptions.None);

                if (iteration_courant < nombre_iteration)
                {

                    ensemble_reservation += "{ title: '" + boucle_nom_du_cours + "', " +
                        "start : new Date(" +
                        boucle_date_debut_annee + "," + boucle_date_debut_mois + "," + boucle_date_debut_jour + "," + boucle_heure_minute_debut[0] + "," + boucle_heure_minute_debut[1] + ")," +
                        "end : new Date(" +
                        boucle_date_debut_annee + "," + boucle_date_debut_mois + "," + boucle_date_debut_jour + "," + boucle_heure_minute_fin[0] + "," + boucle_heure_minute_fin[1] + ")," +
                        "allDay:false },";

                }
                else
                {
                    ensemble_reservation += "{ title: '" + boucle_nom_du_cours + "', " +
                                            "start : new Date(" +
                                            boucle_date_debut_annee + "," + boucle_date_debut_mois + "," + boucle_date_debut_jour + "," + boucle_heure_minute_debut[0] + "," + boucle_heure_minute_debut[1] + ")," +
                                            "end : new Date(" +
                                            boucle_date_debut_annee + "," + boucle_date_debut_mois + "," + boucle_date_debut_jour + "," + boucle_heure_minute_fin[0] + "," + boucle_heure_minute_fin[1] + ")," +
                                            "allDay:false }";
                }

            }
            ensemble_reservation = ensemble_reservation + "]}";
            ViewData["EDT"] = ensemble_reservation;
            //ViewBag.EDT = ensemble_reservation;

            ViewData["Enseignantss"] = new SelectList(db.ENSEIGNANTs.ToList(),"ID_ENSEIGNANT", "NOM" );
            ViewBag.listeenseignant1 = new SelectList(db.ENSEIGNANTs.ToList(), "NOM", "LOGIN");
            // fin de la fonction, on retourne la vue
            return View();
        }
Exemplo n.º 3
0
 // permet de vérifier si un enseignant est un super user !
 private bool isSuperUser(ENSEIGNANT enseignant)
 {
     string[] users;
     users = Roles.FindUsersInRole("Super_user", enseignant.LOGIN);
     if (users != null)
     {
         if (users.Length <= 0)
         {
             return false;
         }
         else
         {
             return true;
         }
     }
     return false;
 }
Exemplo n.º 4
0
        public ActionResult Supenseignant(ENSEIGNANT enseignant)
        {
            int id = enseignant.ID_ENSEIGNANT;
            if (ModelState.IsValid)
            {
                ENSEIGNANT enseignantSupprimer = db.ENSEIGNANTs.Find(id);
                db.ENSEIGNANTs.Remove(enseignantSupprimer);
                db.SaveChanges();
                //int id_Account = WebSecurity.GetUserId(enseignant.LOGIN);
                if (Roles.IsUserInRole(enseignant.LOGIN, "Super_user"))
                {
                    Roles.RemoveUserFromRole(enseignant.LOGIN, "Super_user");
                    Roles.RemoveUserFromRole(enseignant.LOGIN, "Normal_user");
                }
                else
                {
                    Roles.RemoveUserFromRole(enseignant.LOGIN, "Normal_user");
                }

                ((SimpleMembershipProvider)Membership.Provider).DeleteAccount(enseignant.LOGIN);
                return RedirectToAction("Index");
            }
            return View(enseignant);
        }
Exemplo n.º 5
0
        public ActionResult Modifenseignant(ENSEIGNANT enseignant)
        {
            if (ModelState.IsValid)
            {
                string form_mot_de_passe = Request.Form["Mot de passe"];
                string form_confirmation_mot_de_passe = Request.Form["Valider Mot de passe"];

                if (form_mot_de_passe == form_confirmation_mot_de_passe)
                {
                    if (form_mot_de_passe != "" && form_mot_de_passe.Length >= 6)
                    {
                        // On change le mot de passe
                        string token = WebSecurity.GeneratePasswordResetToken(enseignant.LOGIN, 1440);
                        WebSecurity.ResetPassword(token, form_mot_de_passe);
                    }
                }

                string form_valeur_super_user = Request.Form["Profil"];
                if (form_valeur_super_user == "Super_user")
                {
                    if (!Roles.IsUserInRole(enseignant.LOGIN, "Super_user"))
                    {
                        Roles.AddUserToRole(enseignant.LOGIN, "Super_user");
                    }
                }
                else // On doit vérifier qu'on est pas passé de super user a user normal
                {
                    if (Roles.IsUserInRole(enseignant.LOGIN, "Super_user"))
                    {
                        Roles.RemoveUserFromRole(enseignant.LOGIN, "Super_user");
                    }
                }

                db.Entry(enseignant).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Modifenseignant");
            }
            return View(enseignant);
        }
Exemplo n.º 6
0
 public ActionResult Edit(ENSEIGNANT enseignant)
 {
     if (ModelState.IsValid)
     {
         db.Entry(enseignant).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     return View(enseignant);
 }