protected void btnAceptar_Click(object sender, EventArgs e)
    {
        usuariosWebBL usuariosBL = new usuariosWebBL();
        tb_usuarios tb_usuarios = new tb_usuarios();

        DataTable dt = new DataTable();
        String xClave = null;
        Boolean xadmin = false;
        tb_usuarios.usuar = txtusuario.Text.Trim().ToLower();

        try
        {
            dt = usuariosBL.GetAll(cboEmpresalogueo.SelectedValue, tb_usuarios).Tables[0];
            xClave = Convert.ToString(dt.Rows[0]["CLAVE"]);
            xadmin = Convert.ToBoolean(dt.Rows[0]["admin"]);

            txtpassword.Text = mifunc.GetMD5(txtpassword.Text.ToLower()).Substring(0, 10);
            if (txtpassword.Text.ToUpper() == xClave)
            {
                if (xadmin)
                {
                    cboEmpresalogueo_SelectedIndexChanged(sender, e);

                    Session["ssUsuar"] = Convert.ToString(dt.Rows[0]["usuar"]);
                    Session["ssDominoid"] = "00";
                    Session["ssModuloid"] = "00";
                    Session["ssPerfil"] = "000000";
                    Response.Redirect("main.aspx");
                    return;
                }
                else
                {
                    cboEmpresalogueo_SelectedIndexChanged(sender, e);
                    Session["ssUsuar"] = Convert.ToString(dt.Rows[0]["usuar"]);
                    ModalPopupExtender1.Show();
                    abrir_perfiles();
                    get_cargafoto();
                    return;
                }
            }
            else
            {
                //ClientMessage("Usuario o Clave Incorrecto?");
                MensajeScript("Usuario o Clave Incorrecto?");
            }
        }
        catch (Exception ex)
        {
            //ClientMessage(ex.Message);
            MensajeScript(ex.Message);
        }
    }
    protected void btnAceptar_Click(object sender, EventArgs e)
    {
        usuariosWebBL usuariosBL = new usuariosWebBL();
        tb_usuarios tb_usuarios = new tb_usuarios();

        DataTable dt = new DataTable();
        String xClave = null;
        Boolean xadmin = false;
        tb_usuarios.usuar = txtusuario.Text.Trim().ToLower();

        //try
        //{

            dt = usuariosBL.GetAll("99", tb_usuarios).Tables[0];
            xClave = Convert.ToString(dt.Rows[0]["CLAVE"]);
            xadmin = Convert.ToBoolean(dt.Rows[0]["admin"]);

            txtpassword.Text = mifunc.GetMD5(txtpassword.Text.ToLower()).Substring(0, 10);
            if (txtpassword.Text.ToUpper() == xClave)
            {
                if (xadmin)
                {
                    //cboEmpresalogueo_SelectedIndexChanged(sender, e);
                    Session["ssUsuar"] = Convert.ToString(dt.Rows[0]["usuar"]);
                    Session["ssDominoid"] = "00";
                    Session["ssModuloid"] = "00";
                    Session["ssPerfil"] = "000000";
                    Response.Redirect("main.aspx");
                    return;
                }
                else
                {
                    Session["ssUsuar"] = Convert.ToString(dt.Rows[0]["usuar"]);
                    Datos_Empresa();
                    abrir_perfiles();
                    return;
                }
            }
            else
            {
                MensajeScript("Usuario o Clave Incorrecto?");
            }

        //}
        //catch (Exception ex)
        //{
        //    throw ex;
        //}
    }
    private void get_cargafoto()
    {
        try
        {
            usuariosWebBL usuariosBL = new usuariosWebBL();
            tb_usuarios tb_usuarios = new tb_usuarios();
            DataTable dt = new DataTable();
            tb_usuarios.usuar = Session["ssUsuar"].ToString();
            dt = usuariosBL.GetAll(Session["ssEmpresaID"].ToString(), tb_usuarios).Tables[0];
            usuario.Text = dt.Rows[0]["nombr"].ToString().PadRight(20, ' ').Substring(0, 20);

            if (dt.Rows[0]["foto"].ToString().Length != 0)
            {
                foto.Visible = true;
                //foto.ImageUrl = "~/Photos/emp_usuario/" + dt.Rows[0]["foto"].ToString() + ".jpg";
                foto.ImageUrl = "~/Photos/usuarios_sys/" + dt.Rows[0]["foto2"].ToString();
            }
            else
            {
                foto.Visible = false;
                foto.ImageUrl = "";
            }
        }
        catch (Exception ex)
        {
            ClientMessage(ex.Message);
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {

            //VALIDACION PRINCIPAL PARA TODO FORMULARIO
            Session_usuario();
            lblusuario.Text = Session["ssUsuar"].ToString();

            foto2.ImageUrl = "~/Photos/usuarios_sys/"+lblusuario.Text.Trim()+".jpg";

            /*Session["ssEmpresaID"] = "02";
            Session["ssUsuar"] = "gtarazona";
            Session["ssDominioid"] = "60";
            Session["ssModuloid"] = "0320";
            Session["ssPerfil"] = "600320000";*/

            try
            {
                //perfil de modulo
                sys_moduloWebBL moduloBL = new sys_moduloWebBL();
                tb_sys_modulo tb_modulo = new tb_sys_modulo();
                DataTable dtmoduloid = new DataTable();

                string dominioid = Convert.ToString(Session["ssDominioid"]);
                string moduloid = Convert.ToString(Session["ssModuloid"]);

                if (dominioid != "00")
                {
                    if (moduloid == "0000")
                    {
                        modulo_emp.Text = "NINGUNO";

                    }
                    else
                    {
                        dtmoduloid = moduloBL.GetOne(Session["ssEmpresaID"].ToString(), dominioid, moduloid).Tables[0];
                        modulo_emp.Text = fungen.RemoveAccentsWithRegEx(dtmoduloid.Rows[0]["moduloname"].ToString());
                    }
                }
                else
                {
                    modulo_emp.Text = "NINGUNO";
                }

                //perfil de usuario
                usuariosWebBL usuariosBL = new usuariosWebBL();
                tb_usuarios tb_usuarios = new tb_usuarios();
                DataTable dtMenuItems = new DataTable();
                DataTable dtMenuItems02 = new DataTable();
                string COD_USU = Convert.ToString(Session["ssUsuar"]);

                dtMenuItems = usuariosBL.GenerarMenuXperfil(Session["ssEmpresaID"].ToString(), COD_USU, Session["ssPerfil"].ToString()).Tables[0];
                dtMenuItems02 = usuariosBL.GenerarMenuXperfil_child(Session["ssEmpresaID"].ToString(), COD_USU, Session["ssPerfil"].ToString()).Tables[0];

                AccordionPane p;
                Panel pnlHeader;
                TreeView tree;
                TreeNode mnuMenuItem;
                Int32 i = 0;
                String xgrupo = "", xpadid = "";

                foreach (DataRow drMenuItem in dtMenuItems.Rows)
                {
                    i++;
                    p = new AccordionPane();
                    p.ID = "Pane" + i;

                    if (drMenuItem["posic"].ToString() == "0")
                    {
                        pnlHeader = new Panel();
                        HyperLink hlHeader = new HyperLink();
                        hlHeader.NavigateUrl = "#";
                        hlHeader.Text = drMenuItem["descr"].ToString();
                        pnlHeader.Controls.Add(hlHeader);
                        p.HeaderContainer.Controls.Add(pnlHeader);
                        xgrupo = drMenuItem["grupo"].ToString();
                        xpadid = drMenuItem["padid"].ToString();
                    }
                    else
                    {
                        xgrupo = "";
                    }

                    tree = new TreeView();
                    tree.ID = "tree" + i;
                    foreach (DataRow drMenuItem02 in dtMenuItems02.Rows)
                    {
                        string aaa = drMenuItem02["padid"].ToString();
                        string aa = drMenuItem02["grupo"].ToString();
                        if (drMenuItem02["grupo"].ToString() == xgrupo && drMenuItem02["padid"].ToString() == xpadid)
                        {
                            mnuMenuItem = new TreeNode();
                            mnuMenuItem.Value = drMenuItem02["menid"].ToString();
                            mnuMenuItem.Text = drMenuItem02["descr"].ToString();
                            mnuMenuItem.ImageUrl = drMenuItem02["Icono"].ToString();
                            mnuMenuItem.Target = "frameMain";

                            if (drMenuItem02["nivelacc"].ToString().Trim().Length == 0)
                            {
                                mnuMenuItem.NavigateUrl = drMenuItem02["pgurl"].ToString();
                            }
                            else
                            {
                                mnuMenuItem.NavigateUrl = drMenuItem02["pgurl"].ToString() + "?idnivel=" + drMenuItem02["nivelacc"].ToString();
                            }

                            tree.Nodes.Add(mnuMenuItem);
                            //TreeViewImageSet imagen = new TreeViewImageSet();
                            //imagen = TreeViewImageSet.XPFileExplorer;
                            //tree.ImageSet = imagen;
                            tree.RootNodeStyle.CssClass = "roottreview";
                            tree.RootNodeStyle.ImageUrl = "lib/img/folder.gif";
                            tree.ParentNodeStyle.CssClass = "roottreview";
                            tree.ParentNodeStyle.ImageUrl = "lib/img/folder.gif";
                            tree.NodeStyle.CssClass = "nodetreview";
                            tree.NodeStyle.ImageUrl = "lib/img/documento.gif";

                            //hacemos un llamado al metodo recursivo encargado de generar el árbol del menú.
                            AddMenuItem2(ref mnuMenuItem, dtMenuItems02, xgrupo);
                        }
                    }
                    if (drMenuItem["posic"].ToString() == "0")
                    {
                        p.ContentContainer.Controls.Add(tree);
                        p.ContentCssClass = "accordioncontent";
                        accmenuperfil.Panes.Add(p);

                        accmenuperfil.Panes.Add(p);
                    }
                }
            }
            catch
            {
                //Response.Redirect("~/Login02.aspx");
            }
            try
            {
                get_TipoAlmac_local(Session["ssDominioid"].ToString(), Session["ssModuloid"].ToString());
            }
            catch
            {
                //Response.Redirect("~/Login01.aspx");
                Response.Redirect("~/Login.aspx",false);
            }
        }
    }