public async Task <ActionResult> Register([Bind(Include = "StudentCode,StudentEmail,StudentName,StudentFaculty,NationalID,Password,ConfirmPassword,LevelName,PhoneNumber")] Register register) { if (ModelState.IsValid) { if (register.StudentName == null || register.StudentFaculty == null) { ViewBag.ModelErrors = "كود الطالب غير صحيح"; ViewBag.LevelName = new SelectList(levels, "LevelName", "LevelName", register.LevelName); return(View(register)); } CP_Registration registration = new CP_Registration(); var pass = HashHelper.Encrypt(register.Password); var registered = db.CP_Registration.Where(s => s.StudentCode == register.StudentCode || s.StudentEmail == register.StudentEmail || s.Password == pass || s.NationalID == register.NationalID).FirstOrDefault(); if (registered != null) { if (registered.StudentCode == register.StudentCode) { ViewBag.ModelErrors = "كود الطالب مسجل مسبقا"; } else if (registered.Password == pass) { ViewBag.ModelErrors = "كلمة المرور مسجل مسبقا"; } else if (registered.StudentEmail == register.StudentEmail) { ViewBag.ModelErrors = "الايميل مسجل مسبقا"; } else if (registered.NationalID == register.NationalID) { ViewBag.ModelErrors = "الرقم القومى مسجل مسبقا"; } else { ViewBag.ModelErrors = "حدث خطا ما اثناء معالجة طلبك"; } ViewBag.LevelName = new SelectList(levels, "LevelName", "LevelName", register.LevelName); return(View(register)); } var hashedpassword = HashHelper.Encrypt(register.Password); registration.StudentCode = register.StudentCode; registration.StudentEmail = register.StudentEmail; registration.StudentName = register.StudentName; registration.StudentFaculty = register.StudentFaculty; registration.NationalID = register.NationalID; registration.Password = hashedpassword; registration.LevelName = register.LevelName; registration.PhoneNumber = register.PhoneNumber; db.CP_Registration.Add(registration); db.SaveChanges(); var activationcode = HashHelper.Encrypt(register.StudentCode); await MailHelper.SendActivationMail(register.StudentEmail, Request.Url.Scheme, Request.Url.Host, Request.Url.Port.ToString(), activationcode); ViewBag.Message = "تم ارسال رابط التفعيل على البريد الالكترونى"; return(View("Message")); } ViewBag.LevelName = new SelectList(levels, "LevelName", "LevelName", register.LevelName); return(View(register)); }
public ActionResult TarbeaRegistration([Bind(Include = "DurationID,NationalID,StudentName,StudentFacuty,StudentUniversity,LevelName,Section,Address,TelephoneNumber,PhoneNumber")] Tarbea tarbeaRegistration) { int courseId = SystemHelper.GetCourseObjectId(tarbeaRegistration); var course = db.CP_Course.Find(courseId); if (course == null) { return(HttpNotFound()); } if (ModelState.IsValid) { var registered = db.CP_Registration.Where(s => s.NationalID == tarbeaRegistration.NationalID).FirstOrDefault(); if (registered != null) { ViewBag.ModelErrors = "الرقم القومى موجود مسبقا"; var dur = SystemHelper.GetActiveCourseDuration(course.ID); ViewBag.DurationID = new SelectList(dur, "DurationID", "DurationName", tarbeaRegistration.DurationID); return(View(tarbeaRegistration)); } var duration = db.CP_Duration.Find(tarbeaRegistration.DurationID); if (duration.NumberRolled == duration.MaxCapacity - 1) { duration.Active = false; } duration.NumberRolled++; duration.SerialFrom++; var serial = duration.SerialFrom; db.Entry(duration).State = EntityState.Modified; CP_Registration registration = new CP_Registration { NationalID = tarbeaRegistration.NationalID, StudentName = tarbeaRegistration.StudentName, StudentFaculty = tarbeaRegistration.StudentFacuty, UniversityName = tarbeaRegistration.StudentUniversity, LevelName = tarbeaRegistration.LevelName, StudentSection = tarbeaRegistration.Section, StudentAddress = tarbeaRegistration.Address, PhoneNumber = tarbeaRegistration.PhoneNumber, TelephoneNumber = tarbeaRegistration.TelephoneNumber }; CP_RegisteredCourse registeredCourse = new CP_RegisteredCourse { CourseID = course.ID, RegisteredID = registration.ID, DurationID = tarbeaRegistration.DurationID, SerialNumber = serial }; registration.CP_RegisteredCourse.Add(registeredCourse); db.CP_Registration.Add(registration); db.SaveChanges(); return(RedirectToAction("RegisteredStudents", new { id = courseId, durid = tarbeaRegistration.DurationID })); } var durations = SystemHelper.GetActiveCourseDuration(course.ID); ViewBag.DurationID = new SelectList(durations, "DurationID", "DurationName", tarbeaRegistration.DurationID); return(View(tarbeaRegistration)); }
public ActionResult ResultRegistration(int?id, int?rid, int?result) { if (id == null || rid == null || result == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var registeredCourse = db.CP_RegisteredCourse.Where(r => r.RegisteredID == rid && r.CourseID == id).FirstOrDefault(); if (registeredCourse == null) { return(HttpNotFound()); } registeredCourse.ResultID = result; CP_Registration registration = db.CP_Registration.Find(rid); registration.CP_RegisteredCourse.Add(registeredCourse); db.Entry(registration).State = EntityState.Modified; db.SaveChanges(); return(new HttpStatusCodeResult(HttpStatusCode.OK)); }