Пример #1
0
        /// <summary>
        /// Método que carga los dados de un usuario en el formulario.
        /// </summary>
        protected void cargarUsuario()
        {
            Usuario user = null;
            int contador = 0;
            _controladorSGC = new ControladorSGC();

            _sesion = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
                Response.Redirect("../Autentificacion/Login.aspx");
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                Response.SetCookie(_cookieActual);

            user = _controladorSGC.buscarUsuario(_sesion.obtenerLoginUsuario(_cookieActual), true); // Login

            // Se actualiza el contenido de la interfaz
            if (user != null)
            {
                _txtCarnet.Text = user.Carnet;
                _txtNombre.Text = user.Nombre;
                _txtPApellido.Text = user.Apellidos.Split(' ')[0];
                _txtSApellido.Text = user.Apellidos.Split(' ')[1];
                _txtTelefono.Text = user.TelefonoCasa;
                _txtCelular.Text = user.TelefonoCelular;
                _txtCorreo.Text = user.Correo;
                _txtUsuario.Text = user.UID;

                foreach (ListItem carrera in _ddlCarrera.Items)
                {
                    if (carrera.Text == user.Carrera)
                        _ddlCarrera.SelectedIndex = contador;
                    else
                        contador++;
                }

                if (user.Grupo == "Estudiante")
                    _rblUsarios.SelectedIndex = 0;
                else
                    _rblUsarios.SelectedIndex = 1;

                _lblMensaje.Visible = false;
                _imgMensaje.Visible = false;

            }
            else
            {
                _txtCarnet.Text = "";
                _txtNombre.Text = "";
                _txtPApellido.Text = "";
                _txtSApellido.Text = "";
                _txtTelefono.Text = "";
                _txtCelular.Text = "";
                _txtCorreo.Text = "";
                _txtPassword.Text = "";
                _txtCPassword.Text = "";
                _ddlCarrera.SelectedIndex = 0;

            }
        }
Пример #2
0
        //private string _valorBusqueda;

        #endregion

        #region Métodos

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                _sesion       = new Sesion();
                _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
                if (_cookieActual == null)                              // Si la cookie expira redirecciona a la pantalla de Login
                {
                    Response.Redirect("../Autentificacion/Login.aspx"); //
                }
                else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                {
                    Response.SetCookie(_cookieActual);
                }
                _controladorSGC = new ControladorSGC();
                String grupoUsuario = _sesion.obtenerGrupoUsuario(_cookieActual);
                if ((grupoUsuario.Equals("prof")) || (grupoUsuario.Equals("users")) || (grupoUsuario.Equals("ests")) ||
                    (grupoUsuario.Equals("jefes")) || (grupoUsuario.Equals("operadores")))     // Reportar si un usuario autenticado intenta hacer ingreso a una página que no tiene permiso
                {
                    Notificacion notificacion = new Notificacion();
                    notificacion.enviarCorreo("Se ha intentado realizar un acceso no permitido por parte del usuario " + _sesion.obtenerLoginUsuario(_cookieActual) + " a la página de CrearCuenta.aspx", "*****@*****.**", "Violación de Seguridad");
                    Response.Redirect("../Compartido/AccesoDenegado.aspx");
                }
                _listaCarrera = _controladorSGC.obtenerCarreras();
                if ((_listaCarrera != null) && (_listaCarrera.Count != 0))
                {
                    _ddlCarrera.Items.Add("Seleccionar");
                    for (int i = 0; i < _listaCarrera.Count; i++)
                    {
                        _ddlCarrera.Items.Add(_listaCarrera.ElementAt(i).ElementAt(1).ToString());
                    }
                }
                else if (_listaCarrera == null)
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text     = "Hubo un error al obtener los datos de las carreras en el sistema";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                }
                else
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensaje.Text     = "No hay carreras registradas en el sistema";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                }
            }
        }
Пример #3
0
        /*protected void _axAsyncFileUpload_UploadedComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
         * {
         *      HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('La imagen se ha subido con éxito')</SCRIPT>");
         * }
         *
         * protected void _axAsyncFileUpload_UploadedFileError(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
         * {
         *      HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('Ha habido un error al subir la imagen')</SCRIPT>");
         * }*/

        protected void _btnSugerir_Click(object sender, EventArgs e)
        {
            _sesion       = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
            {
                Response.Redirect("../Autentificacion/Login.aspx");
            }
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
            {
                Response.SetCookie(_cookieActual);
            }
            if ((!_txtNombre.Text.Equals("")) && (!_txtPApellido.Text.Equals(""))) // Revisar que se haya ingresado los datos del nombre de la persona
            {
                _controladorSGC = new ControladorSGC();
                String nuevoLogin = _controladorSGC.buscarNombreUsuario(_txtNombre.Text, _txtPApellido.Text); // Buscar el login del nuevo usuario
                if ((nuevoLogin != null) && (!nuevoLogin.Equals("")))                                         // Si no hubo inconvenientes se presenta en interfaz el nuevo login
                {
                    _txtUsuario.Text    = nuevoLogin;
                    _imgMensaje.Visible = false;
                    _lblMensaje.Visible = false;
                }
                else if (nuevoLogin.Equals(""))
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensaje.Text     = "No hay ninguna combinación posible para el nombre de usuario";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                }
                else
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text     = "Se ha producido un error al tratar de obtener un nombre de usuario";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                }
            }
            else
            {
                _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensaje.Text     = "Antes de sugerir un usuario se debe especificar el nombre y apellidos de la persona";
                _imgMensaje.Visible  = true;
                _lblMensaje.Visible  = true;
            }
        }
