Example #1
0
        public IActionResult Register()
        {
            TeacherRegisterModel model = new TeacherRegisterModel();

            model = LoadModel(ref model);
            return(View(model));
        }
Example #2
0
        public ActionResult Add(TeacherRegisterModel modelTeacher)
        {
            var teacherModel = Mapper.Map <TeacherRegisterModel, Teacher>(modelTeacher);
            var myTeacher    = _teacherRepository.GenerateTeacherFromRegisterModel(teacherModel);

            if (_teacherRepository.ExistIdNumber(modelTeacher.IdNumber))
            {
                _viewMessageLogic.SetNewMessage("Dato Invalido", "Ya existe el numero de Identidad ya existe", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index"));
            }
            if (_teacherRepository.ExistEmail(modelTeacher.Email))
            {
                _viewMessageLogic.SetNewMessage("Dato Invalido", "El Correo Electronico ya esta en uso", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index"));
            }
            var newUser = new User
            {
                DisplayName = modelTeacher.FirstName,
                Email       = modelTeacher.Email,
                Password    = modelTeacher.Password,
                IsActive    = true,
                Role        = Roles.Maestro
            };

            newUser          = _userRepository.Create(newUser);
            myTeacher.MyUser = newUser;
            _teacherRepository.Create(myTeacher);
            const string title   = "Maestro Agregado";
            var          content = "El maestro " + myTeacher.FullName + "ha sido agregado exitosamente.";

            _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
            return(RedirectToAction("Index"));
        }
Example #3
0
 public ActionResult Add(TeacherRegisterModel modelTeacher)
 {
     var teacherModel = Mapper.Map<TeacherRegisterModel, Teacher>(modelTeacher);
     var myTeacher = _teacherRepository.GenerateTeacherFromRegisterModel(teacherModel);
     if (_teacherRepository.ExistIdNumber(modelTeacher.IdNumber))
     {
         _viewMessageLogic.SetNewMessage("Dato Invalido", "Ya existe el numero de Identidad ya existe", ViewMessageType.ErrorMessage);
         return RedirectToAction("Index");
     }
     if (_teacherRepository.ExistEmail(modelTeacher.Email))
     {
         _viewMessageLogic.SetNewMessage("Dato Invalido", "El Correo Electronico ya esta en uso", ViewMessageType.ErrorMessage);
         return RedirectToAction("Index");
     }
     var newUser = new User
     {
         DisplayName = modelTeacher.FirstName,
         Email = modelTeacher.Email,
         Password = modelTeacher.Password,
         IsActive = true,
         Role = Roles.Maestro
     };
     newUser = _userRepository.Create(newUser);
     myTeacher.MyUser = newUser;
     _teacherRepository.Create(myTeacher);
     const string title = "Maestro Agregado";
     var content = "El maestro " + myTeacher.FullName + "ha sido agregado exitosamente.";
     _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
     return RedirectToAction("Index");
 }
Example #4
0
        public ActionResult AdaugaUtilizatorNou(TeacherRegisterModel model)
        {
            if (ModelState.IsValid)
            {
                ResourcesRepository rr = new ResourcesRepository();
                HighSchool          hs = rr.GetHighSchoolByName(model.ScoalaDeProvenienta);

                Teacher teacher = new Teacher(model.Parola, model.Nume, model.Prenume, model.Mail, hs);

                //User user = new User(model.Parola, model.Nume, model.Prenume, model.Mail);

                using (var db = new EducatieIncluzivaDBContext())
                {
                    //db.Useri.Add(user);
                    db.Entry(hs).State = EntityState.Unchanged;
                    db.Teachers.Add(teacher);
                    try
                    {
                        db.SaveChanges();
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }

                    //FormsAuthentication.SetAuthCookie(model.Mail, false /* createPersistentCookie */);
                    //return RedirectToAction("Index", "Home");
                }
            }
            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Example #5
0
        public IActionResult Register(TeacherRegisterModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var singleUser = _context.Users.Where(x => x.Email == model.Email).AsNoTracking();
                    if (!singleUser.Any())
                    {
                        List <IFormFile> list = new List <IFormFile>();
                        if (model.ImageFile != null)
                        {
                            list.Add(model.ImageFile);
                        }

                        Teacher teacherData = new Teacher()
                        {
                            FirstName        = model.FirstName,
                            LastName         = model.LastName,
                            Email            = model.Email,
                            AlternateContact = model.AlternateContact,
                            ContactNo        = model.ContactNo,
                            DOB                = model.DOB,
                            Description        = model.Description,
                            Address            = model.Address,
                            Gender             = Enum.GetName(typeof(Gender), model.GenderId),
                            StateId            = model.StateId,
                            CityId             = model.CityId,
                            Pincode            = model.PincodeId,
                            TeachingExperience = model.TeachingExperience
                        };
                        (int teacherId, string uniqueNo) = _classBookService.SaveTeacher(teacherData, list);
                        string UserName = teacherData.FirstName + uniqueNo;
                        var    user     = _classBookService.SaveUserData(teacherId, Module.Student, UserName, teacherData.Email);
                        //var rest = _classBookService.RegisterMethod(model, "/api/v1/ChannelPartner/register");
                        _classBookService.SendVerificationLinkEmail(teacherData.Email, user.Password, Module.Student.ToString());
                        return(RedirectToAction("Register"));
                    }
                    else
                    {
                        ModelState.AddModelError("Email", "Email Id Already Exist");
                        model = LoadModel(ref model);
                    }
                    return(View(model));
                }
                else
                {
                    model = LoadModel(ref model);
                    return(View(model));
                }
            }
            catch (Exception ex)
            {
                _logsService.InsertLogs("Teacher", ex, "Teacher", 0);
                return(RedirectToAction("Register"));
            }
        }
        public async Task <IActionResult> RegisterTeacherAsync(TeacherRegisterModel registerModel)
        {
            if (this.ModelState.IsValid)
            {
                var teacher = this.mapper.Map <TeacherRegisterModel, Teacher>(registerModel);
                teacher.Id           = Guid.NewGuid().ToString();
                teacher.PasswordHash = registerModel.Password;

                if (registerModel.Username == null)
                {
                    teacher.UserName = registerModel.Email;
                }
                else
                {
                    teacher.UserName = registerModel.Username;
                }

                var result = await this.userManager.CreateAsync(teacher, registerModel.Password);

                if (result.Succeeded)
                {
                    await this.userManager.AddToRoleAsync(teacher, "Teacher");

                    this.logger.LogInformation("User created a new account with password.");

                    this.TempData["SuccessMsg"] = "Акаунта е създаден.";
                    return(this.Redirect("/Home/Success"));
                }
                else
                {
                    foreach (var error in result.Errors)
                    {
                        this.ModelState.AddModelError(string.Empty, error.Description);
                        return(this.View(registerModel));
                    }
                }
            }

            return(this.View());
        }
Example #7
0
        public ActionResult Add(TeacherRegisterModel modelTeacher)
        {
            var teacherModel = Mapper.Map <TeacherRegisterModel, Teacher>(modelTeacher);

            if (
                _peopleWithUserRepository.Filter(x => x.IdNumber.Equals(modelTeacher.IdNumber) && !x.User.Role.Name.Equals("Tutor"))
                .Any())
            {
                _viewMessageLogic.SetNewMessage("Dato Inválido", "Ya existe un maestro con ese número de Identidad", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index"));
            }
            if (_peopleWithUserRepository.Filter(x => x.User.Email == modelTeacher.Email).Any())
            {
                _viewMessageLogic.SetNewMessage("Dato Inválido", "El Correo Electronico ya esta en uso", ViewMessageType.ErrorMessage);
                return(RedirectToAction("Index"));
            }
            _teacherRepository.Create(teacherModel);
            var newUser = new User
            {
                Name     = modelTeacher.FirstName,
                Email    = modelTeacher.Email,
                Password = _passwordGenerationService.GenerateTemporaryPassword(),
                IsUsingDefaultPassword = true,
                IsActive  = true,
                Role      = _roleRepository.Filter(x => x.Name == "Maestro").FirstOrDefault(),
                UserOwner = teacherModel
            };

            newUser.DefaultPassword = newUser.Password;
            newUser           = _userRepository.Create(newUser);
            teacherModel.User = newUser;
            _teacherRepository.Update(teacherModel);
            const string title   = "Maestro Agregado";
            var          content = "El maestro " + teacherModel.FullName + " ha sido agregado exitosamente.";

            _viewMessageLogic.SetNewMessage(title, content, ViewMessageType.SuccessMessage);
            return(RedirectToAction("Index"));
        }
        public async Task <IActionResult> TeacherRegister(TeacherRegisterModel model)
        {
            if (ModelState.IsValid)
            {
                Teacher teacher = await db.Teachers.FirstOrDefaultAsync(t => t.TeacherId == model.TeacherId);

                if (teacher == null)
                {
                    if (HttpContext.Session.Keys.Contains("teacher"))
                    {
                        await LogoutWithoutRedirect();

                        HttpContext.Session.Remove("teacher");
                    }

                    Teacher t = new Teacher {
                        TeacherId = model.TeacherId, Email = model.Email, Password = HashPassword(model.Password)
                    };
                    db.Teachers.Add(t);
                    await db.SaveChangesAsync();
                    await Authenticate(model.TeacherId.ToString());

                    TempData.Put("teacherik", t);
                    if (t.Email != null)
                    {
                        // SendEmailAsync(t.Email, false).GetAwaiter();
                    }

                    return(RedirectToAction("Personal", "Teacher"));
                }
                else
                {
                    ViewBag.ErrorMessage = $"Teacher with Id = {teacher.TeacherId} already exists.";
                }
            }

            return(View(model));
        }
Example #9
0
 protected TeacherRegisterModel LoadModel(ref TeacherRegisterModel model)
 {
     model.States     = _classBookModelFactory.PrepareStateDropDown();
     model.GenderList = _classBookModelFactory.PrepareGenderDropDown();
     return(model);
 }