protected void btnSalvar_Click(object sender, EventArgs e)
    {
        AdvogadoDB advDB    = new AdvogadoDB();
        Advogado   advogado = new Advogado();
        ContatoDB  conDB    = new ContatoDB();
        Contato    contato  = new Contato();
        EnderecoDB endDB    = new EnderecoDB();
        Endereco   endereco = new Endereco();
        int        id       = Convert.ToInt32(Session["Advogado"]);
        string     email    = contato.Email;
        string     cpf      = advogado.Cpf;
        string     rg       = advogado.Rg;
        string     login    = advogado.UserName;

        advogado = advDB.Select(id);
        contato  = conDB.SelectContato(advogado.ContatoPessoa.Codigo);
        endereco = endDB.Select(advogado.Endereco.Codigo);

        if (string.IsNullOrWhiteSpace(txtNome.Text))
        {
            txtNome.Focus();
            lblMensagem.Text = "Insira um Nome";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (string.IsNullOrWhiteSpace(txtCelular.Text) && string.IsNullOrWhiteSpace(txtTelefone.Text))
        {
            txtCelular.Focus();
            lblMensagem.Text = "Insira ao menos um telefone";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (ValidaDoc.ValidaCPF(txtCPF.Text) == false)
        {
            txtCPF.Focus();
            lblMensagem.Text = "Insira um CPF Valido";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (string.IsNullOrWhiteSpace(txtRg.Text) || txtRg.Text.Length < 12)
        {
            txtRg.Focus();
            lblMensagem.Text = "Insira um RG Valido";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (string.IsNullOrWhiteSpace(txtOab.Text))
        {
            txtOab.Focus();
            lblMensagem.Text = "Insira um numero da OAB";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (Convert.ToDateTime(txtDataNascimento.Text) >= DateTime.Today)
        {
            txtDataNascimento.Focus();
            lblMensagem.Text = "Insira uma data de nascimento valida";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (ddlSexo.SelectedItem.Text == "Selecione")
        {
            ddlSexo.Focus();
            lblMensagem.Text = "Selecione o Sexo";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (ddlEstado.SelectedItem.Text == "Selecione")
        {
            ddlEstado.Focus();
            lblMensagem.Text = "Selecione um estado";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (ddlCidade.SelectedItem.Text == "Selecione")
        {
            ddlCidade.Focus();
            lblMensagem.Text = "Selecione uma cidade";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (string.IsNullOrWhiteSpace(txtEmail.Text))
        {
            txtEmail.Focus();
            lblMensagem.Text = "Insira um Email";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (string.IsNullOrWhiteSpace(txtLogin.Text))
        {
            txtLogin.Focus();
            lblMensagem.Text = "Insira um Nome de usuario";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (advDB.ValidaLogin(txtLogin.Text) != null && login != txtLogin.Text)
        {
            txtLogin.Focus();
            lblMensagem.Text = "Insira um Email";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (advDB.ValidaRG(txtRg.Text) != null && rg != txtRg.Text)
        {
            txtRg.Focus();
            lblMensagem.Text = "Insira um Email";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (advDB.ValidaCPF(txtCPF.Text) != null && cpf != txtCPF.Text)
        {
            txtCPF.Focus();
            lblMensagem.Text = "Insira um Email";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else if (conDB.ValidaEmail(txtEmail.Text) != null && email != txtEmail.Text)
        {
            txtEmail.Focus();
            lblMensagem.Text = "Insira um Email";
            divMensagem.Attributes["class"] = "alert alert-danger";
        }
        else
        {
            advogado.Cpf            = txtCPF.Text;
            advogado.Rg             = txtRg.Text;
            advogado.DataNascimento = Convert.ToDateTime(txtDataNascimento.Text);
            advogado.OAB            = txtOab.Text;
            advogado.UserName       = txtLogin.Text;
            advogado.Sexo           = ddlSexo.SelectedItem.Value;

            EstadoCivil estCivil = new EstadoCivil();
            estCivil.Codigo      = Convert.ToInt32(ddlEstadoCivil.SelectedItem.Value);
            advogado.EstadoCivil = estCivil;



            contato.Nome     = txtNome.Text;
            contato.Telefone = txtTelefone.Text;
            contato.Celular  = txtCelular.Text;
            contato.Email    = txtEmail.Text;



            endereco.Logradouro  = txtEndereco.Text;
            endereco.Bairro      = txtBairro.Text;
            endereco.Complemento = txtComplemento.Text;
            endereco.Numero      = txtNumero.Text;
            endereco.Cep         = txtCEP.Text;

            CidadeDB cidDB  = new CidadeDB();
            Cidade   cidade = new Cidade();
            cidade.Codigo   = Convert.ToInt32(ddlCidade.SelectedValue);
            endereco.Cidade = cidade;

            endDB.Update(endereco);
            conDB.Update(contato);

            if (advDB.Update(advogado))
            {
                lblMensagem.Text = "Dados atualizados";
                divMensagem.Attributes["class"] = "alert alert-success";
            }
            else
            {
                lblMensagem.Text = "Advogado não foi atualizado";
                divMensagem.Attributes["class"] = "alert alert-danger";
            }
        }
    }
    private bool ValidaADV(Label lbl)
    {
        AdvogadoDB advDB = new AdvogadoDB();
        ContatoDB  conDB = new ContatoDB();

        if (string.IsNullOrWhiteSpace(txtNome.Text))
        {
            lbl.Text = "Insira o nome";
        }
        else if (string.IsNullOrWhiteSpace(txtCelular.Text) && string.IsNullOrWhiteSpace(txtTelefone.Text))
        {
            lbl.Text = "Insira ao menos um telefone";
        }
        else if (string.IsNullOrWhiteSpace(txtCPF.Text) || ValidaDoc.ValidaCPF(txtCPF.Text) == false)
        {
            lbl.Text = "Insira um CPF Valido";
        }
        else if (string.IsNullOrWhiteSpace(txtRg.Text) || txtRg.Text.Length < 12)
        {
            lbl.Text = "Insira um RG Valido";
        }
        else if (string.IsNullOrWhiteSpace(txtOab.Text))
        {
            lbl.Text = "Insira um numero da OAB";
        }
        else if (Convert.ToDateTime(txtDataNascimento.Text) >= DateTime.Today)
        {
            lbl.Text = "Insira uma data de nascimento valida";
        }
        else if (ddlSexo.SelectedItem.Text == "Selecione")
        {
            lbl.Text = "Selecione o Sexo";
        }
        else if (ddlEstado.SelectedItem.Text == "Selecione")
        {
            lbl.Text = "Selecione um estado";
        }
        else if (ddlCidade.SelectedItem.Text == "Selecione")
        {
            lbl.Text = "Selecione uma cidade";
        }
        else if (ddlEstadoCivil.SelectedItem.Text == "Selecione")
        {
            lbl.Text = "Selecione um estado civil";
        }
        else if (string.IsNullOrWhiteSpace(txtEmail.Text))
        {
            lbl.Text = "Insira um Email";
        }
        else if (string.IsNullOrWhiteSpace(txtLogin.Text))
        {
            lbl.Text = "Insira um Nome de usuario";
        }
        else if (string.IsNullOrWhiteSpace(txtSenha.Text) || string.IsNullOrWhiteSpace(txtConfirmaSenha.Text))
        {
            lbl.Text = "Insira sua senha";
        }
        else if (advDB.ValidaCPF(txtCPF.Text) != null)
        {
            lbl.Text = "CPF já cadastrado!";
        }
        else if (advDB.ValidaRG(txtRg.Text) != null)
        {
            lbl.Text = "RG já cadastrado!";
        }
        else if (advDB.ValidaOAB(txtOab.Text) != null)
        {
            lbl.Text = "OAB já cadastrado!";
        }
        else if (conDB.ValidaEmail(txtEmail.Text) != null)
        {
            lbl.Text = "Email já cadastrado!";
        }
        else if (advDB.ValidaLogin(txtLogin.Text) != null)
        {
            lbl.Text = "Login já cadastrado!";
        }
        else
        {
            return(true);
        }
        divmensagem.Attributes["class"] = "alert alert-danger";
        return(false);
    }