Пример #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                try
                {
                    _controladorSGC = new ControladorSGC();
                    _listaCarrera   = _controladorSGC.obtenerCarreras();

                    if ((_listaCarrera != null) && (_listaCarrera.Count != 0))
                    {
                        _ddlCarrera.Items.Add("Seleccionar");
                        for (int i = 0; i < _listaCarrera.Count; i++)
                        {
                            _ddlCarrera.Items.Add(_listaCarrera.ElementAt(i).ElementAt(1).ToString());
                        }
                    }
                    else if (_listaCarrera == null)
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                        _lblMensaje.Text     = "Hubo un error al obtener los datos de las carreras en el sistema";
                        _imgMensaje.Visible  = true;
                        _lblMensaje.Visible  = true;
                    }
                    else
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text     = "No hay carreras registradas en el sistema";
                        _imgMensaje.Visible  = true;
                        _lblMensaje.Visible  = true;
                    }
                }
                catch (Exception ex)
                {
                    _controladorSGC.insertarBitacoraError(ex.ToString(), "");
                }
            }


            //Cargar los datos del usuario.
            cargarUsuario();
            _txtPassword.Enabled  = true;
            _txtCPassword.Enabled = true;
        }
Пример #5
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         _sesion = new Sesion();
         _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
         if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
             Response.Redirect("../Autentificacion/Login.aspx"); //
         else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
             Response.SetCookie(_cookieActual);
         _controladorSGC = new ControladorSGC();
         String grupoUsuario = _sesion.obtenerGrupoUsuario(_cookieActual);
         if ((grupoUsuario.Equals("prof")) || (grupoUsuario.Equals("users")) || (grupoUsuario.Equals("ests")) ||
                 (grupoUsuario.Equals("jefes")) || (grupoUsuario.Equals("operadores"))) // Reportar si un usuario autenticado intenta hacer ingreso a una página que no tiene permiso
         {
             Notificacion notificacion = new Notificacion();
             notificacion.enviarCorreo("Se ha intentado realizar un acceso no permitido por parte del usuario " + _sesion.obtenerLoginUsuario(_cookieActual) + " a la página de CrearCuenta.aspx", "*****@*****.**", "Violación de Seguridad");
             Response.Redirect("../Compartido/AccesoDenegado.aspx");
         }
         _listaCarrera = _controladorSGC.obtenerCarreras();
         if ((_listaCarrera != null) && (_listaCarrera.Count != 0))
         {
             _ddlCarrera.Items.Add("Seleccionar");
             for (int i = 0; i < _listaCarrera.Count; i++)
                 _ddlCarrera.Items.Add(_listaCarrera.ElementAt(i).ElementAt(1).ToString());
         }
         else if (_listaCarrera == null)
         {
             _imgMensaje.ImageUrl = "../Imagenes/Error.png";
             _lblMensaje.Text = "Hubo un error al obtener los datos de las carreras en el sistema";
             _imgMensaje.Visible = true;
             _lblMensaje.Visible = true;
         }
         else
         {
             _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
             _lblMensaje.Text = "No hay carreras registradas en el sistema";
             _imgMensaje.Visible = true;
             _lblMensaje.Visible = true;
         }
     }
 }
