/*
         * Esta funcion esta conectada al boton de iniciar sesion
         */
        protected void Button_Login_Click(object sender, EventArgs e)
        {
            UserNotVerifiedError_Login.Visible       =
                WrongPasswordError_Login.Visible     =
                    UserNotExistsError_Login.Visible = false;                     //Reiniciamos los errores para que si a la proxima le salen bien no les vuelva a salir
            User_EN busqueda = new User_EN();
            User_EN usuario  = busqueda.BuscarUsuario(username_login_input.Text); //Buscamos el usuario que introducimos para iniciar sesion

            if (usuario != null)
            {
                if (usuario.Contraseña == password_login_input.Text)
                {
                    if (usuario.Verified)
                    {
                        Session["user_session_data"] = usuario;      //Creamos una sesion del usuario
                        Response.Redirect("~/ArchivosUsuario.aspx"); //Vamos a la pagina de nuestros archivos
                    }
                    else
                    {
                        UserNotVerifiedError_Login.Visible = true;
                    }
                }
                else
                {
                    WrongPasswordError_Login.Visible = true;
                }
            }
            else
            {
                UserNotExistsError_Login.Visible = true;
            }
        }
Example #2
0
        /* Una vez el usuario ha rellenado todos los campos solicitados en el apartado del registro
         * correctamente, es decir, el email tiene formato de email, las contraseñas coinciden...proceemos a
         * guardar el usuario en la base de datos
         */
        protected void Button_Register_Click(object sender, EventArgs e)
        {
            EmailExistsError_Register.Visible        =
                UsernameExistsError_Register.Visible = false; //Reiniciamos los errores para que si a la proxima le salen bien no les vuelva a salir
            User_EN busqueda = new User_EN();

            if (busqueda.BuscarUsuario(user_name_register.Text) == null)  //Comprobamos que ese nombre de usuario ya este
            {
                if (busqueda.BuscarUsuario(correo_register.Text) == null) //Comprobamos que ese correo ya este
                {
                    User_EN en = new User_EN();                           //Si lo cumple todo, creamos un nuevo usuario
                    en.NombreUsu  = user_name_register.Text;              //Con su nombre de usuario
                    en.Correo     = correo_register.Text;                 //Con su correo
                    en.Contraseña = password_register1.Text;              //Con su contrasenya
                    en.InsertarUsuario();                                 //Llamamos a InsertarUsuario de la cap EN, que se encaragra de insertarlo
                    EnviarCorreoConfirmacion();                           //Esto enviara un correo de confirmaacion al usuario
                }
                else
                {
                    EmailExistsError_Register.Visible = true;
                }
            }
            else
            {
                UsernameExistsError_Register.Visible = true;
            }
        }
Example #3
0
        /**
         * Recibe un nombre de usuario o un correo electrónico y devuelve los datos del usuario al que pertenecen.
         * En caso de que no exista tal usuario/correo, devuelve NULL
         */
        public User_EN BuscarUser(string busqueda)
        {
            User_EN       usuario        = null;
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);

            try
            {
                nueva_conexion.Open();
                string        select = "Select * from Users where username ='******' or email = '" + busqueda + "'";
                SqlCommand    com    = new SqlCommand(select, nueva_conexion);
                SqlDataReader dr     = com.ExecuteReader();
                if (dr.Read()) //Teóricamente solo debe de devolver una sola fila debido a que tanto el usuario como el email son claves alternativas (no nulos y no repetidos)
                {
                    usuario                    = new User_EN();
                    usuario.ID                 = Convert.ToInt16(dr["ID"]);
                    usuario.Correo             = dr["email"].ToString();
                    usuario.Nombre             = dr["nombre"].ToString();
                    usuario.NombreUsu          = dr["username"].ToString();
                    usuario.Contraseña         = dr["password"].ToString();
                    usuario.Edad               = Convert.ToInt16(dr["age"]);
                    usuario.Localidad          = dr["locality"].ToString();
                    usuario.Visibilidad_perfil = Convert.ToBoolean(dr["profile_visibility"]);
                    usuario.Verified           = Convert.ToBoolean(dr["verified"]);
                }
                dr.Close();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }

            return(usuario);
        }
        /*
         * Esta función sirve para controlar los datos de la tabla y poder acceder
         * a los datos de los archivos para ser descargados o borrados
         */
        protected void GridViewMostrarArchivos_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                HyperLink Texto_Descarga = (HyperLink)e.Row.FindControl("Descarga");                             //Creamos el link para la descargar
                HyperLink Texto_Borra    = (HyperLink)e.Row.FindControl("Borra");                                //Creamos el link para borrar el archivo
                User_EN   en             = (User_EN)Session["user_session_data"];
                string    rutaArchivo    = "Files/" + en.ID + "/" + HttpUtility.HtmlDecode(e.Row.Cells[2].Text); /*Guardamos la ruta del archivo
                                                                                                                  * utilizando HttpUtility.HtmlDecode  que sirve para decodificar carácteres especiales (&, ñ, etc.)*/
                string idArchivo         = e.Row.Cells[1].Text;                                                  //Guardamos el id del archivo

                /*
                 * Así buscamos y encontramos un icono de miniatura para el fichero en función de la extensión del archivo
                 */
                Image  icono            = (Image)e.Row.FindControl("icono_fichero");
                string extensionArchivo = Path.GetExtension(rutaArchivo);
                extensionArchivo = extensionArchivo.Substring(1, extensionArchivo.Length - 1); //quitar punto (carácter 0 del string)
                string rutaIcono = Server.MapPath("/styles/format-icons/" + extensionArchivo + ".svg");
                icono.ImageUrl = File.Exists(rutaIcono) ? "~/styles/format-icons/" + extensionArchivo + ".svg" : "~/styles/format-icons/file.svg";

                Texto_Descarga.NavigateUrl = Server.MapPath(rutaArchivo); //Copiamos la ruta del archivo a la URL para descargar
                Texto_Borra.NavigateUrl    = Server.MapPath(rutaArchivo); //Lo mismo para borrar
                Texto_Borra.Text           = idArchivo;                   //Guardamos el id asociado al archivo para cuando llamemos al manejador de la funcion podamos extraerlo del objeto emisor de la señal
            }
        }
