public ActionResult SuspendSemesterCreate([Bind(Include = "StudentPhone,SemesterName,Reason")] SuspendSemesterForm suspendSemesterForm, Form form,
                                                  FormCollection collection)
        {
            if (ModelState.IsValid)
            {
                //Form form = new Form();
                form.Type        = "Suspend Semester";
                form.Date        = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));
                form.CurrentDesk = "Academic-Staff";
                form.Flow        = "Academic-Staff,";
                form.FormDetails = "Suspend Semester: " + form.SemesterName;

                ArrayList UserDetails = DAL.Users.GetUser();
                form.StudentRollNo = Users.GetStudentRollNo(UserDetails[0].ToString(), UserDetails[1].ToString());
                form.StudentEmail  = UserDetails[2].ToString();
                form.StudentName   = UserDetails[0].ToString();
                form.Status        = "New";
                db.Forms.Add(form);
                db.SaveChanges();
                suspendSemesterForm.FormID = form.ID;
                if (suspendSemesterForm.Reason.Equals("Other"))
                {
                    suspendSemesterForm.Reason = "Other: " + collection["displayFor"];
                }
                db.SuspendSemesterForms.Add(suspendSemesterForm);
                db.SaveChanges();
                return(RedirectToAction("Index", "Student"));
            }

            ViewBag.FormID = new SelectList(db.Forms, "ID", "Type", suspendSemesterForm.FormID);
            DateTime today = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));

            ViewBag.SemesterName = new SelectList(db.Semesters.Where(s => s.EndDate > today), "Name", "Name");
            return(View(suspendSemesterForm));
        }
        // GET: SuspendSemesterForms/Details/5
        public ActionResult SuspendSemesterDetails(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SuspendSemesterForm suspendSemesterForm = db.SuspendSemesterForms.Find(id);
            Form form = db.Forms.Find(id);

            if (suspendSemesterForm == null)
            {
                return(HttpNotFound());
            }
            return(View(suspendSemesterForm));
        }
        // GET: SuspendSemesterForms/Delete/5
        public ActionResult SuspendSemesterDelete(int?id)
        {
            if (id == 0)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SuspendSemesterForm suspendSemesterForm = db.SuspendSemesterForms.Find(id);
            Form form = db.Forms.Find(id);

            if (!form.Status.Equals("New"))
            {
                return(RedirectToAction("Details", new { id = id }));
            }
            if (suspendSemesterForm == null)
            {
                return(HttpNotFound());
            }
            return(View(suspendSemesterForm));
        }
        public ActionResult SuspendSemesterDeleteConfirmed(int id)
        {
            SuspendSemesterForm suspendSemesterForm = db.SuspendSemesterForms.Find(id);

            db.SuspendSemesterForms.Remove(suspendSemesterForm);
            Form form = db.Forms.Find(id);

            db.Forms.Remove(form);
            db.SaveChanges();
            if (DAL.UserInfo.Role.Equals("Student"))
            {
                return(RedirectToAction("Index", "Student"));
            }
            else if (DAL.UserInfo.Role.Contains("Staff"))
            {
                return(RedirectToAction("Index", "Staff"));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
Esempio n. 5
0
        public ActionResult SuspendSemesterEndorsement(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SuspendSemesterForm suspendSemesterForm = db.SuspendSemesterForms.Find(id);

            AllFormModel allFormModels = new AllFormModel()
            {
                Form = db.Forms.Find(id),
                SuspendSubjectForm = db.SuspendSubjectForms.Find(id)
            };

            if (suspendSemesterForm == null)
            {
                return(HttpNotFound());
            }

            ViewBag.Comment = new List <FormComment>(db.FormComments.Where(fc => fc.FormID == id));
            ViewBag.FormID  = new SelectList(db.Forms, "ID", "Type,PreviousSemester,TuitionFee,TwoPrevSemester,IsWeekBefore", suspendSemesterForm.FormID);
            return(View(suspendSemesterForm));
        }
        // GET: SuspendSemesterForms/Edit/5
        public ActionResult SuspendSemesterEdit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SuspendSemesterForm suspendSemesterForm = db.SuspendSemesterForms.Find(id);
            Form form = db.Forms.Find(id);

            if (!form.Status.Equals("New"))
            {
                return(RedirectToAction("Details", new { id = id }));
            }
            if (suspendSemesterForm == null)
            {
                return(HttpNotFound());
            }
            DateTime today = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));

            ViewBag.SemesterName = new SelectList(db.Semesters.Where(s => s.EndDate > today), "Name", "Name");
            ViewBag.FormID       = new SelectList(db.Forms, "ID", "Type", suspendSemesterForm.FormID);
            return(View(suspendSemesterForm));
        }
        public ActionResult SuspendSemesterEdit([Bind(Include = "FormID,StudentPhone,SemesterName,Reason")] SuspendSemesterForm suspendSemesterForm, Form form,
                                                FormCollection collection)
        {
            if (ModelState.IsValid)
            {
                form             = db.Forms.Find(suspendSemesterForm.FormID);
                form.Type        = "Suspend Semester";
                form.Date        = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));
                form.CurrentDesk = "Academic-Staff";
                form.Flow        = "Academic-Staff,";
                form.FormDetails = "Suspend Semester: " + form.SemesterName;
                if (suspendSemesterForm.Reason.Equals("Other"))
                {
                    suspendSemesterForm.Reason = "Other: " + collection["displayFor"];
                }
                db.Entry(suspendSemesterForm).State = EntityState.Modified;
                db.Entry(form).State = EntityState.Modified;
                db.SaveChanges();
                if (DAL.UserInfo.Role.Equals("Student"))
                {
                    return(RedirectToAction("Index", "Student"));
                }
                else if (DAL.UserInfo.Role.Contains("Staff"))
                {
                    return(RedirectToAction("Index", "Staff"));
                }
                else
                {
                    return(RedirectToAction("Index", "Home"));
                }
            }
            DateTime today = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));

            ViewBag.SemesterName = new SelectList(db.Semesters.Where(s => s.EndDate > today), "Name", "Name");
            ViewBag.FormID       = new SelectList(db.Forms, "ID", "Type", suspendSemesterForm.FormID);
            return(View(suspendSemesterForm));
        }
