protected void LoginFinanceiro_Authenticate(object sender, AuthenticateEventArgs e)
 {
     if (_usuarionegocio.Autenticar(LoginFinanceiro.UserName, LoginFinanceiro.Password))
     {
         _usuario = _usuarionegocio.ConsultarUsuario(LoginFinanceiro.UserName);
        Session.Add("usuario",_usuario);
        Session.Add("login", _usuario.Login);
        Session.Add("isadmin", _usuario.isAdmin() ? true : false);
        FormsAuthentication.RedirectFromLoginPage(LoginFinanceiro.UserName, true);
     }
 }
 /// <summary>
 /// Tenta inserir um usuário novo<br></br>
 /// Retorna "0" se inseriu com sucesso<br></br>
 /// Retorna "-1" se o usuario já existe<br></br>
 /// Retorna "-2" se houve erro na inserção<br></br>
 /// 
 /// </summary>
 /// <param name="novousuario"></param>
 /// <returns>
 /// 
 /// </returns>
 public int InserirUsuario(Usuario novousuario, String senha)
 {
     //verifica se o login já nao existe
     if (_usuariodao.ConsultarUsuarioPeloLogin(novousuario.Login) != null)
     {
         return -1;
     }
     else
     {
         if (_usuariodao.InserirUsuario(novousuario, senha))
         {
             return 0;
         }
         else
         {
             return -2;
         }
     }
 }
        public bool AtualizarUsuario(Usuario usuario, String senha)
        {
            int affected = 0;
            VsfDatabase db = new VsfDatabase(Properties.Settings.Default.StringConexao);
            try
            {
                List<SqlParameter> parameters = new List<SqlParameter>();
                parameters.Add(new SqlParameter("@Nome", usuario.Nome));
                parameters.Add(new SqlParameter("@TipoUsuario", usuario.Tipo));
                if (!senha.Equals(""))
                {
                    parameters.Add(new SqlParameter("@SenhaAcesso", senha));
                }
                parameters.Add(new SqlParameter("@NomeAcesso", usuario.Login));

                db.AbreConexao();

                StringBuilder query = new StringBuilder("UPDATE Usuario");
                query.Append(" set Nome = @Nome, TipoUsuario=@TipoUsuario ");
                if (!senha.Equals(""))
                {
                    query.Append(" , SenhaAcesso=@SenhaAcesso ");
                }
                query.Append(" WHERE (NomeAcesso=@NomeAcesso)");
                affected = db.ExecuteTextNonQuery(query.ToString(), parameters);

            }
            catch (Exception ex)
            {
                throw new ApplicationException("DAOUsuario.InserirUsuario(Aluno): " + ex.ToString(), ex);
            }
            finally
            {
                db.FechaConexao();
            }
            return (affected > 0);
        }
 public bool AtualizarUsuario(Usuario _usuario, String senha)
 {
     return _usuariodao.AtualizarUsuario(_usuario,senha);
 }
        public List<Usuario> BuscaUsuariosPeloLoginENome(string Login, string Nome)
        {
            VsfDatabase db = new VsfDatabase(Properties.Settings.Default.StringConexao);
            List<Usuario> listausuarios = new List<Usuario>();
            try
            {
                List<SqlParameter> parameters = new List<SqlParameter>();
                if (!Login.Equals(""))
                {
                    parameters.Add(new SqlParameter("@login", "%" + Login + "%"));
                }
                if (!Nome.Equals(""))
                {
                    parameters.Add(new SqlParameter("@Nome", "%" + Nome + "%"));
                }

                db.AbreConexao();

                StringBuilder query = new StringBuilder("SELECT * FROM Usuario");
                query.Append(" WHERE ");
                if (!Login.Equals(""))
                {
                    query.Append(" NomeAcesso LIKE @login ");
                }
                if (!Login.Equals("") && !Nome.Equals(""))
                {
                    query.Append(" OR ");
                }
                if (!Nome.Equals(""))
                {
                    query.Append(" Nome LIKE @Nome ");
                }
                SqlDataReader reader = db.ExecuteTextReader(query.ToString(), parameters);

                while (reader.Read())
                {
                    Usuario usuario = new Usuario();
                    usuario.Login = (reader["NomeAcesso"] != DBNull.Value) ? Convert.ToString(reader["NomeAcesso"]) : String.Empty;
                    usuario.IdUsuario = (reader["IdUsuario"] != DBNull.Value) ? Convert.ToInt32(reader["IdUsuario"]) : 0;
                    usuario.Nome = (reader["Nome"] != DBNull.Value) ? Convert.ToString(reader["Nome"]) : String.Empty;
                    usuario.Tipo = (reader["TipoUsuario"] != DBNull.Value) ? Convert.ToInt32(reader["TipoUsuario"]) : 0;
                    listausuarios.Add(usuario);

                }
                return listausuarios;
            }
            catch (Exception ex)
            {
                Logger.Registrar(0, "Exceção em (DAO) " + ex.Source + " - " + ex.ToString() + " : " + ex.Message + "\n\n StackTrace: " + ex.StackTrace);
                throw new ApplicationException("DAOUsuario.ConsultarUsuarioPeloLogin(): " + ex, ex);
            }
            finally
            {
                db.FechaConexao();
            }
        }
        public List<Usuario> ObterTodosUsuarios()
        {
            VsfDatabase db = new VsfDatabase(Properties.Settings.Default.StringConexao);
            List<Usuario> listusuarios = new List<Usuario>();
            try
            {
                List<SqlParameter> parameters = new List<SqlParameter>();
                db.AbreConexao();

                StringBuilder query = new StringBuilder("SELECT * FROM Usuario");
                SqlDataReader reader = db.ExecuteTextReader(query.ToString(), parameters);

                while (reader.Read())
                {
                    Usuario usuario = new Usuario();
                    usuario.Login = (reader["NomeAcesso"] != DBNull.Value) ? Convert.ToString(reader["NomeAcesso"]) : String.Empty;
                    usuario.IdUsuario = (reader["IdUsuario"] != DBNull.Value) ? Convert.ToInt32(reader["IdUsuario"]) : 0;
                    usuario.Nome = (reader["Nome"] != DBNull.Value) ? Convert.ToString(reader["Nome"]) : String.Empty;
                    usuario.Tipo = (reader["Nome"] != DBNull.Value) ? Convert.ToInt32(reader["TipoUsuario"]) : 0;
                    listusuarios.Add(usuario);
                 }

            }
            catch (Exception ex)
            {
                Logger.Registrar(0, "Exceção em (DAO) " + ex.Source + " - " + ex.ToString() + " : " + ex.Message + "\n\n StackTrace: " + ex.StackTrace);
                throw new ApplicationException("DAOUsuario.ConsultarUsuarioPeloLogin(): " + ex, ex);
            }
            finally
            {
                db.FechaConexao();
            }

            return listusuarios;
        }
        public bool InserirUsuario(Usuario usuario, string senha)
        {
            int affected = 0;
            VsfDatabase db = new VsfDatabase(Properties.Settings.Default.StringConexao);
            try
            {
                List<SqlParameter> parameters = new List<SqlParameter>();
                parameters.Add(new SqlParameter("@Nome", usuario.Nome));
                parameters.Add(new SqlParameter("@NomeAcesso", usuario.Login));
                parameters.Add(new SqlParameter("@SenhaAcesso", senha));
                parameters.Add(new SqlParameter("@TipoUsuario", usuario.Tipo));
                db.AbreConexao();

                StringBuilder query = new StringBuilder("INSERT INTO Usuario");
                query.Append(" (Nome, NomeAcesso, SenhaAcesso, TipoUsuario)");
                query.Append(" VALUES (@Nome, @NomeAcesso, @SenhaAcesso, @TipoUsuario)");
                affected = db.ExecuteTextNonQuery(query.ToString(), parameters);

            }
            catch (Exception ex)
            {
                throw new ApplicationException("DAOUsuario.InserirUsuario(Aluno): " + ex.ToString(), ex);
            }
            finally
            {
                db.FechaConexao();
            }
            return (affected > 0);
        }
        public Usuario ConsultarUsuarioPeloLogin(string login)
        {
            VsfDatabase db = new VsfDatabase(Properties.Settings.Default.StringConexao);

            try
            {
                List<SqlParameter> parameters = new List<SqlParameter>();
                parameters.Add(new SqlParameter("@login", login));

                db.AbreConexao();

                StringBuilder query = new StringBuilder("SELECT * FROM Usuario");
                query.Append(" WHERE NomeAcesso = @login ");
                SqlDataReader reader = db.ExecuteTextReader(query.ToString(), parameters);

                if (reader.Read())
                {
                    Usuario usuario = new Usuario();
                    usuario.Login = (reader["NomeAcesso"] != DBNull.Value) ? Convert.ToString(reader["NomeAcesso"]) : String.Empty;
                    usuario.IdUsuario = (reader["IdUsuario"] != DBNull.Value) ? Convert.ToInt32(reader["IdUsuario"]) : 0;
                    usuario.Nome = (reader["Nome"] != DBNull.Value) ? Convert.ToString(reader["Nome"]) : String.Empty;
                    usuario.Tipo = (reader["Nome"] != DBNull.Value) ? Convert.ToInt32(reader["TipoUsuario"]) : 0;

                    return usuario;
                }
                else return null;
            }
            catch (Exception ex)
            {
                Logger.Registrar(0, "Exceção em (DAO) " + ex.Source + " - " + ex.ToString() + " : " + ex.Message + "\n\n StackTrace: " + ex.StackTrace);
                throw new ApplicationException("DAOUsuario.ConsultarUsuarioPeloLogin(): " + ex, ex);
            }
            finally
            {
                db.FechaConexao();
            }
        }
 private void carregarDadosParaEdicao()
 {
     if (!Page.IsPostBack)
     {
         _usuario = _usuarionegocio.ConsultarUsuario(Request.QueryString["login"].ToString());
         TextBoxNome.Text = _usuario.Nome;
         TextBoxLogin.Text = _usuario.Login;
         DropDownListTipo.Items.FindByValue(_usuario.Tipo.ToString()).Selected = true;
         TextBoxLogin.Enabled = false;
         Usuario usuario = (Usuario)Session["usuario"];
         if (!usuario.Login.Equals(_usuario.Login))
         {
             TextBoxNome.Enabled = false;
             TextBoxSenha.Enabled = false;
             TextBoxSenhaConfirma.Enabled = false;
         }
         DropDownListTipo.Enabled = usuario.Tipo == 1 ? true : false;//se o usuario é administrador ele pode mudar seu tipo
     }
 }