Пример #6
0
        protected void _btnGuardar_Click(object sender, EventArgs e)
        {
            _sesion = new Sesion();
            Boolean changePass = false;

            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
            {
                Response.Redirect("../Autentificacion/Login.aspx");
            }
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
            {
                Response.SetCookie(_cookieActual);
            }
            // Verificar que los campos del formulario estén llenos
            if ((!_txtCarnet.Text.Equals("")) && (!_txtNombre.Text.Equals("")) && (!_txtPApellido.Text.Equals("")) && (!_txtSApellido.Text.Equals("")) &&
                (!_txtTelefono.Text.Equals("")) && (!_txtCelular.Text.Equals("")) && (!_txtCorreo.Text.Equals("")) && (_ddlCarrera.SelectedIndex != 0))
            {
                if (_txtPassword.Text != String.Empty)
                {
                    if (!Regex.IsMatch(_txtPassword.Text, @"^[a-zA-Z0-9]+$")) // Para verificar que la contraseña solo contenga números y letras
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text     = "La contraseña solo puede contener números y letras";
                        _imgMensaje.Visible  = true;
                        _lblMensaje.Visible  = true;
                        return;
                    }
                    if (_txtPassword.Text.Length < 12) // EL password sea de mínimo 12 caracteres
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text     = "La contraseña debe tener un mínimo de 12 caracteres";
                        _imgMensaje.Visible  = true;
                        _lblMensaje.Visible  = true;
                        return;
                    }
                    //String path = "../Graficos/" + _axAsyncFileUpload.FileName;
                    //_axAsyncFileUpload.SaveAs(path); // Donde va a salvar el archivo
                    if (!_txtPassword.Text.Equals(_txtCPassword.Text))  // Verifica si las contraseñas son iguales
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text     = "Las contraseñas no concuerdan";
                        _imgMensaje.Visible  = true;
                        _lblMensaje.Visible  = true;
                        return;
                    }
                    changePass = true;
                }

                int resultado;
                _controladorSGC = new ControladorSGC();
                List <string> datosUsuario = new List <string>();
                datosUsuario.Add(_txtNombre.Text);
                datosUsuario.Add(_txtPApellido.Text);
                datosUsuario.Add(_txtSApellido.Text);
                datosUsuario.Add(_txtCarnet.Text);
                datosUsuario.Add(_txtTelefono.Text);
                datosUsuario.Add(_txtCelular.Text);
                datosUsuario.Add(_txtValor.Text);
                datosUsuario.Add(_txtPassword.Text);
                datosUsuario.Add(_txtCorreo.Text);
                datosUsuario.Add(_ddlCarrera.SelectedValue);
                datosUsuario.Add(_rblUsarios.SelectedValue);
                byte[] imagen = cargarImagen();
                //String nombreArchivo = System.IO.Path.GetFileName(_txtCargarFoto.PostedFile.FileName); // Obtener el nombre del archivo
                if (_ddlCriterio.SelectedIndex == 1)
                {
                    resultado = _controladorSGC.modificarUsuario(datosUsuario, true, imagen, changePass);
                }
                else
                {
                    resultado = _controladorSGC.modificarUsuario(datosUsuario, false, imagen, changePass);
                }
                switch (resultado)
                {
                case 1:
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text     = "Se ha producido un error al crear la cuenta en el LDAP";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                    break;

                case 2:
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text     = "La cuenta fue modifica en el LDAP y Active Directory pero no en la base del Sistema";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                    break;

                case 3:
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text     = "La cuenta fue modificada en el LDAP pero no en Active Directory";
                    _imgMensaje.Visible  = true;
                    _lblMensaje.Visible  = true;
                    break;

                case 4:
                    //_btnConsultar_Click(sender, e);
                    _btnCancelar_Click(sender, e);
                    _ddlCarrera.SelectedIndex = 1;
                    _imgMensaje.ImageUrl      = "../Imagenes/ok.png";
                    _lblMensaje.Text          = "La cuenta ha sido modificada con éxito";
                    _imgMensaje.Visible       = true;
                    _lblMensaje.Visible       = true;
                    break;
                }
            }

            else
            {
                _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensaje.Text     = "Debe completar todos los campos del formulario";
                _imgMensaje.Visible  = true;
                _lblMensaje.Visible  = true;
            }
        }
