public IActionResult Login(LoginVM model)
        {
            if (ModelState.IsValid)
            {
                using ToDoManagerContext context = new ToDoManagerContext();

                User loggedUser = context.Users.FirstOrDefault(u =>
                                                               u.Username == model.Username &&
                                                               u.Password == model.Password);

                if (loggedUser == null)
                {
                    ModelState.AddModelError("AuthError", "Invalid username and password!");
                }
                else
                {
                    LoggedUser lu = new LoggedUser
                    {
                        Id        = loggedUser.Id,
                        Username  = loggedUser.Username,
                        FirstName = loggedUser.FirstName,
                        IsAdmin   = loggedUser.IsAdmin,
                        LastName  = loggedUser.LastName
                    };
                    HttpContext.Session.SetObjectAsJson("loggedUser", lu);
                }
            }

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult Create(CreateVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            Project item = new Project()
            {
                LeadId      = HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id,
                Title       = model.Title,
                Description = model.Description
            };

            using ToDoManagerContext context = new ToDoManagerContext();
            context.Projects.Add(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "Project"));
        }
Beispiel #3
0
        public ActionResult Create(CreateVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            WorkLog item = new WorkLog
            {
                TaskId     = model.TaskId,
                UserId     = model.UserId,
                CreateDate = model.Date,
                Hours      = model.Hours
            };

            using ToDoManagerContext context = new ToDoManagerContext();
            context.WorkLogs.Add(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "WorkLog", new { taskId = model.TaskId }));
        }
        // GET: User
        public ActionResult Index(IndexVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (!HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").IsAdmin)
            {
                return(RedirectToAction("Login", "Home"));
            }

            model.Page = model.Page <= 0
                ? 1
                : model.Page;

            model.ItemsPerPage = model.ItemsPerPage <= 0
                ? 10
                : model.ItemsPerPage;

            using ToDoManagerContext context = new ToDoManagerContext();
            model.Items = context.Users.OrderBy(i => i.Id)
                          .Skip((model.Page - 1) * model.ItemsPerPage)
                          .Take(model.ItemsPerPage)
                          .ToList();

            model.PagesCount = (int)Math.Ceiling(
                context.Users.Count() / (double)model.ItemsPerPage
                );

            return(View(model));
        }
Beispiel #5
0
        // GET: Task/Edit/5
        public ActionResult Edit(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            Task item = context.Tasks.Find(id);

            EditVM model = new EditVM
            {
                Id          = item.Id,
                ProjectId   = item.ProjectId,
                Title       = item.Title,
                Description = item.Description,
                UserPairs   = context.Users.Select(u => new SelectListItem
                {
                    Text     = u.Username,
                    Value    = u.Id.ToString(),
                    Selected = item.AssigneeId == u.Id
                }).ToList()
            };

            return(View(model));
        }
        public ActionResult Create(CreateVM model)
        {
            //if (HttpContext.Session.GetObjectFromJson<LoggedUser>("loggedUser") == null)
            //    return RedirectToAction("Login", "Home");

            //if (!HttpContext.Session.GetObjectFromJson<LoggedUser>("loggedUser").IsAdmin)
            //    return RedirectToAction("Login", "Home");

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            User item = new User
            {
                Username  = model.Username,
                Password  = model.Password,
                FirstName = model.FirstName,
                LastName  = model.LastName,
            };

            using ToDoManagerContext context = new ToDoManagerContext();
            context.Users.Add(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "User"));
        }
Beispiel #7
0
        public ActionResult Create(CreateVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            Task item = new Task
            {
                ProjectId   = model.ProjectId,
                Title       = model.Title,
                Description = model.Description,
                AssigneeId  = model.AssigneeId
            };

            using ToDoManagerContext context = new ToDoManagerContext();
            context.Tasks.Add(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "Task", new { projectId = model.ProjectId }));
        }
