Beispiel #1
0
        //***** ViewTAs *****
        public ActionResult ViewTAs(string Id, string prefix, string number, string notification = "")
        {
            //Ensures the Professor is still logged in
            ProfessorModel user = null;

            if ((user = Cache.GetUser <ProfessorModel>()) == null)
            {
                return(RedirectToAction(actionName: "SignOut", controllerName: "Home"));
            }
            if (Int32.TryParse(Id, out int id) &&
                !string.IsNullOrWhiteSpace(prefix) && !string.IsNullOrWhiteSpace(number))
            {
                //Creates a generic object containing all important info for 'ChooseTAs' View
                TAOptions options = new TAOptions()
                {
                    CourseId = id, CourseName = $"{prefix} {number}", Notifications = notification
                };
                DB.Course course = user.Courses != null?user.Courses.FirstOrDefault(x => x.Id == id) : null;

                if (course != null && course.TAs != null && course.TAs.Count > 0)
                {
                    options.TAs = course.TAs.ToList();
                }
                user.Notifications = notification;
                return(View(options));
            }
            return(RedirectToAction(actionName: "Index", controllerName: "Professor"));
        }
Beispiel #2
0
        public JsonResult RemoveCourse(string SLN)
        {
            ProfessorModel user = null;

            if ((user = Cache.GetUser <ProfessorModel>()) != null)
            {
                if (SLN != null && Int32.TryParse(SLN, out int Id))
                {
                    if (DB.DBMethods.Delete_Course(Id))
                    {
                        DB.Course course = user.Courses.FirstOrDefault(x => x.Id == Id);
                        user.Courses.Remove(course);
                        Cache.Set(user);
                        Response.StatusCode = (int)HttpStatusCode.OK;
                        return(Json("Success", MediaTypeNames.Text.Plain));
                    }
                    Response.StatusCode = (int)HttpStatusCode.BadRequest;
                    return(Json("Failed to Remove Course.", MediaTypeNames.Text.Plain));
                }
            }
            else if (SLN != null && Int32.TryParse(SLN, out int SLN_Num))
            {
                DB.Course course = Courses.FirstOrDefault(x => x.SLN == SLN_Num);
                Courses.Remove(course);
                Response.StatusCode = (int)HttpStatusCode.OK;
                return(Json("Success", MediaTypeNames.Text.Plain));
            }
            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json("Failed to Remove Course Infomation", MediaTypeNames.Text.Plain));
        }
Beispiel #3
0
        public JsonResult AddCourse(DB.Course course)
        {
            string message = "Failed to Add Course";

            if (course != null && course.SLN != 0 && Int32.TryParse(course.Term, out int term))
            {
                if (DB.DBMethods.Course_Get(course.SLN) == null)
                {
                    course.Term = EnumValues.Terms[term - 1];
                    ProfessorModel user = null;
                    if ((user = Cache.GetUser <ProfessorModel>()) != null)
                    {
                        if (!String.IsNullOrWhiteSpace(DB.DBMethods.Insert(course)))
                        {
                            Response.StatusCode = (int)HttpStatusCode.BadRequest;
                            return(Json("Failed to Add Course.", MediaTypeNames.Text.Plain));
                        }
                        user.Courses.Add(course);
                        Cache.Set(user);
                    }
                    else
                    {
                        Courses.Add(course);
                    }
                    Response.StatusCode = (int)HttpStatusCode.OK;
                    return(Json("Success", MediaTypeNames.Text.Plain));
                }
                message = "That Course has already been assigned to another professor in our Database.\nPlease try another course.";
            }
            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json(message, MediaTypeNames.Text.Plain));
        }
Beispiel #4
0
 public JsonResult RemoveCoursePreference(string SLN)
 {
     if (SLN != null && Int32.TryParse(SLN, out int SLN_Num))
     {
         DB.Course course = CoursePreferences.FirstOrDefault(x => x.SLN == SLN_Num);
         CoursePreferences.Remove(course);
         Response.StatusCode = (int)HttpStatusCode.OK;
         return(Json("Success", MediaTypeNames.Text.Plain));
     }
     Response.StatusCode = (int)HttpStatusCode.BadRequest;
     return(Json("Failed to Remove Course Infomation", MediaTypeNames.Text.Plain));
 }
Beispiel #5
0
        public JsonResult AddCoursePreference(DB.Course course)
        {
            string message = "Failed to Add Course Infomation";

            if (course != null && course.SLN != default(int))
            {
                if (CoursePreferences.Count < 3)
                {
                    CoursePreferences.Add(course);
                    Response.StatusCode = (int)HttpStatusCode.OK;
                    return(Json("Success", MediaTypeNames.Text.Plain));
                }
                message = "You cannot add more than 3 courses.";
            }
            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json(message, MediaTypeNames.Text.Plain));
        }