Ejemplo n.º 1
0
 public function salvar()
 {
     $is_unique = $this->input->post('idusuario') > 0 ? '' : '|is_unique[usuario.email]';
     $this->form_validation->set_rules('nome', 'Nome', 'trim|required|min_length[3]|max_length[50]');
     $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email|max_length[60]' . $is_unique, array('is_unique' => 'Este email já foi cadastrado, tente outro.'));
     if (!$this->input->post('idusuario')) {
         $this->form_validation->set_rules('senha', 'Senha', 'trim|required|max_length[50]|md5');
     }
     $this->form_validation->set_rules('sexo', 'Sexo', 'required', array('required' => 'Selecione uma opção.'));
     $this->form_validation->set_rules('idnivel', 'Nivel', 'required', array('required' => 'Selecione uma opção.'));
     if ($this->form_validation->run() == FALSE) {
         $this->view('cadastro');
     } else {
         $usuario_model = new Usuario_model();
         $usuario_model->setId($this->input->post('idusuario'));
         $usuario_model->nome = $this->input->post('nome');
         $usuario_model->email = $this->input->post('email');
         $usuario_model->senha = $this->input->post('senha');
         $usuario_model->sexo = $this->input->post('sexo');
         $usuario_model->idnivel = $this->input->post('idnivel');
         $fields = array('id', 'nome', 'email', 'sexo', 'idnivel');
         if (!$this->input->post('idusuario')) {
             $fields[] = 'senha';
         }
         $usuario_model->set_fields_update_only($fields);
         if ($usuario_model->salvar(FALSE)) {
             $this->session->set_flashdata('alerta', 'success_save');
             redirect('admin/usuario/conta/editar/' . $usuario_model->getId());
         } else {
             $this->session->set_flashdata('alerta', 'error_save');
             redirect('cadastro');
         }
     }
 }