public ActionResult LectureNotes(int Id = 0) { List <LectureNoteItem> lectureNotes = new List <LectureNoteItem>(); using (EastWoodEntities db = new EastWoodEntities()) { List <LectureNote> items = new List <LectureNote>(); if (Id == 0) { items = db.LectureNotes.ToList(); } else { items = db.LectureNotes.Where(w => w.SubjectId == Id).ToList(); } foreach (var item in items) { LectureNoteItem note = new LectureNoteItem(); note.LectureNote = item; note.Subject = item.Subject; note.Attachments = db.Attachments. Where(w => w.AttachmentReferenceId == item.LectureNoteid && w.AttachmentReferenceType == AttachmentReferenceTypes.LECTURE_NOTE) .ToList(); lectureNotes.Add(note); } } ViewBag.SubjectId = Id; return(View(lectureNotes)); }
protected override bool AuthorizeCore(HttpContextBase httpContext) { bool authorize = false; try { int userId = int.Parse(Convert.ToString(httpContext.Session["UserId"])); if (userId != 0) { using (var context = new EastWoodEntities()) { var userRole = (from u in context.Users join r in context.Roles on u.RoleId equals r.RoleId where u.UserId == userId select new { r.RoleName }).FirstOrDefault(); foreach (var role in allowedroles) { if (role == userRole.RoleName) { return(true); } } } } } catch { }; return(authorize); }
public ActionResult NewCourse(int Id = 0) { List <CoordinatorDetails> coordinators = new List <CoordinatorDetails>(); EditCourseItem viewModel = new EditCourseItem(); using (EastWoodEntities db = new EastWoodEntities()) { coordinators = db.Coordinators .Join( db.Users, c => c.UserId, u => u.UserId, (c, u) => new CoordinatorDetails { UserId = u.UserId, UserBio = u.UserBio, UserContactNo = u.UserContactNo, UserEmail = u.UserEmail, UserFirstName = u.UserFirstName, UserLastLoggedIn = u.UserLastLoggedIn, UserLastName = u.UserLastName, UserPassword = u.UserPassword, CoordinatorId = c.CoordinatorId, RoleId = u.RoleId } ).ToList(); if (Id != 0) { viewModel = db.Courses .Where(w => w.CourseId == Id) .Join( db.Coordinators, course => course.CoordinatorId, coordinator => coordinator.CoordinatorId, (course, coordinator) => new EditCourseItem { CourseName = course.CourseName, CourseId = course.CourseId, CourseDescription = course.CourseDescription, CourseEndsOn = course.CourseEndsOn, CourseStartsOn = course.CourseStartsOn, CoordinatorId = course.CoordinatorId }) .FirstOrDefault(); } } viewModel.Coordinators = coordinators; // New if (Id == 0) { return(View(viewModel)); } // Edit else { return(View(viewModel)); } }
public ActionResult ViewAssignment(int Id = 0, string Message = "") { int userId = int.Parse(Session["UserId"].ToString()); ViewBag.Message = Message; if (Id == 0) { return(Redirect("/Student/Assignments")); } else { using (EastWoodEntities db = new EastWoodEntities()) { int studentId = db.Students.Where(w => w.UserId == userId).Select(s => s.StudentId).FirstOrDefault(); if (studentId == 0) { return(Redirect("/")); } var assignment = db.Assignments.Where(w => w.AssignmentId == Id).FirstOrDefault(); assignment.Subject = assignment.Subject; assignment.AssignmentUploads = assignment.AssignmentUploads.Where(w => w.StudentId == studentId).ToList(); foreach (var upload in assignment.AssignmentUploads) { upload.Attachments = db.Attachments. Where(w => w.AttachmentReferenceId == upload.AssignmentUploadId && w.AttachmentReferenceType == AttachmentReferenceTypes.ASSIGNMENT_UPLOADS) .ToList(); } assignment.Attachments = db.Attachments. Where(w => w.AttachmentReferenceId == assignment.AssignmentId && w.AttachmentReferenceType == AttachmentReferenceTypes.ASSIGNMENT) .ToList(); return(View(assignment)); } } }
public ActionResult AssignmentUploads(int Id = 0) { List <AssignmentUpload> assignmentUploads = new List <AssignmentUpload>(); using (EastWoodEntities db = new EastWoodEntities()) { if (Id == 0) { assignmentUploads = db.AssignmentUploads.ToList(); } else { assignmentUploads = db.AssignmentUploads.Where(w => w.AssignmentId == Id).ToList(); } foreach (var item in assignmentUploads) { item.Student.User = item.Student.User; item.Assignment = item.Assignment; item.Attachments = db.Attachments .Where(w => w.AttachmentReferenceId == item.AssignmentUploadId && w.AttachmentReferenceType == AttachmentReferenceTypes.ASSIGNMENT_UPLOADS) .OrderByDescending(o => o.AttachmentId) .ToList(); } } ViewBag.AssignmentId = Id; return(View(assignmentUploads)); }
public ActionResult Register(User user) { bool Status = false; string message = ""; // // Model Validation if (true) { //Email is already Exist var isExist = IsEmailExist(user.UserEmail); if (isExist) { ModelState.AddModelError("EmailExist", "Email already exist"); return(View(user)); } user.UserPassword = Crypto.Hash(user.UserPassword); user.UserLastLoggedIn = DateTime.Now; // Save to Database using (EastWoodEntities db = new EastWoodEntities()) { db.Users.Add(user); db.SaveChanges(); if (user.RoleId == RoleTypes.LECTURER_ID) { Lecturer lecturer = new Lecturer(); lecturer.UserId = user.UserId; db.Lecturers.Add(lecturer); db.SaveChanges(); } else if (user.RoleId == RoleTypes.COORDINATOR_ID) { Coordinator coordinator = new Coordinator(); coordinator.UserId = user.UserId; db.Coordinators.Add(coordinator); db.SaveChanges(); } else if (user.RoleId == RoleTypes.STUDENT_ID) { Student student = new Student(); student.UserId = user.UserId; db.Students.Add(student); db.SaveChanges(); } } } else { message = "Invalid Request"; } ViewBag.Message = message; ViewBag.Status = Status; return(Redirect("/Admin/Users")); }
public ActionResult Semesters(int Id) { using (EastWoodEntities db = new EastWoodEntities()) { var list = db.Semesters.Where(w => w.CourseId == Id).ToList(); ViewBag.CourseId = Id; return(View(list)); } }
private List <Semester> GetSemesters(int Id) { using (EastWoodEntities db = new EastWoodEntities()) { var list = db.Semesters.Where(w => w.CourseId == Id).ToList(); ViewBag.CourseId = Id; return(list); } }
private CoursesViewModel GetCoursesViewModel(int userId) { CoursesViewModel viewModel = new CoursesViewModel(); using (EastWoodEntities db = new EastWoodEntities()) { int studentId = db.Students.Where(w => w.UserId == userId).Select(s => s.StudentId).FirstOrDefault(); if (studentId == 0) { return(null); } viewModel.Courses = db.Courses .Join( db.StudentCourses.Where(w => w.StudentId == studentId), c => c.CourseId, sc => sc.CourseId, (c, sc) => new { Course = c } ) .Join( db.Coordinators, course => course.Course.CoordinatorId, coordinator => coordinator.CoordinatorId, (course, coordinator) => new { Course = course, Coordinator = coordinator }) .Join( db.Users, cd => cd.Coordinator.UserId, user => user.UserId, (cd, user) => new CourseItem { CourseName = cd.Course.Course.CourseName, CourseId = cd.Course.Course.CourseId, CourseDescription = cd.Course.Course.CourseDescription, CourseEndsOn = cd.Course.Course.CourseEndsOn, CourseStartsOn = cd.Course.Course.CourseStartsOn, CoordinatorDetails = new ViewModel.CoordinatorDetails { UserId = user.UserId, UserBio = user.UserBio, UserFirstName = user.UserFirstName, UserLastLoggedIn = user.UserLastLoggedIn, UserLastName = user.UserLastName, UserEmail = user.UserEmail, UserContactNo = user.UserContactNo, CoordinatorId = cd.Coordinator.CoordinatorId } } ) .OrderByDescending(o => o.CourseStartsOn).ToList(); } return(viewModel); }
public ActionResult Assignments(int Id = 0) { int userId = int.Parse(Session["UserId"].ToString()); List <AssignmentItem> assignments = new List <AssignmentItem>(); using (EastWoodEntities db = new EastWoodEntities()) { int studentId = db.Students.Where(w => w.UserId == userId).Select(s => s.StudentId).FirstOrDefault(); if (studentId == 0) { return(Redirect("/")); } List <Assignment> items = new List <Assignment>(); if (Id == 0) { items = db.Assignments .Join( db.Subjects, a => a.SubjectId, s => s.SubjectId, (a, s) => new { Subject = s, Assignment = a } ) .Join( db.Semesters, asSub => asSub.Subject.SemesterId, sem => sem.SemesterId, (asSub, sem) => new { Semester = sem, Assignment = asSub.Assignment } ) .Join( db.StudentCourses.Where(w => w.StudentId == studentId), asSubCourse => asSubCourse.Semester.CourseId, sc => sc.CourseId, (asSubCourse, sc) => new { Assignment = asSubCourse.Assignment } ) .Select(s => s.Assignment) .ToList(); } else { items = db.Assignments.Where(w => w.SubjectId == Id).ToList(); } foreach (var item in items) { AssignmentItem assignment = new AssignmentItem(); assignment.Assignment = item; assignment.Subject = item.Subject; assignment.AssignmentMarks = MarksHelper.GetMarksForAssignment(item.AssignmentId, studentId); assignment.AssignmentGrade = MarksHelper.GetGradeForAssignment(item.AssignmentId, studentId); assignments.Add(assignment); } } ViewBag.SubjectId = Id; return(View(assignments)); }
public ActionResult Users() { using (EastWoodEntities db = new EastWoodEntities()) { List <User> users = db.Users.ToList(); foreach (var user in users) { user.Role = user.Role; } return(View(users)); } }
private bool IsEmailExist(string Email) { using (EastWoodEntities db = new EastWoodEntities()) { var user = db.Users.Where(w => w.UserEmail.ToLower() == Email.ToLower()).FirstOrDefault(); if (user != null) { return(true); } return(false); } }
private CoursesViewModel GetCoursesViewModel() { CoursesViewModel viewModel = new CoursesViewModel(); using (EastWoodEntities db = new EastWoodEntities()) { viewModel.Courses = db.Courses .Join( db.Coordinators, course => course.CoordinatorId, coordinator => coordinator.CoordinatorId, (course, coordinator) => new { Course = course, Coordinator = coordinator }) .Join( db.Users, cd => cd.Coordinator.UserId, user => user.UserId, (cd, user) => new CourseItem { CourseName = cd.Course.CourseName, CourseId = cd.Course.CourseId, CourseDescription = cd.Course.CourseDescription, CourseEndsOn = cd.Course.CourseEndsOn, CourseStartsOn = cd.Course.CourseStartsOn, CoordinatorDetails = new ViewModel.CoordinatorDetails { UserId = user.UserId, UserBio = user.UserBio, UserFirstName = user.UserFirstName, UserLastLoggedIn = user.UserLastLoggedIn, UserLastName = user.UserLastName, UserEmail = user.UserEmail, UserContactNo = user.UserContactNo, CoordinatorId = cd.Coordinator.CoordinatorId } } ) .OrderByDescending(o => o.CourseStartsOn).ToList(); foreach (var item in viewModel.Courses) { item.StudentCourses = db.StudentCourses.Where(w => w.CourseId == item.CourseId).ToList(); } } return(viewModel); }
public static string GetGradeForAssignment(int AssignmentId, int StudentId) { using (EastWoodEntities db = new EastWoodEntities()) { var submitions = db.AssignmentUploads .Where(w => w.AssignmentId == AssignmentId && w.StudentId == StudentId) .FirstOrDefault(); if (submitions != null) { return(submitions.AssignmentUploadGrade); } return("Not Submitted"); } }
public ActionResult SetMarks(int Id, int Marks, int AssignmentId, string Comment) { using (EastWoodEntities db = new EastWoodEntities()) { var upload = db.AssignmentUploads.Where(w => w.AssignmentUploadId == Id).FirstOrDefault(); if (upload != null) { upload.AssignmentUploadMarks = Marks; upload.AssignmentUploadGrade = MarksHelper.GetGrade(Marks); upload.AssignmentUploadLecturerComment = Comment; db.SaveChanges(); } } return(Redirect("/Admin/AssignmentUploads/" + AssignmentId)); }
public ActionResult NewSubject(int Id = 0, int SemesterId = 0) { if (Id != 0) { using (EastWoodEntities db = new EastWoodEntities()) { var subject = db.Subjects.Where(w => w.SubjectId == Id).FirstOrDefault(); return(View(subject)); } } Subject sub = new Subject(); sub.SemesterId = SemesterId; return(View(sub)); }
public ActionResult NewSemester(int Id = 0, int CourseId = 0) { if (Id != 0) { using (EastWoodEntities db = new EastWoodEntities()) { var semester = db.Semesters.Where(w => w.SemesterId == Id).FirstOrDefault(); return(View(semester)); } } Semester semester1 = new Semester(); semester1.CourseId = CourseId; return(View(semester1)); }
public ActionResult Subjects(int Id = 0) { int userId = int.Parse(Session["UserId"].ToString()); List <Subject> subjects = new List <Subject>(); using (EastWoodEntities db = new EastWoodEntities()) { int studentId = db.Students.Where(w => w.UserId == userId).Select(s => s.StudentId).FirstOrDefault(); if (studentId == 0) { return(Redirect("/")); } List <Subject> items = new List <Subject>(); if (Id == 0) { items = db.Subjects .Join( db.Semesters, sub => sub.SemesterId, sem => sem.SemesterId, (sub, sem) => new { Semester = sem, Subject = sub } ) .Join( db.StudentCourses.Where(w => w.StudentId == studentId), SemesterSubject => SemesterSubject.Semester.CourseId, sc => sc.CourseId, (SemesterSubject, sc) => new { Subject = SemesterSubject.Subject } ) .Select(s => s.Subject) .ToList(); } else { items = db.Subjects.Where(w => w.SemesterId == Id).ToList(); } foreach (var item in items) { Subject sub = new Subject(); sub = item; sub.Semester = item.Semester; sub.Lecturer.User = item.Lecturer.User; sub.Semester.Course = item.Semester.Course; subjects.Add(sub); } } ViewBag.SemesterId = Id; return(View(subjects)); }
public static double GetMarksForAssignment(int AssignmentId, int StudentId) { double marks = 0; using (EastWoodEntities db = new EastWoodEntities()) { var submitions = db.AssignmentUploads .Where(w => w.AssignmentId == AssignmentId && w.StudentId == StudentId) .FirstOrDefault(); if (submitions != null) { marks = submitions.AssignmentUploadMarks; } } return(marks); }
public ActionResult Assignments(int Id = 0) { int userId = int.Parse(Session["UserId"].ToString()); List <AssignmentItem> assignments = new List <AssignmentItem>(); using (EastWoodEntities db = new EastWoodEntities()) { Lecturer lecturer = db.Lecturers.Where(w => w.UserId == userId).FirstOrDefault(); List <Assignment> items = new List <Assignment>(); if (lecturer != null && Id == 0) { items = db.Assignments .Join( db.Subjects, a => a.SubjectId, s => s.SubjectId, (a, s) => new { Assignment = a, Subject = s } ) .Where(w => w.Subject.LecturerId == lecturer.LecturerId) .Select(s => s.Assignment) .ToList(); } else { if (Id == 0) { items = db.Assignments.ToList(); } else { items = db.Assignments.Where(w => w.SubjectId == Id).ToList(); } } foreach (var item in items) { AssignmentItem assignment = new AssignmentItem(); assignment.Assignment = item; assignment.Subject = item.Subject; assignments.Add(assignment); } } ViewBag.SubjectId = Id; return(View(assignments)); }
public ActionResult Courses() { CoursesViewModel viewModel = new CoursesViewModel(); using (EastWoodEntities db = new EastWoodEntities()) { viewModel.Courses = db.Courses .Join( db.Coordinators, course => course.CoordinatorId, coordinator => coordinator.CoordinatorId, (course, coordinator) => new { Course = course, Coordinator = coordinator }) .Join( db.Users, cd => cd.Coordinator.UserId, user => user.UserId, (cd, user) => new CourseItem { CourseName = cd.Course.CourseName, CourseId = cd.Course.CourseId, CourseDescription = cd.Course.CourseDescription, CourseEndsOn = cd.Course.CourseEndsOn, CourseStartsOn = cd.Course.CourseStartsOn, CoordinatorDetails = new ViewModel.CoordinatorDetails { UserId = user.UserId, UserBio = user.UserBio, UserFirstName = user.UserFirstName, UserLastLoggedIn = user.UserLastLoggedIn, UserLastName = user.UserLastName, UserEmail = user.UserEmail, UserContactNo = user.UserContactNo, CoordinatorId = cd.Coordinator.CoordinatorId } } ) .OrderByDescending(o => o.CourseStartsOn).ToList(); } return(View(viewModel)); }
public ActionResult Login(User user, string ReturnUrl = "/Admin") { string message = ""; ReturnUrl = ViewBag.ReturnUrl; using (EastWoodEntities db = new EastWoodEntities()) { var v = db.Users.Where(w => w.UserEmail == user.UserEmail).FirstOrDefault(); if (v != null) { if (string.Compare(Crypto.Hash(user.UserPassword), v.UserPassword) != 0) { message = "Invalid credential provided"; } else if (!IsAdmin(v.RoleId)) { message = "This user is not an admin"; } else { user.UserLastLoggedIn = DateTime.Now; Session["UserId"] = v.UserId; Session["UserName"] = v.UserFirstName + " " + v.UserLastName; Session["UserRole"] = v.Role.RoleName; Session["UserLastLoggedIn"] = v.UserLastLoggedIn; if (Url.IsLocalUrl(ReturnUrl)) { return(Redirect(ReturnUrl)); } else { return(RedirectToAction("Index", "Admin")); } } } else { message = "Invalid credential provided"; } } ViewBag.Message = message; return(View()); }
private List <Subject> GetSubjectsBySemester(int Id) { List <Subject> subjects = new List <Subject>(); using (EastWoodEntities db = new EastWoodEntities()) { List <Subject> items = db.Subjects.Where(w => w.SemesterId == Id).ToList(); foreach (var item in items) { Subject sub = new Subject(); sub = item; sub.Semester = item.Semester; sub.Lecturer.User = item.Lecturer.User; subjects.Add(sub); } } return(subjects); }
public ActionResult NewSemester(Semester semester) { using (EastWoodEntities db = new EastWoodEntities()) { if (semester.SemesterId != 0) { var sem = db.Semesters.Where(w => w.SemesterId == semester.SemesterId).FirstOrDefault(); sem.SemesterStartDate = semester.SemesterStartDate; sem.SemesterEndDate = semester.SemesterEndDate; sem.SemesterName = semester.SemesterName; db.SaveChanges(); } else { db.Semesters.Add(semester); db.SaveChanges(); } } return(Redirect("/Admin/Semesters/" + semester.CourseId)); }
public ActionResult NewSubject(Subject subject) { using (EastWoodEntities db = new EastWoodEntities()) { if (subject.SubjectId != 0) { var sem = db.Subjects.Where(w => w.SubjectId == subject.SubjectId).FirstOrDefault(); sem.SubjectName = subject.SubjectName; sem.SubjectDescription = subject.SubjectDescription; sem.SemesterId = subject.SemesterId; sem.LecturerId = subject.LecturerId; db.SaveChanges(); } else { db.Subjects.Add(subject); db.SaveChanges(); } } return(Redirect("/Admin/Subjects/" + subject.SemesterId)); }
public ActionResult LectureNotes(int Id = 0) { int userId = int.Parse(Session["UserId"].ToString()); List <LectureNoteItem> lectureNotes = new List <LectureNoteItem>(); using (EastWoodEntities db = new EastWoodEntities()) { List <LectureNote> items = new List <LectureNote>(); if (Id == 0) { int studentId = db.Students.Where(w => w.UserId == userId).Select(s => s.StudentId).FirstOrDefault(); if (studentId == 0) { items = db.LectureNotes.ToList(); } else { items = db.LectureNotes .Where(w => w.Subject.Semester.Course.StudentCourses.Where(w2 => w2.StudentId == studentId).Count() > 0) .ToList(); } } else { items = db.LectureNotes.Where(w => w.SubjectId == Id).ToList(); } foreach (var item in items) { LectureNoteItem note = new LectureNoteItem(); note.LectureNote = item; note.Subject = item.Subject; note.Attachments = db.Attachments. Where(w => w.AttachmentReferenceId == item.LectureNoteid && w.AttachmentReferenceType == AttachmentReferenceTypes.LECTURE_NOTE) .ToList(); lectureNotes.Add(note); } } ViewBag.SubjectId = Id; return(View(lectureNotes)); }
public ActionResult Subjects(int Id = 0) { int userId = int.Parse(Session["UserId"].ToString()); List <Subject> subjects = new List <Subject>(); using (EastWoodEntities db = new EastWoodEntities()) { Lecturer lecturer = db.Lecturers.Where(w => w.UserId == userId).FirstOrDefault(); List <Subject> items = new List <Subject>(); if (lecturer != null && Id == 0) { items = db.Subjects .Where(w => w.LecturerId == lecturer.LecturerId) .ToList(); } else { if (Id == 0) { items = db.Subjects.ToList(); } else { items = db.Subjects.Where(w => w.SemesterId == Id).ToList(); } } foreach (var item in items) { Subject sub = new Subject(); sub = item; sub.Semester = item.Semester; sub.Lecturer.User = item.Lecturer.User; subjects.Add(sub); } } ViewBag.SemesterId = Id; return(View(subjects)); }
public ActionResult Index(int Id = 0) { HomePageViewModel viewModel = new HomePageViewModel(); ViewBag.SelectedCourseId = Id; int userId = int.Parse(Session["UserId"].ToString()); viewModel.Courses = GetCoursesViewModel(userId); if (viewModel.Courses != null && viewModel.Courses.Courses.Count > Id) { viewModel.Semesters = GetSemesters(viewModel.Courses.Courses[Id].CourseId); viewModel.Subjects = new List <Subject>(); foreach (var sem in viewModel.Semesters) { viewModel.Subjects.AddRange(GetSubjectsBySemester(sem.SemesterId)); } } using (EastWoodEntities db = new EastWoodEntities()) { var student = db.Students.Where(w => w.UserId == userId).FirstOrDefault(); if (student != null && viewModel.Subjects != null && viewModel.Semesters != null) { // get marks for student for subjects foreach (var sub in viewModel.Subjects) { sub.StudentAvgMarksForSubject = MarksHelper.GetAvgMarksForSubject(sub.SubjectId, student.StudentId); sub.StudentGradeForSubject = MarksHelper.GetGradeForSubject(sub.SubjectId, student.StudentId); } // get marks for student for semesters foreach (var sem in viewModel.Semesters) { sem.StudentGradeForSemester = MarksHelper.GetGradeForSemester(sem.SemesterId, student.StudentId); } } } return(View(viewModel)); }
public static string GetGradeForSubject(int SubjectId, int StudentId) { double marks = 0; using (EastWoodEntities db = new EastWoodEntities()) { var submittions = db.AssignmentUploads .Where(w => w.Assignment.SubjectId == SubjectId && w.StudentId == StudentId) .ToList(); int count = 0; foreach (var sub in submittions) { if (sub.AssignmentUploadMarks > 0) { count++; marks += sub.AssignmentUploadMarks; } } marks /= count; } return(GetGrade(marks)); }
public static string GetGradeForSemester(int SemesterId, int StudentId) { double marks = 0; using (EastWoodEntities db = new EastWoodEntities()) { var subjects = db.Subjects .Where(w => w.SemesterId == SemesterId) .ToList(); int count = 0; foreach (var sub in subjects) { var totalForSub = GetAvgMarksForSubject(sub.SubjectId, StudentId); if (totalForSub > 0) { count++; marks += GetAvgMarksForSubject(sub.SubjectId, StudentId); } } marks /= count; } return(GetGrade(marks)); }