protected void btnAceptar_Click(object sender, EventArgs e)
    {
        Master.MensajeError = "";

        if (Validar())
        {
            TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
            TuCuento.Negocio.Usuario_NEG oNegocio = new TuCuento.Negocio.Usuario_NEG();
            
            oUsuario = oNegocio.ValidarUsuario(Master.sCod_Usuario, txtPswOLD.Text.Trim());

            if (oUsuario.sCod_Usuario != null)
            {
                //Actualizo la contraseña a la nueva contraseña
                oUsuario.sPSW = txtPsw.Text.Trim();
            }
            else
            {
                LbMensaje.Text = "La contraseña actual especificada es incorrecta.";
                return;
            }

            if (TuCuento.Negocio.Usuario_NEG.ActualizarPSW(oUsuario))
            {
                pnlRegistro.Visible = false;
                pnlResultado.Visible = true;

                LbMensajeFinal.Text = "La contraseña se modifico correctamente.";
                
            }
            else
                LbMensaje.Text = "Ocurrio un error al actualizar los datos";

        }
    }
예제 #2
0
    protected void btnLogin_Click(object sender, EventArgs e)
    {       
        Boolean bOk = true;
        string sCod_Usuario = txtsCod_Usuario.Text.Trim();
        string sPSW = txtsPSW.Text.Trim();
        //sCod_Usuario = "edeortuzar";
        //sPSW = "INIT";

        if (sCod_Usuario.Length == 0 || sPSW.Length == 0)
        {
            LbMensaje.Text = "Debe completar el campo Usuario y el campo Constraseña.";
            bOk = false;
        }
        
        if (bOk)
        {
            TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
            TuCuento.Negocio.Usuario_NEG oNegocio = new TuCuento.Negocio.Usuario_NEG();
            
            oUsuario = oNegocio.ValidarUsuario(sCod_Usuario, sPSW);

            if (oUsuario.sCod_Usuario != null)
            {
                Session["oUsuario"] = oUsuario;
                Response.Redirect("default.aspx");
            }
            else
            {
                Session["oUsuario"] = null;
                LbMensaje.Text = "El usuario y/o la contraseña son incorrectos.";
            }

        }

    }
    protected void btnEnviar_Click(object sender, EventArgs e)
    {
        string bodyHTML = string.Empty;
        string sCod_Usuario = txtsCod_Usuario.Text.Trim();
        TuCuento.Entidades.Usuario oUsuario;
        Funciones oFunc = new Funciones();

        if (sCod_Usuario.Length == 0)
        {
            LbMensaje.Text = "Debe completar el campo Usuario.";
            return;
        }

        //Recupero el mail del usuario
        oUsuario = new TuCuento.Entidades.Usuario();
        oUsuario.sCod_Usuario = sCod_Usuario;

        DataTable oDatos = TuCuento.Negocio.Usuario_NEG.TraerUsuario(oUsuario);

        if (oDatos.Rows.Count == 0)
        {
            LbMensaje.Text = "El usuario es incorrecto o inexistente.";
            return;
        }

        bodyHTML = @"<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'
                        'http://www.w3.org/TR/html4/loose.dtd'>
                    <html lang='es'>
                    <head>
                    </head>
                    <body>
                    <table style='width:800px; border:1px solid #000;' cellpadding='10' cellspacing='0' align='center'>
                    <tr>
                    <td style='background-color:#3399FF; border-bottom:1px solid #000;'>
                    <h1 style='text-align:center; color:#ffffff;'>TuCuento.com.ar</h1></td>
                    </tr>
                    <tr>
                    <td style='border-right:1px solid #000; vertical-align:top; background-color:#FFFFFF;'>
	                    <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Te recordamos que tu usuarios es:";
        bodyHTML = bodyHTML + sCod_Usuario + @"</h4>
	                    <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Y tu contraseña es: ";
        bodyHTML = bodyHTML + TuCuento.Negocio.Usuario_NEG.Desencriptar(oDatos.Rows[0]["sPSW"].ToString()) + @"</h4>
                    </td>
                    </tr>
                    <tr>
                    <td colspan='2' style='background-color:#3399FF; color:#FFFFFF; font-family:Arial, Helvetica, sans-serif; font-size:.8em; border-top:1px solid #000;'>Copyright (c) 2010. TuCuento.com.ar</td>
                    </tr>
                    </body>
                    </html>";

        if (oFunc.EnviarMail(oDatos.Rows[0]["sEmail"].ToString(), "*****@*****.**", bodyHTML, "TuCuento - Recupero de clave"))
        {
            LbMensaje.Text = "Se envió un mail con la contraseña a la casilla de e-mail registrada, por favor, verifique su casilla.";
        }
        else
        {
            LbMensaje.Text = "Ocurrio un error en el envío de la contraseña, por favor, intente más tarde.";
        }

    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.QueryString["sCod_Usuario"] == null)
            {
                LbMensaje.Text = "Ha ingresado a una página de manera indebida.";
                hfEstado.Value = "MAL";
                return;
            }

            string sCod_Usuario = Request.QueryString["sCod_Usuario"].ToString();

            if (sCod_Usuario.Trim().Length == 0)
            {
                LbMensaje.Text = "Ha ingresado a una página de manera indebida.";
                hfEstado.Value = "MAL";
            }
            else
            {
                //Valido que el usuario este y que tenga nHab=2
                TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
                oUsuario.sCod_Usuario = sCod_Usuario;

                DataTable oDatos = TuCuento.Negocio.Usuario_NEG.TraerUsuario(oUsuario);

                if (oDatos.Rows.Count == 0)
                {
                    LbMensaje.Text = "Ha ingresado a una página de manera indebida.";
                    hfEstado.Value = "MAL";
                }
                else
                {
                    if (oDatos.Rows[0]["nHab"].ToString() != "2")
                    {
                        LbMensaje.Text = "El usuario ya se encuentra activado o fue desactivado por el administrador de sistemas.";
                        hfEstado.Value = "MAL";
                    }
                    else
                    {
                        //Si está todo bien actualizo el estado a 1 para que pueda loguearse
                        oUsuario.nHab = 1;

                        if (TuCuento.Negocio.Usuario_NEG.ActualizarEstado(oUsuario))
                        {
                            LbMensaje.Text = "El usuario se activo correctamente.";
                            hfEstado.Value = "BIEN";
                        }
                        else
                        {
                            LbMensaje.Text = "Ocurrio un error al activar el usuario, por favor, pongase en contacto con el administrador de sistemas.";
                            hfEstado.Value = "MAL";
                        }
                    }
                }

            }
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        TuCuento.Entidades.Usuario oUnUsuario = new TuCuento.Entidades.Usuario();
        oUnUsuario = (TuCuento.Entidades.Usuario)Session["oUsuario"];

        ArmarMenu();

        lblUsuario.Text = "Usuario: " + oUnUsuario.sApellido + ", " + oUnUsuario.sNombre;

        if (!IsPostBack)
        {
            CargarGrilla();
        }
    }
    protected void btnGrabar_Click(object sender, EventArgs e)
    {
        if (!Validar())
            return;

        TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
        
        oUsuario.sCod_Usuario = txtCodigo.Text;
        oUsuario.sNombre = txtNombre.Text;
        oUsuario.sApellido = txtApellido.Text;
        oUsuario.sEmail = txtEMail.Text;
        oUsuario.bHab = chkHab.Checked;

        if (chkBlanPSW.Checked)
            oUsuario.sPSW = "INIT";

        //Cargo las patentes seleccionadas
        foreach (ListItem item in lvDerecha.Items)
        {
            TuCuento.Entidades.Patente oPatente = new TuCuento.Entidades.Patente();
            oPatente.nCod_Patente = Convert.ToInt32(item.Value);

            oUsuario.lstPatentes.Add(oPatente);
        }

        //Cargo las familias seleccionadas
        foreach (ListItem item in lstFliaSel.Items)
        {
            TuCuento.Entidades.Familia oFamilia = new TuCuento.Entidades.Familia();
            oFamilia.nCod_Flia = Convert.ToInt32(item.Value);

            oUsuario.lstFamilias.Add(oFamilia);
        }
        
        if (TuCuento.Negocio.Usuario_NEG.Persistir(oUsuario))
        {
            BlanquearControles();
            LbMensaje.Text = "Se actualizaron los datos";
            HabDesCtrl(false);
            CargarGrilla();
        }
        else
            LbMensaje.Text = "Ocurrio un error al actualizar los datos";
        
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        string _PaginaInicio = System.Configuration.ConfigurationSettings.AppSettings["URLLogin"].ToString();
        TuCuento.Entidades.Usuario oUnUsuario = new TuCuento.Entidades.Usuario();

        if (Session["oUsuarioInternet"] == null)
        {
            ltLogin.Text = "<a href='#' title='' class='tabLogout' onclick='Login(\"LOGIN\");'>LogIn</a>";
            lblUsuario.Visible = false;
            hlRegistro.Visible = true;
            hlCambioClave.Visible = false;
            oUnUsuario.sCod_Usuario = System.Configuration.ConfigurationSettings.AppSettings["usuarioVisitante"].ToString();
        }
        else
        {
            ltLogin.Text = "<a href='#' title='' class='tabLogout' onclick='Login(\"LOGOUT\");'>LogOut</a>";
            
            oUnUsuario = (TuCuento.Entidades.Usuario)Session["oUsuarioInternet"];

            sCod_Usuario = oUnUsuario.sCod_Usuario;

            lblUsuario.Text = "Usuario: " + oUnUsuario.sApellido + ", " + oUnUsuario.sNombre;

            lblUsuario.Visible = true;
            hlRegistro.Visible = false;
            hlCambioClave.Visible = true;

        }


        if (Session["Menu"] == null)
        {
            CargarMenuaMemoria(oUnUsuario);
        }

        ArmarMenu();

        BuscarEncuesta();

        hfsCod_Usuario.Value = sCod_Usuario;
        
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        string _PaginaInicio = System.Configuration.ConfigurationSettings.AppSettings["URLLogin"].ToString();

        if (Session["oUsuario"] == null)
            Response.Redirect(_PaginaInicio);

        TuCuento.Entidades.Usuario oUnUsuario = new TuCuento.Entidades.Usuario();
        oUnUsuario = (TuCuento.Entidades.Usuario)Session["oUsuario"];

        sCod_Usuario = oUnUsuario.sCod_Usuario;

        if (Session["Menu"] == null)
        {
            CargarMenuaMemoria(oUnUsuario);
        }

        if (Session["bDigitoVerificador"] == null || Session["bDigitoVerificador"].ToString() == "MAL")
        {
            DataTable oDatos = TuCuento.Negocio.DigitoVerificador_NEG.ListarInformacion();

            if (oDatos.Rows.Count > 0)
            {
                Session["bDigitoVerificador"] = "MAL";
                this.pnlDigitoVerificador.Visible = true;
            }
            else
            {
                Session["bDigitoVerificador"] = "OK";
            }
        }
        
        ArmarMenu();

        lblUsuario.Text = "Usuario: " + oUnUsuario.sApellido + ", " + oUnUsuario.sNombre;

    }
    protected void btnGrabar_Click(object sender, EventArgs e)
    {
        Master.MensajeError = "";

        if (Validar())
        {
            TuCuento.Entidades.Encuesta oEncuesta = new TuCuento.Entidades.Encuesta();

            oEncuesta.sTitulo = txtTitulo.Text.Trim();
            oEncuesta.sPregunta = txtPregunta.Text.Trim();
            oEncuesta.dFechaFin = txtFechaFin.Value;
            oEncuesta.nHab = 1;

            //Cargo el detalle
            oEncuesta.lstDetalle = lstDetalle;

            //Cargo los usuarios seleccionados
            foreach (ListItem item in lvDerecha.Items)
            {
                TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
                oUsuario.sCod_Usuario = item.Value;

                oEncuesta.lstUsuario.Add(oUsuario);
            }

            if (TuCuento.Negocio.Encuesta_NEG.PersistirEncuesta(oEncuesta))
            {
                LbMensaje.Text = "Se actualizaron los datos";
                CargarGrilla();
                BlanquearControles();
                HabControles(false);
            }
            else
            {
                Master.MensajeError = "Ocurrio un error al grabar la información, por favor, intente más tarde.";
            }

        }
    }
    protected void btnAceptar_Click(object sender, EventArgs e)
    {
        if (Validar())
        {
            TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
            TuCuento.Entidades.Familia oFlia = new TuCuento.Entidades.Familia();

            oUsuario.sCod_Usuario = txtUsuario.Text.Trim();
            oUsuario.sNombre = txtNombre.Text.Trim();
            oUsuario.sApellido = txtApellido.Text.Trim();
            oUsuario.sEmail = txtMail.Text.Trim();
            oUsuario.sPSW = txtPsw.Text.Trim();
            oUsuario.Pregunta.nCod_Pregunta = Convert.ToInt32(ddlPregunta.SelectedValue);
            oUsuario.sRespuesta = txtRespuesta.Text.Trim();


            oFlia.nCod_Flia = Convert.ToInt32(System.Configuration.ConfigurationSettings.AppSettings["FliaVisitante"].ToString());
            oUsuario.lstFamilias.Add(oFlia);

            oUsuario.nHab = 2;

            if (TuCuento.Negocio.Usuario_NEG.Persistir(oUsuario))
            {
                pnlRegistro.Visible = false;
                pnlResultado.Visible = true;

                //Envio el mail para activar la cuenta
                string bodyHTML = string.Empty;
                string sCod_Usuario = txtUsuario.Text.Trim();
                string sURL = GetApplicationPath() + "/ConfirmarRegistro.aspx?sCod_Usuario=" + sCod_Usuario;
                Funciones oFunc = new Funciones();
                
                bodyHTML = @"<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'
                        'http://www.w3.org/TR/html4/loose.dtd'>
                        <html lang='es'>
                        <head>
                        </head>
                        <body>
                        <table style='width:800px; border:1px solid #000;' cellpadding='10' cellspacing='0' align='center'>
                        <tr>
                        <td style='background-color:#3399FF; border-bottom:1px solid #000;'>
                        <h1 style='text-align:center; color:#ffffff;'>Bienvenido/a a TuCuento.com.ar</h1></td>
                        </tr>
                        <tr>
                        <td style='border-right:1px solid #000; vertical-align:top; background-color:#FFFFFF;'>
	                        <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Los datos de tu usuario son: </h4>
	                        <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Usuario: ";
                bodyHTML = bodyHTML + sCod_Usuario + @" </h4>
	                        <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Y tu contraseña es: ";
                bodyHTML = bodyHTML + txtPsw.Text.Trim() + @"</h4>
	                        </br>
	                        <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Por favor, para activar tu usuario tienes que pinchar sobre el siguiente link:</h4>
	                        <a href='";
                bodyHTML = bodyHTML + sURL + @"'>";
                bodyHTML = bodyHTML + sURL + @"</a>
                        </td>
                        </tr>
                        <tr>
                        <td colspan='2' style='background-color:#3399FF; color:#FFFFFF; font-family:Arial, Helvetica, sans-serif; font-size:.8em; border-top:1px solid #000;'>Copyright (c) 2010. TuCuento.com.ar</td>
                        </tr>
                        </body>
                        </html>";

                if (oFunc.EnviarMail(oUsuario.sEmail, "*****@*****.**", bodyHTML, "TuCuento - Activar cuenta"))
                {
                    LbMensajeFinal.Text = "Gracias por registrarte. Se envió un mail a la casilla " + oUsuario.sEmail + ". Ahí encontraras información para activar tu cuenta.";
                }
                else
                {
                    LbMensajeFinal.Text = "Hubo un error al envíar el mail para la activación de la cuenta. Por favor, pongase en contacto con el administrador de sistemas.";
                }                
            }
            else
                LbMensaje.Text = "Ocurrio un error al actualizar los datos";

        }
    }
    private bool Validar()
    {
        bool bResp = true;
        bool bValPSW = true;

        if (txtUsuario.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar el nombre de usuario.";
            bResp = false;
        }
        else
        {
            //Verifico que el nombre de usuario no este siendo usado
            TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
            oUsuario.sCod_Usuario = txtUsuario.Text.Trim();
            DataTable oData = TuCuento.Negocio.Usuario_NEG.TraerUsuario(oUsuario);

            if (oData.Rows.Count > 0)
            {
                sMensajeError = "El nombre de usuario especificado ya esta registrado, por favor, modifique el nombre de usuario.";
                bResp = false;
            }
        }

        if (txtNombre.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar su nombre.";
            bResp = false;
        }

        if (txtApellido.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar su apellido.";
            bResp = false;
        }
        
        if (txtPsw.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar el campo contraseña.";
            bResp = false;
            bValPSW = false;
        }

        if (txtPswRepeat.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar el campo repetir contraseña.";
            bResp = false;
            bValPSW = false;
        }

        if (bValPSW && txtPsw.Text.Trim() != txtPswRepeat.Text.Trim())
        {
            sMensajeError = "La contraseña no es igual a la contraseña que repitio.";
            bResp = false;
        }

        if (bValPSW && bResp && !ValidarPSW())
        {
            bResp = false;
        }

        if (txtMail.Text.Trim().Length == 0)
        {
            sMensajeError = "Debe completar su e-mail.";
            bResp = false;
        }
        else
        {
            string ExpresionReg = @"^(([\w-]+\.)+[\w-]+|([a-zA-Z]{1}|[\w-]{2,}))@"
              + @"((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?
                [0-9]{1,2}|25[0-5]|2[0-4][0-9])\."
              + @"([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\.([0-1]?
                [0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|"
              + @"([a-zA-Z]+[\w-]+\.)+[a-zA-Z]{2,4})$";

            if (!Regex.IsMatch(txtMail.Text.Trim(), ExpresionReg))
            {
                sMensajeError = "Debe completar el campo e-mail con e-mail válido.";

                bResp = false;
            }
        }

        if (!bResp)
            Master.MensajeError = sMensajeError;
        
        return bResp;
    }
    protected void gvDatos_SelectedIndexChanged(object sender, EventArgs e)
    {
        TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();

        GridViewRow row = gvDatos.SelectedRow;
        HfAccion.Value = "";
        this.txtCodigo.Text = Server.HtmlDecode(row.Cells[1].Text.Trim());
        this.txtNombre.Text = Server.HtmlDecode(row.Cells[2].Text.Trim());
        this.txtApellido.Text = Server.HtmlDecode(row.Cells[3].Text.Trim());
        this.txtEMail.Text = Server.HtmlDecode(row.Cells[4].Text.Trim());
        this.chkHab.Checked = ((CheckBox)row.FindControl("chkHabGrilla")).Checked;

        //Cargo las patentes y las familias
        CargarPatentes();
        CargarFamilias();

        #region Muevo las listas según lo que tiene el usuario seleccionado

        oUsuario.sCod_Usuario = this.txtCodigo.Text;

        //Traigo las patentes asociadas
        DataTable oPatentes = TuCuento.Negocio.Usuario_NEG.TraerPatentesUsuario(oUsuario);

        //Muevo las patentes según corresponda
        List<ListItem> elementos = new List<ListItem>();
        foreach (ListItem item in lvIzquierda.Items)
        {

            for (int nI = 0; nI < (oPatentes.Rows.Count); nI++)
            {
                if (item.Value == oPatentes.Rows[nI]["nCod_Patente"].ToString())
                {
                    elementos.Add(item);
                    lvDerecha.Items.Add(item);
                    break;
                }
            }

        }

        lvDerecha.SelectedIndex = -1;

        foreach (ListItem item in elementos)
        {
            lvIzquierda.Items.Remove(item);
        }

        //Traigo las familias asociadas
        DataTable oFamilias = TuCuento.Negocio.Usuario_NEG.TraerFamiliasUsuario(oUsuario);

        //Muevo las familias según corresponda
        elementos = new List<ListItem>();
        foreach (ListItem item in lstFlia.Items)
        {

            for (int nI = 0; nI < (oFamilias.Rows.Count); nI++)
            {
                if (item.Value == oFamilias.Rows[nI]["nCod_Flia"].ToString())
                {
                    elementos.Add(item);
                    lstFliaSel.Items.Add(item);
                    break;
                }
            }

        }

        lstFliaSel.SelectedIndex = -1;

        foreach (ListItem item in elementos)
        {
            lstFlia.Items.Remove(item);
        }

        #endregion

        HabDesCtrl(true);
    }
    protected void btnAceptar_Click(object sender, EventArgs e)
    {
        Master.MensajeError = "";

        if (Validar())
        {
            TuCuento.Entidades.Usuario oUsuario = new TuCuento.Entidades.Usuario();
            TuCuento.Negocio.Usuario_NEG oNegocio = new TuCuento.Negocio.Usuario_NEG();
            
            oUsuario = oNegocio.ValidarUsuario(Master.sCod_Usuario, txtPswOLD.Text.Trim());

            if (oUsuario.sCod_Usuario != null)
            {
                //Actualizo la contraseña a la nueva contraseña
                oUsuario.sPSW = txtPsw.Text.Trim();
            }
            else
            {
                LbMensaje.Text = "La contraseña actual especificada es incorrecta.";
                return;
            }

            if (TuCuento.Negocio.Usuario_NEG.ActualizarPSW(oUsuario))
            {
                pnlRegistro.Visible = false;
                pnlResultado.Visible = true;

                //Envio el mail de que se modifico la contraseña
                string bodyHTML = string.Empty;
                string sCod_Usuario = Master.sCod_Usuario;
                Funciones oFunc = new Funciones();

                bodyHTML = @"<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'
                        'http://www.w3.org/TR/html4/loose.dtd'>
                        <html lang='es'>
                        <head>
                        </head>
                        <body>
                        <table style='width:800px; border:1px solid #000;' cellpadding='10' cellspacing='0' align='center'>
                        <tr>
                        <td style='background-color:#3399FF; border-bottom:1px solid #000;'>
                        <h1 style='text-align:center; color:#ffffff;'>TuCuento.com.ar</h1></td>
                        </tr>
                        <tr>
                        <td style='border-right:1px solid #000; vertical-align:top; background-color:#FFFFFF;'>
	                        <h4 style='font-family:Arial, Helvetica, sans-serif;color:#000;'>Se ha cambiado su contraseña. La nueva contraseña es";
                bodyHTML = bodyHTML + oUsuario.sPSW + @"</h4>
                        </td>
                        </tr>
                        <tr>
                        <td colspan='2' style='background-color:#3399FF; color:#FFFFFF; font-family:Arial, Helvetica, sans-serif; font-size:.8em; border-top:1px solid #000;'>Copyright (c) 2010. TuCuento.com.ar</td>
                        </tr>
                        </body>
                        </html>";

                if (oFunc.EnviarMail(oUsuario.sEmail, "*****@*****.**", bodyHTML, "TuCuento - Cambio de contraseña"))
                {
                    LbMensajeFinal.Text = "La contraseña se modifico correctamente.";
                }
                else
                {
                    LbMensajeFinal.Text = "La contraseña se modifico correctamente.";
                }
            }
            else
                LbMensaje.Text = "Ocurrio un error al actualizar los datos";

        }
    }
    protected void btnGrabar_Click(object sender, EventArgs e)
    {
        //Grabar el resultado
        TuCuento.Entidades.Cuento oCuento = new TuCuento.Entidades.Cuento();
        TuCuento.Entidades.Usuario oUnUsuario = new TuCuento.Entidades.Usuario();
        oUnUsuario = (TuCuento.Entidades.Usuario)Session["oUsuarioInternet"];

        oCuento.nCod_Dominio = Convert.ToInt32(HfnCod_Dominio.Value);
        oCuento.sCod_Usuario = oUnUsuario.sCod_Usuario;
        oCuento.sTexto = txtTexto.Text;

        if (TuCuento.Negocio.Cuento_NEG.Persistir(oCuento))
        {
            Response.Redirect("Redaccion.aspx?nResultado=1",false);
        }
        else
        {
            Master.MensajeError = "Ocurrio un error al grabar el cuento, por favor, intente mas tarde.";
        }

    }