Example #5
0
        /**
         * Se encarga de mostrar el usuario que se quiere mostrar a través de su ID
         */
        public ArrayList MostrarUser(User_EN u)
        {
            SqlConnection c = new SqlConnection(Constants.nombreConexion);

            c.Open();
            SqlCommand    com = new SqlCommand("Select * from Users where ID=" + u.ID, c);
            SqlDataReader dr  = com.ExecuteReader();


            if (dr.Read())
            {
                User_EN usuario = new User_EN();
                usuario.ID                 = Convert.ToInt16(dr["ID"]);
                usuario.Correo             = dr["email"].ToString();
                usuario.Nombre             = dr["nombre"].ToString();
                usuario.NombreUsu          = dr["username"].ToString();
                usuario.Contraseña         = dr["password"].ToString();
                usuario.Edad               = Convert.ToInt16(dr["age"]);
                usuario.Genero             = Convert.ToBoolean(dr["gender"]);
                usuario.Localidad          = dr["locality"].ToString();
                usuario.Visibilidad_perfil = Convert.ToBoolean(dr["profile_visibility"]);
                usuario.Verified           = Convert.ToBoolean(dr["verified"]);
                lista.Add(usuario);
            }
            dr.Close();
            c.Close();

            return(lista);
        }
Example #6
0
        /**
         * Se encarga de actualizar el usuario si sufre alguna modificacion en alguno de sus campos
         **/

        public void actualizarUser(User_EN u)
        {
            string        genero         = "NULL";
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);

            try
            {
                nueva_conexion.Open();
                string update = "";

                if (u.Genero.Value == true)
                {
                    genero = "1";
                }
                else if (u.Genero.Value == false)
                {
                    genero = "0";
                }

                update = "Update Users set email = '" + u.Correo + "',nombre  = '" + u.Nombre + "',username = '******',password = '******',age = " + u.Edad + ",gender = " + genero + ",locality = '" + u.Localidad + "',profile_visibility = '" + u.Visibilidad_perfil + "' where Users.ID =" + u.ID;
                SqlCommand com = new SqlCommand(update, nueva_conexion);


                com.ExecuteNonQuery();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }
        }
        /*
         * Esta funcion carga los datos del usuario en los TextBox para que el usuario pueda ver sus datos personales
         */
        protected void CargarDatos(User_EN en)
        {
            Editar_Perfil_Usuario.Text    = en.NombreUsu;
            Editar_Perfil_Nombre.Text     = en.Nombre;
            Editar_Perfil_Email.Text      = en.Correo;
            Editar_Perfil_Contraseña.Text = en.Contraseña;
            Editar_Perfil_Localidad.Text  = en.Localidad;
            if (en.Edad > 0)
            {
                Editar_Perfil_Edad.Text = en.Edad.ToString();
            }
            if (en.Genero == null)
            {
                Editar_Perfil_NoMostrar.Checked = true;
            }
            else if (en.Genero.Value == true)
            {
                Editar_Perfil_Hombre.Checked = true;
            }
            else
            {
                Editar_Perfil_Mujer.Checked = true;
            }

            if (en.Visibilidad_perfil == true)
            {
                Editar_Perfil_Visibilidad_Switch.Checked = true;
                Editar_Perfil_Visibilidad_Label.Text     = "Público";
            }
            Editar_Perfil_ID.Text = en.ID.ToString();
        }