Beispiel #8
0
        public ActionResult MyTasks(MyTasksVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            model.Page = model.Page <= 0
                ? 1
                : model.Page;

            model.ItemsPerPage = model.ItemsPerPage <= 0
                ? 10
                : model.ItemsPerPage;

            using ToDoManagerContext context = new ToDoManagerContext();
            model.Items = context.Tasks.Where(i => i.AssigneeId == HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id)
                          .OrderBy(i => i.Id)
                          .Skip((model.Page - 1) * model.ItemsPerPage)
                          .Take(model.ItemsPerPage)
                          .Select(t => new MyTasksVM.MyTasks
            {
                TaskId       = t.Id,
                ProjectTitle = t.Project.Title,
                TaskTitle    = t.Title
            })
                          .ToList();

            model.PagesCount = (int)Math.Ceiling(
                context.Tasks.Count(i => i.AssigneeId == HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id) / (double)model.ItemsPerPage
                );

            return(View(model));
        }
        // GET: User/Edit/5
        public ActionResult Edit(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (!HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").IsAdmin)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            User item = context.Users.Find(id);

            EditVM model = new EditVM
            {
                Id        = item.Id,
                Username  = item.Username,
                Password  = item.Password,
                FirstName = item.FirstName,
                LastName  = item.LastName
            };

            return(View(model));
        }
        // GET: Project/Delete/5
        public ActionResult Delete(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            context.Projects.Remove(context.Projects.Find(id));
            context.SaveChanges();

            return(RedirectToAction("Index", "Project"));
        }
Beispiel #11
0
        // GET: WorkLog/Delete/5
        public ActionResult Delete(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            WorkLog item = context.WorkLogs.Find(id);

            context.WorkLogs.Remove(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "WorkLog", new { taskId = item.TaskId }));
        }
Beispiel #12
0
        // GET: WorkLog/Create
        public ActionResult Create(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            CreateVM model = new CreateVM
            {
                TaskId = id,
                UserId = HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser").Id
            };

            return(View(model));
        }
Beispiel #13
0
        public ActionResult TaskEdit(IndexVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            Task item = context.Tasks.Find(model.Task.Id);

            item.AssigneeId = model.Task.AssigneeId;
            context.Tasks.Update(item);
            context.SaveChanges();

            return(RedirectToAction("Index", "WorkLog", new { taskId = model.Task.Id }));
        }
Beispiel #14
0
        // GET: Task/Create
        public ActionResult Create(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            CreateVM model = new CreateVM
            {
                ProjectId = id,
                UserPairs = context.Users.Select(u => new SelectListItem {
                    Value = u.Id.ToString(), Text = u.Username
                }).ToList()
            };

            return(View(model));
        }
        // GET: Project/Edit/5
        public ActionResult Edit(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            Project item = context.Projects.Find(id);

            EditVM model = new EditVM
            {
                Id          = item.Id,
                LeadId      = item.LeadId,
                Title       = item.Title,
                Description = item.Description
            };

            return(View(model));
        }
Beispiel #16
0
        // GET: WorkLog/Edit/5
        public ActionResult Edit(int id)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            using ToDoManagerContext context = new ToDoManagerContext();
            WorkLog item = context.WorkLogs.Find(id);

            EditVM model = new EditVM
            {
                Id     = item.Id,
                Hours  = item.Hours,
                Date   = item.CreateDate,
                TaskId = item.TaskId,
                UserId = item.UserId
            };

            return(View(model));
        }
Beispiel #17
0
        // GET: WorkLog
        public ActionResult Index(IndexVM model)
        {
            if (HttpContext.Session.GetObjectFromJson <LoggedUser>("loggedUser") == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            model.Page = model.Page <= 0
                ? 1
                : model.Page;

            model.ItemsPerPage = model.ItemsPerPage <= 0
                ? 10
                : model.ItemsPerPage;

            using ToDoManagerContext context = new ToDoManagerContext();
            model.Items = context.WorkLogs.Where(i => i.TaskId == model.TaskId).OrderBy(i => i.Id)
                          .Skip((model.Page - 1) * model.ItemsPerPage)
                          .Take(model.ItemsPerPage)
                          .ToList();

            model.PagesCount = (int)Math.Ceiling(
                context.WorkLogs.Count(i => i.TaskId == model.TaskId) / (double)model.ItemsPerPage
                );

            model.Task = context.Tasks.Find(model.TaskId);

            model.UserPairs = context.Users.Select(u => new SelectListItem
            {
                Text     = u.Username,
                Value    = u.Id.ToString(),
                Selected = u.Id == model.Task.AssigneeId
            }).ToList();

            return(View(model));
        }
Beispiel #18
0
 public TicketsController()
 {
     _context = new ToDoManagerContext();
 }
 public LinesController()
 {
     _context = new ToDoManagerContext();
 }
Beispiel #20
0
 public TrainsController()
 {
     _context = new ToDoManagerContext();
 }
 public UnitOfWork(ToDoManagerContext context)
 {
     _context = context;
 }
 public GenericRepository(ToDoManagerContext context)
 {
     this._context = context;
     this._dbSet   = context.Set <TEntity>();
 }