コード例 #1
0
        public ActionResult Create([Bind(Include = "StaffNumber,calId")] ProjectSupervisor projectSupervisor)
        {
            if (ModelState.IsValid)
            {
                db.ProjectSupervisors.Add(projectSupervisor);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.StaffNumber = new SelectList(db.AspNetUsers, "Id", "Email", projectSupervisor.UserID);
            return(View(projectSupervisor));
        }
コード例 #2
0
        public IHttpActionResult CreateTask(TaskDto taskDto)
        {
            Completed completed = new Completed();
            To_Do     to_Do     = new To_Do();
            var       userID    = User.Identity.GetUserId();
            Milestone task      = new Milestone();

            using (var dc = new ProgressTrackerEntities())
            {
                var newTask = (Milestone)taskDto;
                newTask.SortOrder     = dc.Milestones.Max(t => t.SortOrder) + 1;
                newTask.StudentNumber = userID;
                if (newTask.Progress == 1)
                {
                    newTask.Status          = "Completed";
                    newTask.Completed       = true;
                    completed.Progress      = newTask.Progress;
                    completed.StudentNumber = newTask.StudentNumber;
                    dc.Completeds.Add(completed);
                    dc.SaveChanges();
                }
                if (newTask.Progress > 0 && newTask.Progress < 1)
                {
                    newTask.Status     = "In-Progress";
                    newTask.InProgress = true;
                }
                if (newTask.Progress == 0)
                {
                    newTask.Status      = "To-Do";
                    newTask.ToDo        = true;
                    to_Do.StudentNumber = newTask.StudentNumber;
                    to_Do.Progress      = newTask.Progress;
                    dc.To_Do.Add(to_Do);
                    dc.SaveChanges();
                }



                dc.Milestones.Add(newTask);

                dc.SaveChanges();

                return(Ok(new
                {
                    tid = newTask.Id,


                    action = "inserted"
                }));
            }
        }
コード例 #3
0
        public ActionResult Choose([Bind(Include = "StudentNumber,Course,StudyYear,ProjectName")] Student student)
        {
            using (ProgressTrackerEntities dc = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    db.Students.Add(student);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }

                ViewBag.StudentNumber = new SelectList(db.AspNetUsers, "Id", "Email", student.UserID);
                return(View(student));
            }
        }
コード例 #4
0
        public ActionResult Create([Bind(Include = "StudentNumber,StaffNumber,Id")] Allocation allocation)
        {
            if (ModelState.IsValid)
            {
                allocation.StaffNumber   = allocation.StaffNumber;
                allocation.StudentNumber = allocation.StudentNumber;
                db.Allocations.Add(allocation);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.StaffNumber   = new SelectList(db.ProjectSupervisors, "UserID", "UserID", allocation.StaffNumber);
            ViewBag.StudentNumber = new SelectList(db.Students, "UserID", "Course", allocation.StudentNumber);
            return(View(allocation));
        }
コード例 #5
0
        //GET: ProjectSupervisors/Edit/5
        public ActionResult Select(string id, string StudentNumber)
        {
            string studID = StudentNumber;

            using (var db = new ProgressTrackerEntities())
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                ProjectSupervisor supervisor = db.ProjectSupervisors.Find(id);
                Student           student    = db.Students.Find(id);
                if (supervisor == null)
                {
                    return(HttpNotFound());
                }
                string selectedSup = supervisor.UserID;



                Allocation allocation = new Allocation();
                allocation.StaffNumber   = id;
                allocation.StudentNumber = studID;
                db.Allocations.Add(allocation);
                db.SaveChanges();
                return(RedirectToAction("Index", "Home"));
            }
        }
コード例 #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            Milestone milestone = db.Milestones.Find(id);

            db.Milestones.Remove(milestone);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
コード例 #7
0
        public async Task <ActionResult> RegisterAdmin(RegisterAdmin model)
        {
            using (var db = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    var user = new ApplicationUser
                    {
                        UserName = model.Email,
                        Email    = model.Email,
                        Name     = model.Name,
                        Surname  = model.Surname,
                        Title    = model.Title,
                        Picture  = null
                    };
                    var result = await UserManager.CreateAsync(user, model.Password);

                    if (result.Succeeded)
                    {
                        await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);



                        var _context    = new ApplicationDbContext();
                        var roleStore   = new RoleStore <Microsoft.AspNet.Identity.EntityFramework.IdentityRole>(_context);
                        var roleManager = new RoleManager <IdentityRole>(roleStore);

                        var userStore = new UserStore <ApplicationUser>(_context);
                        var UseManage = new UserManager <ApplicationUser>(userStore);
                        UseManage.AddToRole(user.Id, "Admin");
                        var id = user.Id;

                        // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771
                        // Send an email with this link
                        string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);

                        var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                        await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");


                        Admin admin = new Admin
                        {
                            UserID = id,
                        };
                        db.Admins.Add(admin);
                        db.SaveChanges();

                        return(View("DisplayEmail"));
                        // return RedirectToAction("Index", "Home");
                    }
                    AddErrors(result);
                }

                // If we got this far, something failed, redisplay form
                return(View(model));
            }
        }