Пример #7
0
        /// <summary>
        /// Método que se encarga de cargar una imagen en memoria cargada en el componente Input para carga de archivos
        /// </summary>
        /// <returns>Retorna uan arreglo de bytes con la imagen</returns>

        protected void _btnConsultar_Click(object sender, EventArgs e)
        {
            Usuario user     = null;
            int     contador = 0;

            _controladorSGC             = new ControladorSGC();
            _imgMensajeBusqueda.Visible = false;
            _lblMensajeBusqueda.Visible = false;

            _sesion       = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
            {
                Response.Redirect("../Autentificacion/Login.aspx");
            }
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
            {
                Response.SetCookie(_cookieActual);
            }

            // Verificar que se haya selecionado un criterio de búsqueda
            if (_ddlCriterio.SelectedIndex == 0)
            { //
                _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensajeBusqueda.Text     = "Debe seleccionar un criterio de búsqueda";
                _imgMensajeBusqueda.Visible  = true;
                _lblMensajeBusqueda.Visible  = true;
                return;
            }
            if (_ddlCriterio.SelectedIndex == 3) //si el criterio seleccionado es por rango de fechas
            {
                // Verificar que los campos de la busqueda estén llenos
                if ((_txtValor2.Text.Equals("")) || (_txtValor3.Text.Equals("")))
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensajeBusqueda.Text     = "Debe ingresar fechas para la busqueda";
                    _imgMensajeBusqueda.Visible  = true;
                    _lblMensajeBusqueda.Visible  = true;
                    return;
                }
                else
                {
                    DateTime fechaInicial = DateTime.ParseExact(_txtValor2.Text, "dd/MM/yyyy", null);
                    DateTime fechaFinal   = DateTime.ParseExact(_txtValor3.Text, "dd/MM/yyyy", null);
                    try
                    {
                        List <List <string> > contenido = _controladorSGC.crearArchivoUsuariosPorFecha(fechaInicial, fechaFinal);

                        string nombreArchivo = "Cuentas entre " + fechaInicial.Date.Day.ToString() + "-" + fechaInicial.Month.ToString() + "-" + fechaInicial.Year.ToString() + " y " + fechaFinal.Day.ToString() + "-" + fechaFinal.Month.ToString() + "-" + fechaFinal.Year.ToString();

                        ReporteExcel report = new ReporteExcel();

                        SpreadsheetGear.IWorkbook workbook = report.generarReporte(nombreArchivo, new List <string> {
                            "Login", "Carrera", "Fecha de Creación"
                        }, contenido);

                        Thread STAThread = new Thread(() =>
                        {
                            // Stream the Excel spreadsheet to the client in a format
                            // compatible with Excel 97/2000/XP/2003/2007/2010.
                            Response.Clear();
                            Response.ContentType = "application/vnd.ms-excel";
                            Response.AddHeader("Content-Disposition", "attachment; filename=" + nombreArchivo + ".xls");
                            workbook.SaveToStream(Response.OutputStream, SpreadsheetGear.FileFormat.Excel8);
                            Response.End();
                        });

                        STAThread.SetApartmentState(ApartmentState.STA);
                        STAThread.Start();
                        STAThread.Join();
                    }
                    catch (Exception ex)
                    {
                        _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensajeBusqueda.Text     = ex.Message;
                        _imgMensajeBusqueda.Visible  = true;
                        _lblMensajeBusqueda.Visible  = true;
                    }
                }
            }
            else
            {
                // Verificar que los campos de la busqueda estén llenos
                if (_txtValor.Text.Equals(""))
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensajeBusqueda.Text     = "Debe ingresar algún valor para la busqueda";
                    _imgMensajeBusqueda.Visible  = true;
                    _lblMensajeBusqueda.Visible  = true;
                    return;
                }
                // El criterio seleccionado es "Login"
                if (_ddlCriterio.SelectedIndex == 1)
                {
                    user = _controladorSGC.buscarUsuario(_txtValor.Text, true); // Login
                }
                if (_ddlCriterio.SelectedIndex == 2)
                {
                    user = _controladorSGC.buscarUsuario(_txtValor.Text, false); //Carnet
                    _lblUsuario.Visible = true;
                    _txtUsuario.Visible = true;
                }


                // Se actualiza el contenido de la interfaz
                if (user != null)
                {
                    _txtCarnet.Text    = user.Carnet;
                    _txtNombre.Text    = user.Nombre;
                    _txtPApellido.Text = user.Apellidos.Split(' ')[0];
                    _txtSApellido.Text = user.Apellidos.Split(' ')[1];
                    _txtTelefono.Text  = user.TelefonoCasa;
                    _txtCelular.Text   = user.TelefonoCelular;
                    _txtCorreo.Text    = user.Correo;
                    _txtUsuario.Text   = user.UID;

                    foreach (ListItem carrera in _ddlCarrera.Items)
                    {
                        if (carrera.Text == user.Carrera)
                        {
                            _ddlCarrera.SelectedIndex = contador;
                        }
                        else
                        {
                            contador++;
                        }
                    }

                    if (user.Grupo == "Estudiante")
                    {
                        _rblUsarios.SelectedIndex = 0;
                    }
                    else
                    {
                        _rblUsarios.SelectedIndex = 1;
                    }


                    _imgMensajeBusqueda.Visible = false;
                    _lblMensajeBusqueda.Visible = false;
                    _bntModificar.Enabled       = true;
                    _lblMensaje.Visible         = false;
                    _imgMensaje.Visible         = false;

                    _upConsultaUsuario.Update();
                }
                else
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Error.png";
                    _lblMensajeBusqueda.Text     = "Usuario no encontrado";
                    _imgMensajeBusqueda.Visible  = true;
                    _lblMensajeBusqueda.Visible  = true;

                    _txtCarnet.Text           = "";
                    _txtNombre.Text           = "";
                    _txtPApellido.Text        = "";
                    _txtSApellido.Text        = "";
                    _txtTelefono.Text         = "";
                    _txtCelular.Text          = "";
                    _txtCorreo.Text           = "";
                    _txtPassword.Text         = "";
                    _txtCPassword.Text        = "";
                    _ddlCarrera.SelectedIndex = 0;
                    //if(_rblUsarios.SelectedItem.Selected)
                    //      _rblUsarios.SelectedItem.Selected = false;
                    _bntModificar.Enabled = false;
                }
            }
        }
Пример #8
0
        /// <summary>
        /// Método que carga los dados de un usuario en el formulario.
        /// </summary>

        protected void cargarUsuario()
        {
            Usuario user     = null;
            int     contador = 0;

            _controladorSGC = new ControladorSGC();

            _sesion       = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null)             // Si la cookie expira redirecciona a la pantalla de Login
            {
                Response.Redirect("../Autentificacion/Login.aspx");
            }
            else             // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
            {
                Response.SetCookie(_cookieActual);
            }


            user = _controladorSGC.buscarUsuario(_sesion.obtenerLoginUsuario(_cookieActual), true);             // Login

            // Se actualiza el contenido de la interfaz
            if (user != null)
            {
                _txtCarnet.Text    = user.Carnet;
                _txtNombre.Text    = user.Nombre;
                _txtPApellido.Text = user.Apellidos.Split(' ')[0];
                _txtSApellido.Text = user.Apellidos.Split(' ')[1];
                _txtTelefono.Text  = user.TelefonoCasa;
                _txtCelular.Text   = user.TelefonoCelular;
                _txtCorreo.Text    = user.Correo;
                _txtUsuario.Text   = user.UID;

                foreach (ListItem carrera in _ddlCarrera.Items)
                {
                    if (carrera.Text == user.Carrera)
                    {
                        _ddlCarrera.SelectedIndex = contador;
                    }
                    else
                    {
                        contador++;
                    }
                }

                if (user.Grupo == "Estudiante")
                {
                    _rblUsarios.SelectedIndex = 0;
                }
                else
                {
                    _rblUsarios.SelectedIndex = 1;
                }


                _lblMensaje.Visible = false;
                _imgMensaje.Visible = false;
            }
            else
            {
                _txtCarnet.Text           = "";
                _txtNombre.Text           = "";
                _txtPApellido.Text        = "";
                _txtSApellido.Text        = "";
                _txtTelefono.Text         = "";
                _txtCelular.Text          = "";
                _txtCorreo.Text           = "";
                _txtPassword.Text         = "";
                _txtCPassword.Text        = "";
                _ddlCarrera.SelectedIndex = 0;
            }
        }
