Exemple #1
0
        public ActionResult Create(Section entry)
        {
            bool hasPermissions = sectionRpstry.GetPermission(sectionName, loggedUser.UserId, canCreate);

            if (hasPermissions)
            {
                try
                {
                    entry.dateCreated  = DateTime.Now;
                    entry.dateModified = DateTime.Now;
                    entry.priority     = rpstry.GetMaxPriority() + 1;
                    rpstry.Add(entry);
                    rpstry.Save();

                    #region Manage Permissions
                    var allPermissions = Request.Form.AllKeys.Where(n => n.StartsWith("permission_"));
                    rpstry.DeleteAllBySection(entry.id);
                    rpstry.Save();
                    foreach (var item in allPermissions)
                    {
                        int      roleId             = Convert.ToInt32(item.ToString().Replace("permission_", ""));
                        string[] permissiontypesIds = Request.Form.GetValues(item.ToString());
                        rpstry.ManagePermissions(entry.id, roleId, permissiontypesIds);
                    }
                    #endregion

                    return(RedirectToAction("Index", new { thisid = entry.id }));
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", "");
                    return(View(entry));
                }
            }
            else
            {
                return(View("Error", "You do not have permissions to access this section."));
            }
        }
Exemple #2
0
        static void Main()
        {
            Model1Container model = new Model1Container();

            // création repositories

            SectionRepository   repoSect      = new SectionRepository(model);
            StudentRepository   repoStud      = new StudentRepository(model);
            CourseRepository    repoCourse    = new CourseRepository(model);
            ProfessorRepository repoProfessor = new ProfessorRepository(model);

            // ajout de 2 sections
            Section sectInfo = new Section {
                Name = "Info"
            };

            repoSect.Save(sectInfo, s => s.Name.Equals(sectInfo.Name));
            Section sectDiet = new Section {
                Name = "Diet"
            };

            repoSect.Save(sectDiet, s => s.Name.Equals(sectDiet.Name));

            // renvoyer toutes les sections

            IList <Section> sections = repoSect.GetAll().ToList();

            Console.WriteLine("----------- SECTIONS --------------------");
            foreach (Section s in sections)
            {
                Console.WriteLine(s.Name);
            }
            Console.WriteLine("-----------------------------------------");


            // ajout de 3 étudiants
            Student studinfo = new Student
            {
                Firstname  = "studinfo",
                Name       = "studinfo",
                Section    = sectInfo,
                YearResult = 100
            };

            Student studdiet = new Student
            {
                Firstname  = "studdiet",
                Name       = "studdiet",
                Section    = sectDiet,
                YearResult = 150
            };


            Student studinfo2 = new Student
            {
                Firstname  = "studinfo2",
                Name       = "studinfo2",
                Section    = sectInfo,
                YearResult = 110
            };

            repoStud.Save(studinfo, s => s.Name.Equals(studinfo.Name) && s.Firstname.Equals(studinfo.Firstname));
            repoStud.Save(studinfo2, s => s.Name.Equals(studinfo2.Name) && s.Firstname.Equals(studinfo2.Firstname));
            repoStud.Save(studdiet, s => s.Name.Equals(studdiet.Name) && s.Firstname.Equals(studdiet.Firstname));

            IList <Student> studs = repoStud.GetStudentBySectionOrderByYearResult();

            foreach (Student s in studs)
            {
                Console.WriteLine("SECTION : " + s.Section.Name + " STUD : " + s.Name + " YEAR_RESULT : " + s.YearResult);
            }



            // créer 2 professeurs
            Professor profDiet = new Professor {
                Firstname = "profDiet", Name = "profDiet", Section = sectDiet
            };

            repoProfessor.Save(profDiet, p => p.Name.Equals(profDiet.Name));
            Professor profInfo = new Professor {
                Firstname = "profInfo", Name = "profInfo", Section = sectInfo
            };

            repoProfessor.Save(profInfo, p => p.Name.Equals(profInfo.Name));

            // créer 3 cours
            Course techCulinaire = new Course {
                Name = "Technique Culinaire", Professor = profDiet
            };

            repoCourse.Save(techCulinaire, c => c.Name.Equals(techCulinaire.Name));
            Course mathDiet = new Course {
                Name = "Math", Professor = profDiet
            };

            repoCourse.Save(mathDiet, c => c.Name.Equals(mathDiet.Name));
            Course mathInfo = new Course {
                Name = "Math", Professor = profInfo
            };

            repoCourse.Save(mathInfo, c => c.Name.Equals(mathInfo.Name));

            // liste des cours de la section diet
            IList <Course> courses = repoCourse.GetCoursesForSection("Diet");

            Console.WriteLine("Cours de la section Diet : ");
            foreach (Course c in courses)
            {
                Console.WriteLine("COURS : " + c.Name + "PROFESSOR " + c.Professor.Firstname);
            }

            Console.ReadLine();
        }