Esempio n. 8
0
        public async Task <ActionResult> SuspendSemesterEndorsement([Bind(Include = "FormID,PreviousSemester,TwoPrevSemester")]
                                                                    SuspendSemesterForm suspendSemesterForm, FormCollection collection)
        {
            string ForwardTo        = collection["ForwardTo"] + "";
            string IsWeekBefore     = collection["IsWeekBefore"] + "";
            string FormStatus       = collection["FormStatus"] + "";
            string Life             = collection["Life"] + "";
            string TuitionFee       = collection["TuitionFee"] + "";
            string formComment      = collection["formComment"] + "";
            SuspendSemesterForm ssf = db.SuspendSemesterForms.Find(suspendSemesterForm.FormID);
            Form f = db.Forms.Find(suspendSemesterForm.FormID);

            FormComment fC = new FormComment();

            if (!formComment.Equals(""))
            {
                fC.FormID  = suspendSemesterForm.FormID;
                fC.Comment = formComment;
                fC.RoleID  = Helper.Help.GetRoleId(DAL.UserInfo.Role);
                db.FormComments.Add(fC);
            }
            if (FormStatus.Equals(""))
            {
                f.Status = "Inprogress";
            }
            else
            {
                f.Status = FormStatus;
            }
            string getCurrentDesk = "";

            if (ForwardTo != "")
            {
                getCurrentDesk = Helper.Help.GetCurrentDesk(Int32.Parse(ForwardTo));
            }
            if (getCurrentDesk.Equals("Student"))
            {
                //send mail to notify student
                string notifyMessage = "<p>Please provide more information like: </p>"
                                       + "<p>====================================</p>" + fC.Comment;
                await SendNotification(notifyMessage, DAL.UserInfo.Email, f.StudentEmail);

                //Set status To new
                f.Status = "New";

                f.CurrentDesk = "Student";
                f.Flow        = f.Flow + "Student,";
            }
            else if (getCurrentDesk.Length > 4)
            {
                f.CurrentDesk = getCurrentDesk;
                f.Flow        = f.Flow + f.CurrentDesk + ",";
            }


            if (IsWeekBefore != null)
            {
                if (IsWeekBefore.Equals("on"))
                {
                    ssf.IsWeekBefore = true;
                }
                else
                {
                    ssf.IsWeekBefore = false;
                }
            }

            if (TuitionFee != null)
            {
                if (TuitionFee.Equals("on"))
                {
                    ssf.TuitionFee = true;
                }
                else
                {
                    ssf.TuitionFee = false;
                }
            }
            ssf.PreviousSemester = suspendSemesterForm.PreviousSemester;
            ssf.TwoPrevSemester  = suspendSemesterForm.TwoPrevSemester;
            db.Entry(ssf).State  = EntityState.Modified;
            db.SaveChanges();
            if (f.Status.Equals("Approved") || f.Status.Equals("Rejected"))
            {
                f.ApprovalDate = DateTime.Now.ToString();
                f.ApprovalBy   = DAL.UserInfo.Role;
                Helper.Notify notify = new Helper.Notify();

                string notifyMessage = "<p>Your form:        " + f.Type + "</p> "
                                       + "<p>Student Name:    " + f.StudentName + "</p>"
                                       + "<p>Student RollNo:  " + f.StudentRollNo + "</p>"
                                       + "<p>Student Email:   " + f.StudentEmail + "</p>"
                                       + "<p>Student Phone:   " + f.StudentPhone + "</p>"
                                       + "<p>Semester:        " + f.SemesterName + "</p>"
                                       + "<p>Reason:          " + ssf.Reason + "</p>"
                                       + " has been <b>" + f.Status + "</b>";
                await SendNotification(notifyMessage, DAL.UserInfo.Email, f.StudentEmail);
            }
            return(RedirectToAction("Index", "Staff"));
        }