Beispiel #1
0
        public ActionResult Create([Bind("Id", "ParamKey", "ParamValue", "Description")] SscisParam sSCISParam)
        {
            if (ModelState.IsValid)
            {
                db.SscisParam.Add(sSCISParam);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(sSCISParam));
        }
Beispiel #2
0
        public ActionResult Create([Bind("Id", "Code", "Name")] EnumSubject subject)
        {
            if (ModelState.IsValid && subject.Code != null && subject.Name != null && subject.IdParent != null)
            {
                db.EnumSubject.Add(subject);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(subject));
        }
Beispiel #3
0
        public ActionResult Create([Bind("Id", "IdSubject", "IdApplication", "Degree")] TutorApplicationSubject tutorApplicationSubject)
        {
            if (ModelState.IsValid)
            {
                db.TutorApplicationSubject.Add(tutorApplicationSubject);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.SubjectID     = new SelectList(db.EnumSubject, "ID", "Code", tutorApplicationSubject.IdSubject);
            ViewBag.ApplicationID = new SelectList(db.TutorApplication, "ID", "ID", tutorApplicationSubject.IdApplication);
            return(View(tutorApplicationSubject));
        }
 public ActionResult Create(SscisContent model)
 {
     if (ModelState.IsValid && model.Header != null && model.TextContent != null)
     {
         model.Created = DateTime.Now;
         int authorID = (int)HttpContext.Session.GetInt32("userId");
         model.IdAuthorNavigation   = db.SscisUser.Find((int)authorID);
         model.IdEditedByNavigation = null;
         db.SscisContent.Add(model);
         db.SaveChanges();
         return(RedirectToAction("News", "Home"));
     }
     return(View(model));
 }
        public ActionResult Index(Feedback model)
        {
            int userId = 0;

            if (HttpContext.Session.GetInt32("userId") != null)
            {
                userId = (int)HttpContext.Session.GetInt32("userId");
            }
            Event    evnt     = db.Event.Find(model.Id);
            Feedback feedback = new Feedback()
            {
                Text = model.Text
            };
            Participation part = null;

            if (userId == 0)
            {
                part = new Participation()
                {
                    IdEventNavigation = evnt, IdUser = null
                };
            }
            else
            {
                part = new Participation()
                {
                    IdEventNavigation = evnt, IdUser = userId
                };
            }

            db.Participation.Add(part);
            db.SaveChanges();
            feedback.IdParticipationNavigation = part;
            db.Feedback.Add(feedback);
            db.SaveChanges();

            return(RedirectToAction("Sent"));
        }
Beispiel #6
0
        /// <summary>
        /// SSO Authentification
        /// https://proxyauth.zcu.cz/testauth
        /// </summary>
        /// <returns>HomePage</returns>
        public ActionResult Index()
        {
            //Main proxy https://proxyauth.zcu.cz/testauth/
            //Backup https://fkmagion.zcu.cz/testauth/
            //Zajistit na entry se dostat jenom z proxyauth.zcu.cz (147.228.4.80)
            var PROXY_IP    = "147.228.4.80";
            var headerValue = Request.Headers[WEB_AUTH_USER];
            var ip          = HttpContext.Connection.RemoteIpAddress.ToString();

            if (headerValue.Any() == false || ip != PROXY_IP)
            {
                return(RedirectToAction("Info", "Entry"));
            }
            string username   = Request.Headers[USERNAME_KEY];
            string firstName  = Request.Headers[FIRST_NAME];
            string secondName = Request.Headers[SECOND_NAME];
            string email      = Request.Headers[EMAIL_KEY].ToString();

            //find user if already in database
            var count = db.SscisUser.Count(usr => usr.Login.Equals(username, StringComparison.OrdinalIgnoreCase));

            if (count < 1)
            {
                SscisUser user = new SscisUser();
                user.Created          = DateTime.Now;
                user.Activated        = DateTime.Now;
                user.Login            = username;
                user.IsActive         = true;
                user.Email            = email;
                user.IdRoleNavigation = db.EnumRole.Where(r => r.Role.Equals(AuthorizationRoles.User, StringComparison.OrdinalIgnoreCase)).Single();
                user.Firstname        = firstName;
                user.Lastname         = secondName;
                db.SscisUser.Add(user);
                db.SaveChanges();
            }

            //start session
            int sessionId = new SSCISSessionManager().SessionStart(username, HttpContext);

            ViewBag.SessionId = sessionId;
            SscisSession session = db.SscisSession.Find(sessionId);

            ViewBag.RedirectUrl = HttpContext.Request.Query["redirect"].ToString();
            ViewBag.UserId      = session.IdUser;
            ViewBag.Hash        = session.Hash;
            ViewBag.Role        = session.IdUserNavigation.IdRoleNavigation.Role;
            ViewBag.Login       = session.IdUserNavigation.Login;

            return(View("Logged"));
        }
        public ActionResult AcceptLessonConfirm(int?id)
        {
            if (id == null)
            {
                return(new StatusCodeResult((int)HttpStatusCode.BadRequest));
            }
            Event @event = db.Event.Find(id);

            if (@event == null)
            {
                return(NotFound());
            }
            int userId = (int)HttpContext.Session.GetInt32("userId");

            @event.IdTutorNavigation = db.SscisUser.Find(id = userId);
            @event.IsAccepted        = true;
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Create(MetaTutorApplication model)
        {
            if (ModelState.IsValid)
            {
                int userID          = (int)HttpContext.Session.GetInt32("userId");
                int countOfSubjects = int.Parse(Request.Form["subjects_count"]);

                if (countOfSubjects < 1)
                {
                    return(RedirectToAction("Create"));
                }

                model.Application.ApplicationDate  = DateTime.Now;
                model.Application.IdUserNavigation = db.SscisUser.Find(userID);
                db.TutorApplication.Add(model.Application);
                db.SaveChanges();

                string znamky   = Request.Form["Degree"];
                string predmety = HttpContext.Request.Form["SubjectID"];

                string[] znamkyPole   = znamky.Split(',');
                string[] predmetyPole = predmety.Split(',');

                for (int i = 0; i <= countOfSubjects; i++)
                {
                    TutorApplicationSubject s = new TutorApplicationSubject();

                    s.IdApplicationNavigation = model.Application;
                    s.IdSubjectNavigation     = db.EnumSubject.Find(Int32.Parse(predmetyPole[i]));

                    byte.TryParse(znamkyPole[i], out byte deg);
                    if (deg == 0)
                    {
                        s.Degree = null;
                    }
                    else
                    {
                        s.Degree = deg;
                    }
                    db.TutorApplicationSubject.Add(s);
                    db.SaveChanges();
                }
                return(RedirectToAction("Applied"));
            }

            ViewBag.AcceptedByID = new SelectList(db.SscisUser, "ID", "Login", model.Application.AcceptedById);
            ViewBag.UserID       = new SelectList(db.SscisUser, "ID", "Login", model.Application.IdUser);
            return(View(model.Application));
        }
        public ActionResult Edit(EditUser editUser)
        {
            if (ModelState.IsValid)
            {
                editUser.User.IdRoleNavigation = db.EnumRole.Find(editUser.User.IdRole);
                db.Entry(editUser.User).State  = EntityState.Modified;
                if (editUser.User.IdRoleNavigation.Role.Equals("USER"))
                {
                    List <Approval> userApproval = db.Approval.Where(a => a.IdTutor == editUser.User.Id).ToList();
                    foreach (Approval approval in userApproval)
                    {
                        db.Approval.Remove(approval);
                    }

                    List <Event> userEvent = db.Event.Where(a => a.IdTutor == editUser.User.Id).ToList();
                    foreach (Event sscisEvent in userEvent)
                    {
                        int       authorID          = (int)HttpContext.Session.GetInt32("userId");
                        SscisUser currentLoggedUser = db.SscisUser.Find((int)authorID);
                        sscisEvent.IdTutorNavigation  = currentLoggedUser;
                        sscisEvent.CancelationComment = "Tutor fired!";
                        sscisEvent.IsCancelled        = true;
                    }
                }
                else if (editUser.User.IdRoleNavigation.Role.Equals("ADMIN"))
                {
                    List <Approval> userApproval = db.Approval.Where(a => a.IdTutor == editUser.User.Id).ToList();
                    foreach (Approval approval in userApproval)
                    {
                        db.Approval.Remove(approval);
                    }
                    List <EnumSubject> subjects = db.EnumSubject.Where(s => s.IdParent == null && s.Lesson == false).ToList();
                    foreach (EnumSubject subject in subjects)
                    {
                        Approval newApproval = new Approval();
                        newApproval.IdSubject           = subject.Id;
                        newApproval.IdSubjectNavigation = db.EnumSubject.Find(subject.Id);
                        newApproval.IdTutor             = editUser.User.Id;
                        newApproval.IdTutorNavigation   = db.SscisUser.Find(editUser.User.Id);
                        db.Approval.Add(newApproval);
                        db.SaveChanges();
                    }
                }
                else
                {
                    foreach (MetaApproval app in editUser.Approvals)
                    {
                        if (app.Approved == true)
                        {
                            List <Approval> tmp = db.Approval.Where(a => a.IdTutor == editUser.User.Id && a.IdSubject == app.EnumSubject.Id).ToList();
                            if (tmp.Count == 0)
                            {
                                Approval newApproval = new Approval();
                                newApproval.IdSubject           = app.EnumSubject.Id;
                                newApproval.IdSubjectNavigation = db.EnumSubject.Find(app.EnumSubject.Id);
                                newApproval.IdTutor             = editUser.User.Id;
                                newApproval.IdTutorNavigation   = db.SscisUser.Find(editUser.User.Id);
                                db.Approval.Add(newApproval);
                                db.SaveChanges();
                            }
                        }
                        else
                        {
                            List <Approval> tmp = db.Approval.Where(a => a.IdTutor == editUser.User.Id && a.IdSubject == app.EnumSubject.Id).ToList();
                            foreach (Approval app2 in tmp)
                            {
                                db.Approval.Remove(app2);
                            }
                        }
                    }
                }
                editUser.Approvals            = null;
                db.Entry(editUser.User).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.RoleID        = new SelectList(db.EnumRole, "Id", "Role", editUser.User.IdRole);
            ViewBag.ActivatedByID = new SelectList(db.SscisUser, "Id", "Login", editUser.User.IsActivatedBy);
            return(View(editUser.User));
        }