Example #8
0
        /**
         * Se encarga de mostrarnos todos los datos del usuario y contraseña que le pasamos
         **/
        public User_EN LeerUser(User_EN u)
        {
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);
            User_EN       usuario        = new User_EN();

            try
            {
                nueva_conexion.Open();
                string select = "";
                select = "Select * from Users where username ='******' and password = '******'";
                SqlCommand    com = new SqlCommand(select, nueva_conexion);
                SqlDataReader dr  = com.ExecuteReader();

                if (dr.Read())
                {
                    usuario.ID                 = Convert.ToInt16(dr["ID"]);
                    usuario.Correo             = dr["email"].ToString();
                    usuario.Nombre             = dr["nombre"].ToString();
                    usuario.NombreUsu          = dr["username"].ToString();
                    usuario.Contraseña         = dr["password"].ToString();
                    usuario.Edad               = Convert.ToInt16(dr["age"]);
                    usuario.Genero             = Convert.ToBoolean(dr["gender"]);
                    usuario.Localidad          = dr["locality"].ToString();
                    usuario.Visibilidad_perfil = Convert.ToBoolean(dr["profile_visibility"]);
                    usuario.Verified           = Convert.ToBoolean(dr["verified"]);
                }

                dr.Close();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }

            return(usuario);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Charset = "utf-8";
            User_EN user = (User_EN)Session["user_session_data"];

            if (user != null)
            {
                Link_Cerrar_Sesion.Visible = true;
                Barra_Secundaria.Visible   = false;
            }
        }
Example #10
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (Request.QueryString.Count > 0)
     {
         if (Request.QueryString.Keys[0] == "email")                  //Si efecticamente la url es correcta
         {
             User_EN en    = new User_EN();                           //Creamos un nuevo usuario
             string  email = Request.QueryString["email"].ToString(); //Gracias a la url, podemos ver el usuario que ha recargado la pagina
             en.Correo = email;                                       //Ahora que ese usuario sea el del email
             en.confirmacionUsuario();                                //Confirmacion
         }
     }
 }
        protected void Button_Buscra_Click(object sender, EventArgs e)
        {
            User_EN usuarioABuscar = new User_EN();
            User_EN usuario        = usuarioABuscar.BuscarUsuario(usuario_buscar.Text);

            if (usuario != null)
            {
                File_EN fi = new File_EN();
                fi.Propietario = usuario.ID;//Para identificar al usuario
                //EL griedView, mostrara un tabla con todos los datos que nos devuelva MostrarFilesUsuarioNombreEn
                GridViewMostrarArchivosUsuario.DataSource = fi.MostrarFilesUsuarioNombreEn();
                GridViewMostrarArchivosUsuario.DataBind();
            }
        }
Example #12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //InitInputClasses();
            User_EN en = (User_EN)Session["user_session_data"];

            if (en != null)
            {
                en.LeerUsuario();      //lee todos los datos del usuario de la base de datos, ya que la pagina solo proporciona login y password
                MostrarDirectorio(en); //Muestra todo el directorio
            }
            else
            {
                Response.Redirect("Control_Usuarios/Login.aspx");
            }
        }
Example #13
0
        /**
         * Se encarga de una vez recibido el email y darle al link, poner al que le perteneza ese usuario el verified a 1
         **/
        public void confirmacionUser(User_EN u)
        {
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);

            try
            {
                nueva_conexion.Open();
                string update = "";
                update = "Update Users set verified = '1' where Users.email = '" + u.Correo + "'";
                SqlCommand com = new SqlCommand(update, nueva_conexion);


                com.ExecuteNonQuery();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            InitInputClasses();
            User_EN en = (User_EN)Session["user_session_data"];

            if (en != null)
            {
                if (!Page.IsPostBack)
                {
                    CargarDatos(en);
                }
            }
            else
            {
                Response.Redirect("Login.aspx"); //Si no se ha iniciado sesion, no podras ver tu pefil y se redireccionara a la pagina de iniciar sesion
            }
        }
Example #15
0
        /**
         * Se encarga de borrar el usuario, si existe en la base de datos, a través de su ID
         **/
        public void BorrarUser(User_EN u)
        {
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);

            try
            {
                nueva_conexion.Open();
                string delete = "";
                delete = "Delete from Users where Users.ID = '" + u.ID;
                SqlCommand com = new SqlCommand(delete, nueva_conexion);


                com.ExecuteNonQuery();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }
        }