Пример #9
0
        /*protected void _axAsyncFileUpload_UploadedComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
        {
            HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('La imagen se ha subido con éxito')</SCRIPT>");
        }

        protected void _axAsyncFileUpload_UploadedFileError(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
        {
            HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('Ha habido un error al subir la imagen')</SCRIPT>");
        }*/
        protected void _btnSugerir_Click(object sender, EventArgs e)
        {
            _sesion = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
                Response.Redirect("../Autentificacion/Login.aspx");
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                Response.SetCookie(_cookieActual);
            if ((!_txtNombre.Text.Equals("")) && (!_txtPApellido.Text.Equals(""))) // Revisar que se haya ingresado los datos del nombre de la persona
            {
                _controladorSGC = new ControladorSGC();
                String nuevoLogin = _controladorSGC.buscarNombreUsuario(_txtNombre.Text, _txtPApellido.Text); // Buscar el login del nuevo usuario
                if ((nuevoLogin != null) && (!nuevoLogin.Equals(""))) // Sino hubo inconvenientes se presenta en interfaz el nuevo login
                    _txtUsuario.Text = nuevoLogin;
                else if (nuevoLogin.Equals(""))
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensaje.Text = "No hay ninguna combinación posible para el nombre de usuario";
                    _imgMensaje.Visible = true;
                    _lblMensaje.Visible = true;
                }
                else
                {
                    _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                    _lblMensaje.Text = "Se ha producido un error al tratar de obtener un nombre de usuario";
                    _imgMensaje.Visible = true;
                    _lblMensaje.Visible = true;
                }
            }
            else
            {
                _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensaje.Text = "Antes de sugerir un usuario se debe especificar el nombre y apellidos de la persona";
                _imgMensaje.Visible = true;
                _lblMensaje.Visible = true;
            }
        }
Пример #10
0
        protected void _btnGuardar_Click(object sender, EventArgs e)
        {
            _sesion = new Sesion();
            Boolean changePass = false;
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
                Response.Redirect("../Autentificacion/Login.aspx");
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                Response.SetCookie(_cookieActual);
            // Verificar que los campos del formulario estén llenos
            if ((!_txtCarnet.Text.Equals("")) && (!_txtNombre.Text.Equals("")) && (!_txtPApellido.Text.Equals("")) && (!_txtSApellido.Text.Equals("")) &&
                (!_txtTelefono.Text.Equals("")) && (!_txtCelular.Text.Equals("")) && (!_txtCorreo.Text.Equals("")) && (_ddlCarrera.SelectedIndex != 0))
            {

                if (_txtPassword.Text != String.Empty)
                {
                    if (!Regex.IsMatch(_txtPassword.Text, @"^[a-zA-Z0-9]+$")) // Para verificar que la contraseña solo contenga números y letras
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text = "La contraseña solo puede contener números y letras";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        return;
                    }
                    if (_txtPassword.Text.Length < 12) // EL password sea de mínimo 12 caracteres
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text = "La contraseña debe tener un mínimo de 12 caracteres";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        return;
                    }
                    //String path = "../Graficos/" + _axAsyncFileUpload.FileName;
                    //_axAsyncFileUpload.SaveAs(path); // Donde va a salvar el archivo
                    if (!_txtPassword.Text.Equals(_txtCPassword.Text))  // Verifica si las contraseñas son iguales
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text = "Las contraseñas no concuerdan";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        return;
                    }
                    changePass = true;

                }

                int resultado;
                _controladorSGC = new ControladorSGC();
                List<string> datosUsuario = new List<string>();
                datosUsuario.Add(_txtNombre.Text);
                datosUsuario.Add(_txtPApellido.Text);
                datosUsuario.Add(_txtSApellido.Text);
                datosUsuario.Add(_txtCarnet.Text);
                datosUsuario.Add(_txtTelefono.Text);
                datosUsuario.Add(_txtCelular.Text);
                datosUsuario.Add(_txtValor.Text);
                datosUsuario.Add(_txtPassword.Text);
                datosUsuario.Add(_txtCorreo.Text);
                datosUsuario.Add(_ddlCarrera.SelectedValue);
                datosUsuario.Add(_rblUsarios.SelectedValue);
                byte[] imagen = cargarImagen();
                //String nombreArchivo = System.IO.Path.GetFileName(_txtCargarFoto.PostedFile.FileName); // Obtener el nombre del archivo
                if (_ddlCriterio.SelectedIndex == 1)
                    resultado = _controladorSGC.modificarUsuario(datosUsuario, true, imagen, changePass);
                else
                    resultado = _controladorSGC.modificarUsuario(datosUsuario, false, imagen, changePass);
                switch (resultado)
                {
                    case 1:
                        _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                        _lblMensaje.Text = "Se ha producido un error al crear la cuenta en el LDAP";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        break;
                    case 2:
                        _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                        _lblMensaje.Text = "La cuenta fue modifica en el LDAP y Active Directory pero no en la base del Sistema";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        break;
                    case 3:
                        _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                        _lblMensaje.Text = "La cuenta fue modificada en el LDAP pero no en Active Directory";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        break;
                    case 4:
                        //_btnConsultar_Click(sender, e);
                        _btnCancelar_Click(sender, e);
                        _ddlCarrera.SelectedIndex = 1;
                        _imgMensaje.ImageUrl = "../Imagenes/ok.png";
                        _lblMensaje.Text = "La cuenta ha sido modificada con éxito";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                        break;
                }
            }

            else
            {
                _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensaje.Text = "Debe completar todos los campos del formulario";
                _imgMensaje.Visible = true;
                _lblMensaje.Visible = true;
            }
        }