コード例 #8
0
        public IHttpActionResult EditTask(int id, TaskDto taskDto)
        {
            var       userID    = User.Identity.GetUserId();
            Completed completed = new Completed();
            To_Do     to_Do     = new To_Do();

            using (var dc = new ProgressTrackerEntities())
            {
                var updatedTask = (Milestone)taskDto;
                updatedTask.Id = id;
                if (taskDto.progress == 1)
                {
                    updatedTask.Status      = "Completed";
                    completed.Progress      = updatedTask.Progress;
                    completed.StudentNumber = updatedTask.StudentNumber;
                    dc.Completeds.Add(completed);
                    dc.SaveChanges();
                }
                else if (taskDto.progress == 0)
                {
                    updatedTask.Status  = "To-Do";
                    to_Do.StudentNumber = updatedTask.StudentNumber;
                    to_Do.Progress      = updatedTask.Progress;

                    dc.To_Do.Add(to_Do);
                    dc.SaveChanges();
                }
                else
                {
                    updatedTask.Status = "In-Progress";
                }


                dc.Entry(updatedTask).State = EntityState.Modified;
                dc.SaveChanges();

                return(Ok(new
                {
                    action = "updated"
                }));
            }
        }
コード例 #9
0
        public IHttpActionResult CreateLink(LinkDto linkDto)
        {
            using (var dc = new ProgressTrackerEntities())
            {
                var newLink = (Link)linkDto;
                dc.Links.Add(newLink);
                dc.SaveChanges();

                return(Ok(new
                {
                    tid = newLink.LinkId,
                    action = "inserted"
                }));
            }
        }
コード例 #10
0
 public IHttpActionResult DeleteLink(int id)
 {
     using (var dc = new ProgressTrackerEntities())
     {
         var link = dc.Links.Find(id);
         if (link != null)
         {
             dc.Links.Remove(link);
             dc.SaveChanges();
         }
         return(Ok(new
         {
             action = "deleted"
         }));
     }
 }
コード例 #11
0
        public IHttpActionResult EditLink(int id, LinkDto linkDto)
        {
            using (var dc = new ProgressTrackerEntities())
            {
                var clientLink = (Link)linkDto;
                clientLink.LinkId = id;

                dc.Entry(clientLink).State = EntityState.Modified;
                dc.SaveChanges();

                return(Ok(new
                {
                    action = "updated"
                }));
            }
        }
コード例 #12
0
        public ActionResult Edit([Bind(Include = "MilestoneID,Text,StartDate,Duration,ProjectNumber,Type,ParentId,Progress,Id,StudentNumber")] Milestone milestone)
        {
            var userID = User.Identity.GetUserId();

            using (var db = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    milestone.StudentNumber   = userID;
                    db.Entry(milestone).State = EntityState.Modified;
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            ViewBag.MilestoneID = new SelectList(db.Students, "StudentNumber", "Course", milestone.MilestoneID);
            return(View(milestone));
        }
コード例 #13
0
        public IHttpActionResult DeleteTask(int id)
        {
            var userID = User.Identity.GetUserId();

            using (var dc = new ProgressTrackerEntities())
            {
                var task = dc.Milestones.Find(id);
                if (task != null)
                {
                    dc.Milestones.Remove(task);
                    dc.SaveChanges();
                }

                return(Ok(new
                {
                    action = "deleted"
                }));
            }
        }
コード例 #14
0
        public ActionResult Upload([Bind(Include = "DocumentID,DocumentName,Path,Id,MilestoneID")] Document document, IEnumerable <HttpPostedFileBase> File, int id)
        {
            using (var db = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    document.Path         = "/UploadedFiles/" + File.First().FileName;
                    document.MilestoneID  = id;
                    document.DocumentName = document.DocumentName;
                    db.Documents.Add(document);

                    db.SaveChanges();

                    return(RedirectToAction("Index"));
                }

                ViewBag.Id = new SelectList(db.Milestones, "Id", "Text", document.Id);
            }
            return(View(document));
        }
コード例 #15
0
        public ActionResult Create([Bind(Include = "DocumentID,DocumentName,FileExtension,ContentType")] Document document, IEnumerable <HttpPostedFileBase> file, int id)
        {
            var _path = "";

            Milestone milestone = new Milestone();

            using (var db = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    document.Id = id;
                    //  document.DocumentName=
                    // db.SaveChanges();

                    foreach (var doc in file)
                    {
                        document = new Document();
                        if (doc != null && doc.ContentLength > 0)
                        {
                            // string _FileName = Path.GetFileName(doc.FileName);
                            _path = Path.Combine(Server.MapPath("~/UploadedFiles"), document.DocumentName);

                            doc.SaveAs(_path);

                            // document.DocumentName = _FileName;
                            document.Path = _path;
                            document.Id   = id;

                            db.Documents.Add(document);
                            db.SaveChanges();
                        }
                        ViewBag.Message = "File Uploaded Successfully!!";
                        return(View());
                    }
                }

                ViewBag.Message = "File upload failed!!";
                return(View());
            }
        }
コード例 #16
0
        public ActionResult AddMilestone([Bind(Include = "MilestoneID,Text,StartDate,Duration,ProjectNumber,Type,ParentId,Progress,Id,StudentNumber")] Milestone milestone)
        {
            var userID = User.Identity.GetUserId();

            using (var db = new ProgressTrackerEntities())
            {
                if (ModelState.IsValid)
                {
                    milestone.StudentNumber = userID;
                    if (milestone.Progress == 1)
                    {
                        milestone.Status    = "Completed";
                        milestone.Completed = true;
                    }
                    else if (milestone.Progress > 0 && milestone.Progress < 1)
                    {
                        milestone.Status     = "In-Progress";
                        milestone.InProgress = true;
                    }
                    else
                    {
                        milestone.Status = "To-Do";
                        milestone.ToDo   = true;
                    }



                    db.Milestones.Add(milestone);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            ViewBag.MilestoneID = new SelectList(db.Students, "StudentNumber", "Course", milestone.MilestoneID);
            return(View(milestone));
        }