コード例 #1
0
        public virtual bool Equals(Profesor obj)
        {
            if (obj == null) return false;

            if (Equals(Apellido, obj.Apellido) == false) return false;
            if (Equals(Nombre, obj.Nombre) == false) return false;
            if (Equals(Cedula, obj.Cedula) == false) return false;
            return true;
        }
コード例 #2
0
        public ActionResult RegisterProfesor(Profesor profesor)
        {
            if (ModelState.IsValid)
            {
                if (profesor.Password == profesor.ConfirmPassword)
                {
                    IRepositorio<Profesor> repositorioProfesor = new ProfesorRepositorio();
                    var miProfesor = repositorioProfesor.GetByUniqueAtribute(profesor.Username);

                    IRepositorio<Alumno> repositorioAlumno = new AlumnoRepositorio();
                    var miAlumno = repositorioAlumno.GetByUniqueAtribute(profesor.Username);

                    if (miProfesor == null && miAlumno == null)
                    {
                        MembershipCreateStatus createStatus = MembershipService.CreateUser(profesor.Username,
                                                                                           profesor.Password,
                                                                                           profesor.Nombre.Substring(0, 1) + profesor.Apellido + "@ucab.edu.ve");
                        if (createStatus == MembershipCreateStatus.Success)
                        {
                            if (Roles.RoleExists("Profesor"))
                            {
                                Roles.AddUserToRole(profesor.Username, "Profesor");
                            }
                            else
                            {
                                Roles.CreateRole("Profesor");
                                Roles.AddUserToRole(profesor.Username, "Profesor");
                            }
                            profesor.CreationDate = DateTime.Today;
                            var prof = repositorioProfesor.GetById(profesor.Cedula);
                            var flag = prof == null ? repositorioProfesor.Save(profesor) : repositorioProfesor.Update(profesor);

                            if (flag.CompareTo("true") == 0)
                            {
                                Session["cedula"] = profesor.Cedula;
                                IRepositorio<Actividad> repositorioActividad = new ActividadRepositorio();
                                var listActividades =
                                    repositorioActividad.GetAll().Where(a => a.Profesor == profesor.Cedula &&
                                                                             a.Periodo.CompareTo(_periodoActual) == 0 &&
                                                                             a.Tipo.CompareTo("Clase") == 0).ToList();
                                var misMaterias = new List<Materium>();
                                IRepositorio<Materium> repositorioMateria = new MateriumRepositorio();
                                foreach (var actividad in listActividades)
                                {
                                    var materia = repositorioMateria.GetById(actividad.IdMateria);
                                    materia.Seccion = actividad.Seccion;
                                    if (!misMaterias.Contains(materia))
                                    {
                                        misMaterias.Add(materia);
                                    }
                                }
                                profesor.Materiums = misMaterias;
                                FormsService.SignIn(profesor.Username, false /* createPersistentCookie */);
                                return View("ConfigurationProfesor", profesor);
                            }
                            else
                            {
                                ModelState.AddModelError("saveAlumno", "Oops! Ha ocurrido un error inesperado, vuelva a intentarlo.");
                            }
                        }
                        else
                        {
                            ModelState.AddModelError("passOrUsername", AccountValidation.ErrorCodeToString(createStatus));
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("passOrUsername", "Oops!! El nombre de usuario ya existe, por favor intente con otro.");
                    }
                }
                else
                {
                    ModelState.AddModelError("contrasenia", "Las contraseñas no coinciden.");
                }
            }
            return View(profesor);
        }
コード例 #3
0
 public ActionResult GetCedula(LogOnModel model)
 {
     if (model.Cedula != 0)
     {
         if (model.Tipo.CompareTo("Estudiante") == 0)
         {
             IRepositorio<Alumno> repositorioAlumno = new AlumnoRepositorio();
             var estudiante = repositorioAlumno.GetById(model.Cedula);
             if (estudiante == null)
             {
                 estudiante = new Alumno { Cedula = model.Cedula };
                 IRepositorio<SlAlumno> repositorioSLAlumno = new SlAlumnoRepositorio();
                 var registroEstudiante = repositorioSLAlumno.GetById(estudiante.Cedula);
                 if (registroEstudiante != null)
                 {
                     estudiante.Apellido = registroEstudiante.Apellido;
                     estudiante.Nombre = registroEstudiante.Nombre;
                     estudiante.FechaNac = Convert.ToDateTime(registroEstudiante.FechaNac).Date;
                     estudiante.Sexo = registroEstudiante.Sexo == "M" ? "Masculino" : "Femenino";
                     estudiante.CorreoUcab = registroEstudiante.CorreoUcab;
                     estudiante.CorreoAlternativo = registroEstudiante.CorreoAlternativo;
                     estudiante.Direccion = registroEstudiante.Direccion + ", " + registroEstudiante.Estado + ", " +
                                        registroEstudiante.Cuidad;
                     estudiante.Password = "******";
                     estudiante.ConfirmPassword = "******";
                     return View("Register", estudiante);
                 }
             }
             else
             {
                 ModelState.AddModelError("usuarioInvalido",
                                          "El estudiante con la cedula " + estudiante.Cedula +
                                          " ya esta registrado en nuestro sistema.");
                 return View();
             }
         }
         else
         {
             IRepositorio<Profesor> repositorioProfesor = new ProfesorRepositorio();
             var profesor = repositorioProfesor.GetById(model.Cedula);
             if (profesor == null || profesor.Username == null)
             {
                 profesor = new Profesor { Cedula = model.Cedula };
                 IRepositorio<SlProfesor> repositorioSLProfesor = new SlProfesorRepositorio();
                 var registroProfesor = repositorioSLProfesor.GetById(profesor.Cedula);
                 if (registroProfesor != null)
                 {
                     profesor.Apellido = registroProfesor.Apellido;
                     profesor.Nombre = registroProfesor.Nombre;
                     return View("RegisterProfesor", profesor);
                 }
             }
             else
             {
                 ModelState.AddModelError("usuarioInvalido",
                                          "El profesor con la cedula " + model.Cedula +
                                          " ya esta registrado en nuestro sistema.");
                 return View();
             }
         }
     }
     ModelState.AddModelError("usuarioInvalido", "Debes escribir un numero de cedula valido");
     return View();
 }
コード例 #4
0
 public ActionResult ConfigurationProfesor(Profesor profesor)
 {
     foreach (var materium in profesor.Materiums)
     {
         if (materium.File != null)
         {
             var httpPostedFileBase = materium.File;
             {
                 string extension = Path.GetExtension(httpPostedFileBase.FileName);
                 if (extension != null && !extension.Contains(".doc"))
                 {
                     ModelState.AddModelError("archivos", "Solo se admiten archivos de Microsoft Word.");
                 }
                 else
                 {
                     IRepositorio<Actividad> repositorioActividad = new ActividadRepositorio();
                     var listActividades = repositorioActividad.GetAll().Where(act => act.Seccion == materium.Seccion &&
                                                                                      act.IdMateria == materium.IdMateria &&
                                                                                      act.Periodo.CompareTo(_periodoActual) == 0 &&
                                                                                      act.Tipo.CompareTo("Evaluacion") == 0 &&
                                                                                      act.Cedula == profesor.Cedula).ToList();
                     foreach (var actividad in listActividades)
                     {
                         repositorioActividad.Delete(actividad);
                     }
                     LeerCronogramas(materium);
                     return RedirectToAction("IndexProfesor", "Home");
                 }
             }
         }
     }
     return View();
 }
コード例 #5
0
        public virtual bool Equals(Profesor obj)
        {
            if (obj == null) return false;

            if (Equals(Apellido, obj.Apellido) == false) return false;
            if (Equals(CreationDate, obj.CreationDate) == false) return false;
            if (Equals(Nombre, obj.Nombre) == false) return false;
            if (Equals(Username, obj.Username) == false) return false;
            return true;
        }