Пример #11
0
        /// <summary> 
        /// Método que se encarga de cargar una imagen en memoria cargada en el componente Input para carga de archivos
        /// </summary>   
        /// <returns>Retorna uan arreglo de bytes con la imagen</returns>
        protected void _btnConsultar_Click(object sender, EventArgs e)
        {
            Usuario user = null;
            int contador = 0;
            _controladorSGC = new ControladorSGC();
            _imgMensajeBusqueda.Visible = false;
            _lblMensajeBusqueda.Visible = false;

            _sesion = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
                Response.Redirect("../Autentificacion/Login.aspx");
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                Response.SetCookie(_cookieActual);

            // Verificar que se haya selecionado un criterio de búsqueda
            if (_ddlCriterio.SelectedIndex == 0)
            { //
                _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                _lblMensajeBusqueda.Text = "Debe seleccionar un criterio de búsqueda";
                _imgMensajeBusqueda.Visible = true;
                _lblMensajeBusqueda.Visible = true;
                return;
            }
            if (_ddlCriterio.SelectedIndex == 3) //si el criterio seleccionado es por rango de fechas
            {
                // Verificar que los campos de la busqueda estén llenos
                if ((_txtValor2.Text.Equals("")) || (_txtValor3.Text.Equals("")))
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensajeBusqueda.Text = "Debe ingresar fechas para la busqueda";
                    _imgMensajeBusqueda.Visible = true;
                    _lblMensajeBusqueda.Visible = true;
                    return;
                }
                else
                {
                    DateTime fechaInicial = DateTime.ParseExact(_txtValor2.Text, "dd/MM/yyyy", null);
                    DateTime fechaFinal = DateTime.ParseExact(_txtValor3.Text, "dd/MM/yyyy", null);
                    try
                    {
                        List<List<string>> contenido = _controladorSGC.crearArchivoUsuariosPorFecha(fechaInicial, fechaFinal);

                        string nombreArchivo = "Cuentas entre " + fechaInicial.Date.Day.ToString() + "-" + fechaInicial.Month.ToString() + "-" + fechaInicial.Year.ToString() + " y " + fechaFinal.Day.ToString() + "-" + fechaFinal.Month.ToString() + "-" + fechaFinal.Year.ToString();

                        ReporteExcel report = new ReporteExcel();

                        SpreadsheetGear.IWorkbook workbook = report.generarReporte(nombreArchivo, new List<string> { "Login", "Carrera", "Fecha de Creación" }, contenido);

                        Thread STAThread = new Thread(() =>
                        {
                            // Stream the Excel spreadsheet to the client in a format
                            // compatible with Excel 97/2000/XP/2003/2007/2010.
                            Response.Clear();
                            Response.ContentType = "application/vnd.ms-excel";
                            Response.AddHeader("Content-Disposition", "attachment; filename=" + nombreArchivo + ".xls");
                            workbook.SaveToStream(Response.OutputStream, SpreadsheetGear.FileFormat.Excel8);
                            Response.End();
                        });

                        STAThread.SetApartmentState(ApartmentState.STA);
                        STAThread.Start();
                        STAThread.Join();
                    }
                    catch (Exception ex)
                    {
                        _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensajeBusqueda.Text = ex.Message;
                        _imgMensajeBusqueda.Visible = true;
                        _lblMensajeBusqueda.Visible = true;
                    }
                }
            }
            else
            {
                // Verificar que los campos de la busqueda estén llenos
                if (_txtValor.Text.Equals(""))
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Advertencia.png";
                    _lblMensajeBusqueda.Text = "Debe ingresar algún valor para la busqueda";
                    _imgMensajeBusqueda.Visible = true;
                    _lblMensajeBusqueda.Visible = true;
                    return;
                }
                // El criterio seleccionado es "Login"
                if (_ddlCriterio.SelectedIndex == 1)
                    user = _controladorSGC.buscarUsuario(_txtValor.Text, true); // Login

                if (_ddlCriterio.SelectedIndex == 2)
                {
                    user = _controladorSGC.buscarUsuario(_txtValor.Text, false); //Carnet
                    _lblUsuario.Visible = true;
                    _txtUsuario.Visible = true;
                }

                // Se actualiza el contenido de la interfaz
                if (user != null)
                {
                    _txtCarnet.Text = user.Carnet;
                    _txtNombre.Text = user.Nombre;
                    _txtPApellido.Text = user.Apellidos.Split(' ')[0];
                    _txtSApellido.Text = user.Apellidos.Split(' ')[1];
                    _txtTelefono.Text = user.TelefonoCasa;
                    _txtCelular.Text = user.TelefonoCelular;
                    _txtCorreo.Text = user.Correo;
                    _txtUsuario.Text = user.UID;

                    foreach (ListItem carrera in _ddlCarrera.Items)
                    {
                        if (carrera.Text == user.Carrera)
                            _ddlCarrera.SelectedIndex = contador;
                        else
                            contador++;
                    }

                    if (user.Grupo == "Estudiante")
                        _rblUsarios.SelectedIndex = 0;
                    else
                        _rblUsarios.SelectedIndex = 1;

                    _imgMensajeBusqueda.Visible = false;
                    _lblMensajeBusqueda.Visible = false;
                    _bntModificar.Enabled = true;
                    _lblMensaje.Visible = false;
                    _imgMensaje.Visible = false;

                    _upConsultaUsuario.Update();

                }
                else
                {
                    _imgMensajeBusqueda.ImageUrl = "../Imagenes/Error.png";
                    _lblMensajeBusqueda.Text = "Usuario no encontrado";
                    _imgMensajeBusqueda.Visible = true;
                    _lblMensajeBusqueda.Visible = true;

                    _txtCarnet.Text = "";
                    _txtNombre.Text = "";
                    _txtPApellido.Text = "";
                    _txtSApellido.Text = "";
                    _txtTelefono.Text = "";
                    _txtCelular.Text = "";
                    _txtCorreo.Text = "";
                    _txtPassword.Text = "";
                    _txtCPassword.Text = "";
                    _ddlCarrera.SelectedIndex = 0;
                    //if(_rblUsarios.SelectedItem.Selected)
                    //      _rblUsarios.SelectedItem.Selected = false;
                    _bntModificar.Enabled = false;
                }
            }
        }
