protected void Page_Load(object sender, EventArgs e)
        {
            usuarioBO = new UsuarioBO();
            usuarioVO = (UsuarioVO)Session[Constantes.USUARIO];
            usuarioLogado = (UsuarioVO)Session[Constantes.LOGADO];

            if (usuarioVO == null)
            {
                usuarioVO = new UsuarioVO();

            }

            if (!IsPostBack)
            {
                if (usuarioVO.Id != 0)
                {
                    id.Value = usuarioVO.Id.ToString();
                    txtNome.Text = usuarioVO.Nome;
                    txtLogin.Text = usuarioVO.Login;
                    controlaSenha.Visible = false;
                    txtEmail.Text = usuarioVO.Email;

                }
            }

            if (usuarioLogado == null)
            {
                Response.Redirect("~/Default.aspx");
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            usuarioBO = new UsuarioBO();

            if (!IsPostBack)
            {
                // quando entra pela primeira na tela
            }

            usuarioLogado = (UsuarioVO)Session[Constantes.LOGADO];

            if (usuarioLogado == null)
            {
                Response.Redirect("~/Default.aspx");
            }
        }
        protected void InserirUsuario(object sender, EventArgs e)
        {
            //TODO: Revisado e funcionando! *vrl, *adsneris.

            UsuarioVO usuarioVO = new UsuarioVO();

            UsuarioBO validadorBO = new UsuarioBO(); //Não instanciar dois objetos!! *vrl

            if (!validadorBO.ExisteRegistro("login", txtLogin.Text.Trim(), usuarioVO))// &&
                //(!validadorBO.ExisteRegistro("nome", txtNome.Text.Trim(), usuarioVO)))
                //TODO: Anderson, observe bem essa lógica... Só dará erro se o cara tiver o NOME e LOGIN cadastrados. Isso é
                //perigoso, porque assim teremos vários logins com nomes diferentes, ou o contrário. É melhor verificar
                //somente o login. *vrl
            {
                usuarioVO.Campo("nome").Valor = txtNome.Text.Trim();
                usuarioVO.Campo("sexo").Valor = cmbSexo.SelectedValue;
                usuarioVO.Campo("login").Valor = txtLogin.Text.Trim();
                usuarioVO.Campo("email").Valor = txtEmail.Text.Trim();
                usuarioVO.Campo("senha").Valor = txtSenha.Text.Trim();

                new UsuarioBO().Incluir(usuarioVO);

                //TODO: O que vcs acham ??? *adsneris - Acho uma boa ideia. Vim aqui só pra ver se tinha. Mas não está funcionando. *vrl

                Util.Util.MostrarMensagem("Cadastro efetuado com sucesso!", this.Page);

                //Autenticador.Autenticar(usuarioVO);
                //Response.Redirect("~/");
            }
            else
            {
                Util.Util.MostrarMensagem("Usuario já existe!", this.Page);
                txtNome.Focus();

                //txtNome.Text = "";
                //cmbSexo.SelectedIndex = -1;
                //txtLogin.Text = "";
                //txtEmail.Text = "";
                //txtSenha.Text = "";
            }

            Util.Util.LimparCampos(this.Page);
        }
        /// <summary>
        /// Método responsável pela autenticação do usuário.
        /// Conecta-se ao banco de dados, e faz verificação do login e senha do usuário.
        /// </summary>
        /// <param name="usuarioVO">UsuarioVO: informações de um usuário a ser autenticado, contidas no objeto </param>
        public static void Autenticar(UsuarioVO usuarioVO)
        {
            IBaseBO usuarioBO = new UsuarioBO();
            BaseVO usuarioTmp = null;

            try
            {
                 usuarioTmp = usuarioBO.ObterDadosVOPorCampo("login", usuarioVO, null);
                //TODO: obter dados do perfil, assim como o tipo de usuário (moderador ou usuário) e Bolões cadastrados. *vrl
                                                            //Ou será melhor carregar quando entrar na página em questão? *vrl

            }
            catch (Exception)
            {
                throw new Exception("Falha na autenticação: usuário não existe");
            }

            if (usuarioTmp.Campo("senha").Valor.ToString().Equals(usuarioVO.Campo("senha").Valor.ToString()))
            {
                UsuarioAutenticado = usuarioTmp;
            }
            else
                throw new Exception("Falha na autenticação: senha incorreta");
        }