Example #16
0
        /**
         * Se encarga de introducir un usuario en la base de datos
         *
         */
        public void InsertarUser(User_EN u)
        {
            SqlConnection nueva_conexion = new SqlConnection(Constants.nombreConexion);

            try
            {
                nueva_conexion.Open();
                string genre  = u.Genero.HasValue ? u.Genero.Value.ToString() : "NULL";
                string insert = "insert into users(email,nombre,username,password,age,gender,locality,profile_visibility,verified) VALUES ('"
                                + u.Correo + "','" + u.Nombre + "','" + u.NombreUsu + "','" + u.Contraseña + "'," + u.Edad + "," + genre + ",'" + u.Localidad + "'," + 0 + "," + 0 + ")";
                //POR DEFECTO, VISIBILIDAD Y VERIFICACION SON FALSAS
                SqlCommand com = new SqlCommand(insert, nueva_conexion);


                com.ExecuteNonQuery();
            }
            catch (Exception ex) { ex.Message.ToString(); }
            finally { nueva_conexion.Close(); }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            // if (Request.QueryString.Count > 0)
            // {
            //     if (Request.QueryString.Keys[0] == "ID")
            User_EN en = (User_EN)Session["user_session_data"];

            if (en != null)
            {
                en.LeerUsuario();      //lee todos los datos del usuario de la base de datos, ya que la pagina solo proporciona login y password

                File_EN fi = new File_EN();
                fi.Propietario = en.ID;    //Para identificar al usuario
                //EL griedView, mostrara un tabla con todos los datos que nos devuelva MostrarFilesUsuarioNombreEn
                GridViewMostrarArchivos.DataSource = fi.MostrarFilesUsuarioNombreEn();
                GridViewMostrarArchivos.DataBind();
            }
            //}
        }
Example #18
0
        /*
         * Este método esta conectado al boton de subir archivo
         */
        protected void Button_Upload_Click(object sender, EventArgs e)
        {
            if (IsPostBack)
            {
                String path = Server.MapPath("Files/"); //Ruta donde subir el archivo (en la carpeta "Files" de nuestro proyecto)
                if (FileUpload1.HasFile)
                {
                    try
                    {
                        User_EN user = (User_EN)Session["user_session_data"];
                        if (user != null)
                        {
                            File_EN arx = new File_EN();

                            user.LeerUsuario();                                     //Leemos los datos del usuario
                            arx.Nombre      = FileUpload1.FileName;
                            arx.Propietario = user.ID;                              //El propietario del archivo sera igual al id del usuario
                            int    id         = arx.SubirArchivo();
                            string pathString = path + "/" + user.ID + "/";         //Se guardara dentro de una carpeta con el id del usuario
                            Directory.CreateDirectory(pathString);
                            FileUpload1.PostedFile.SaveAs(pathString + arx.Nombre); //Guardamos el archivo en la ruta correspondiente
                        }
                        else
                        {
                            Response.Write("Error. usuario no válido");
                        }
                    }
                    catch (Exception ex)
                    {
                        Response.Write("El archivo no se puede subir.");
                    }
                }
                else
                {
                    Response.Write("Cannot accept files of this type.");
                }
            }
        }
        /*
         * Esta funcion esta conectada al boton de guardar cambios por si el usuario quiere cambiar algun
         * dato de su perfil
         */
        protected void Editar_Perfil_Guardar_Click(object sender, EventArgs e)
        {
            if (Editar_Perfil_Visibilidad_Switch.Checked)
            {
                Response.Write("ON");
            }
            else
            {
                Response.Write("OFF");
            }

            User_EN en = new User_EN();

            en.ID                 = Convert.ToInt16(Editar_Perfil_ID.Text);
            en.NombreUsu          = Editar_Perfil_Usuario.Text;
            en.Nombre             = Editar_Perfil_Nombre.Text;
            en.Correo             = Editar_Perfil_Email.Text;
            en.Contraseña         = Editar_Perfil_Contraseña.Text;
            en.Edad               = Convert.ToInt16(Editar_Perfil_Edad.Text);
            en.Localidad          = Editar_Perfil_Localidad.Text;
            en.Visibilidad_perfil = Editar_Perfil_Visibilidad_Switch.Checked;
            if (Editar_Perfil_Hombre.Checked)
            {
                en.Genero = true;
            }
            else if (Editar_Perfil_Mujer.Checked)
            {
                en.Genero = false;
            }
            else
            {
                en.Genero = null;
            }

            en.actualizarUsuario();
        }
Example #20
0
 protected void MostrarDirectorio(User_EN en)
 {
 }