Пример #12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                try
                {
                    _controladorSGC = new ControladorSGC();
                    _listaCarrera = _controladorSGC.obtenerCarreras();

                    if ((_listaCarrera != null) && (_listaCarrera.Count != 0))
                    {
                        _ddlCarrera.Items.Add("Seleccionar");
                        for (int i = 0; i < _listaCarrera.Count; i++)
                            _ddlCarrera.Items.Add(_listaCarrera.ElementAt(i).ElementAt(1).ToString());
                    }
                    else if (_listaCarrera == null)
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Error.png";
                        _lblMensaje.Text = "Hubo un error al obtener los datos de las carreras en el sistema";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                    }
                    else
                    {
                        _imgMensaje.ImageUrl = "../Imagenes/Advertencia.png";
                        _lblMensaje.Text = "No hay carreras registradas en el sistema";
                        _imgMensaje.Visible = true;
                        _lblMensaje.Visible = true;
                    }
                }
                catch (Exception ex)
                {
                    _controladorSGC.insertarBitacoraError(ex.ToString(), "");
                }

            }

            //Cargar los datos del usuario.
            cargarUsuario();
            _txtPassword.Enabled = true;
            _txtCPassword.Enabled = true;
        }
Пример #13
0
        protected void _btnGenerar_Click(object sender, EventArgs e)
        {
            _sesion = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null) // Si la cookie expira redirecciona a la pantalla de Login
                Response.Redirect("../Autentificacion/Login.aspx");
            else // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
                Response.SetCookie(_cookieActual);
            _controladorSGC = new ControladorSGC();

            String savePath = @"\Excel\";
            String nombreExcel = DateTime.Now.ToString("ddMMyyyy_HHmmss");

            string strFileType = System.IO.Path.GetExtension(_fluExcel.FileName).ToString().ToLower();

            if (_fluExcel.HasFile)
            {
                try
                {
                    if (strFileType == ".xls" || strFileType == ".xlsx")
                    {
                        _fluExcel.SaveAs(Server.MapPath(savePath + nombreExcel + strFileType));
                    }
                    else
                    {
                        _lblMensajeUpload.Text = "Solo son permitidos archivos de Excel.";
                        _lblMensajeUpload.Visible = true;
                        return;
                    }

                    string strNewPath = Server.MapPath(savePath + nombreExcel + strFileType);

                    //Se llama al mètodo que procesa el archivo de Excel y se retornan los errores.
                    List<ErroresExcel> errores = _controladorSGC.validarDatosExcel(savePath, nombreExcel, strFileType, strNewPath);

                    //Si hay errores se muestran al usuario.
                    if (errores.Count != 0)
                    {
                        string _msjErrores = "";
                        foreach (ErroresExcel er in errores)
                        {
                            //Se crea un solo string con los mensajes.
                            _msjErrores = _msjErrores + "Fila: " + er.linea + " dato: " + er.dato + " error: " + er.mensaje + "\n";
                        }
                        _taErrores.InnerText = _msjErrores;
                        _taErrores.Visible = true;
                    }
                    //De lo contrario se procesan los datos del archivo.
                    else
                    {
                        List<string> _estados = new List<string>();
                        string _mensaje = "";
                        _estados = _controladorSGC.generarCuentas();

                        foreach (string cuenta in _estados)
                        {
                            _mensaje = _mensaje + cuenta;
                        }

                        _taErrores.InnerText = _mensaje;
                        _taErrores.Visible = true;
                    }

                }
                catch (Exception ex)
                {
                    Response.Write("Error: " + ex.Message.ToString());
                }
            }
            else
            {
                Response.Write("Please select a file to upload.");
            }

            /*Excel.Application xlApp;
            Excel.Workbook xlWorkBook;
            Excel.Worksheet xlWorkSheet;
            object misValores = System.Reflection.Missing.Value;

            xlApp = new Excel.Application();
            xlWorkBook = xlApp.Workbooks.Open(_btnCargar.Value, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
            xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

            String prueba = xlWorkSheet.get_Range("A1","A1").Value2.ToString();

            xlWorkBook.Close(true, misValores, misValores);
            xlApp.Quit();

            liberarObjeto(xlWorkSheet);
            liberarObjeto(xlWorkBook);
            liberarObjeto(xlApp);*/
        }
Пример #14
0
        protected void _btnGenerar_Click(object sender, EventArgs e)
        {
            _sesion       = new Sesion();
            _cookieActual = _sesion.verificarValidez(Request.Cookies["PS"]);
            if (_cookieActual == null)             // Si la cookie expira redirecciona a la pantalla de Login
            {
                Response.Redirect("../Autentificacion/Login.aspx");
            }
            else             // Volver a crear la cookie en el cliente, con el nuevo tiempo de expiración
            {
                Response.SetCookie(_cookieActual);
            }
            _controladorSGC = new ControladorSGC();

            String savePath    = @"\Excel\";
            String nombreExcel = DateTime.Now.ToString("ddMMyyyy_HHmmss");


            string strFileType = System.IO.Path.GetExtension(_fluExcel.FileName).ToString().ToLower();

            if (_fluExcel.HasFile)
            {
                try
                {
                    if (strFileType == ".xls" || strFileType == ".xlsx")
                    {
                        _fluExcel.SaveAs(Server.MapPath(savePath + nombreExcel + strFileType));
                    }
                    else
                    {
                        _lblMensajeUpload.Text    = "Solo son permitidos archivos de Excel.";
                        _lblMensajeUpload.Visible = true;
                        return;
                    }

                    string strNewPath = Server.MapPath(savePath + nombreExcel + strFileType);

                    //Se llama al mètodo que procesa el archivo de Excel y se retornan los errores.
                    List <ErroresExcel> errores = _controladorSGC.validarDatosExcel(savePath, nombreExcel, strFileType, strNewPath);

                    //Si hay errores se muestran al usuario.
                    if (errores.Count != 0)
                    {
                        string _msjErrores = "";
                        foreach (ErroresExcel er in errores)
                        {
                            //Se crea un solo string con los mensajes.
                            _msjErrores = _msjErrores + "Fila: " + er.linea + " dato: " + er.dato + " error: " + er.mensaje + "\n";
                        }
                        _taErrores.InnerText = _msjErrores;
                        _taErrores.Visible   = true;
                    }
                    //De lo contrario se procesan los datos del archivo.
                    else
                    {
                        List <string> _estados = new List <string>();
                        string        _mensaje = "";
                        _estados = _controladorSGC.generarCuentas();

                        foreach (string cuenta in _estados)
                        {
                            _mensaje = _mensaje + cuenta;
                        }

                        _taErrores.InnerText = _mensaje;
                        _taErrores.Visible   = true;
                    }
                }
                catch (Exception ex)
                {
                    Response.Write("Error: " + ex.Message.ToString());
                }
            }
            else
            {
                Response.Write("Please select a file to upload.");
            }


            /*Excel.Application xlApp;
             * Excel.Workbook xlWorkBook;
             * Excel.Worksheet xlWorkSheet;
             * object misValores = System.Reflection.Missing.Value;
             *
             * xlApp = new Excel.Application();
             * xlWorkBook = xlApp.Workbooks.Open(_btnCargar.Value, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
             * xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
             *
             * String prueba = xlWorkSheet.get_Range("A1","A1").Value2.ToString();
             *
             * xlWorkBook.Close(true, misValores, misValores);
             * xlApp.Quit();
             *
             * liberarObjeto(xlWorkSheet);
             * liberarObjeto(xlWorkBook);
             * liberarObjeto(xlApp);*/
        }