<commit_before><?php

/**
 *
 */
class Area extends CI_Controller {

  /**
   * Exibe todos os turnos cadastrados no banco de dados.
   * @author Thalita
   * @since 2017/09/25
   */
  function index () {
    
    $areas = Area_model::withTrashed()->get();
    $this->load->template('areas/areas',compact('areas'),'areas/js_areas');
  }

  function cadastrar () {
    $this->load->template('areas/areasCadastrar',[],'areas/js_areas');
  }

  /**
   * Salva uma nova area.
   * @author Thalita
   * @since 2017/09/26
   */
  public function salvar () {

    $this->form_validation->set_rules('codigo',
                                      'codigo',
                                      array('required',
                                            'max_length[2]',
                                            'is_unique[area.codigo]')                                            
                                     );
    $this->form_validation->set_rules('nome_area',
                                      'nome',
                                      array('required',
                                            'max_length[25]',
                                            'is_unique[area.nome_area]')
                                     );

    $this->form_validation->set_message('is_unique','O nome da área informada já está cadastrada');
    //$this->form_validation->set_error_delimiters('<span class="text-danger">','</span>');

         if($this->form_validation->run()){
            try {
                $area = new Area_model();
                $area->nome_area = $this->input->post('nome_area');
                $area->codigo = $this->input->post('codigo');
                $area->save();
                $this->session->set_flashdata('success','Área cadastrada com sucesso');
            } catch (Exception $ignored){
                $this->session->set_flashdata('danger','Problemas ao cadastrar a área, tente novamente!');
            }
            redirect('Area');
        }else{
            $this->cadastrar();
        }
    }
  

  /**
   * Formulário para alterar os dados da area
   * @author Thalita
   * @since 2017/09/25
   */
  function editar ($id) {
      $area = Area_model::withTrashed()->findOrFail($id);
      $this->load->template('areas/areasEditar',compact('area','id'),'areas/js_areas');
  }

  /**
   * Edita os dados da area no banco de dados.
   * @author Thalita
   * @since 2017/09/25
   */
  function atualizar ($id) {
     $this->form_validation->set_rules('codigo',
                                      'codigo',
                                      array('required',
                                            'max_length[2]',
                                             "is_unique_except[area.codigo,{$area->codigo}]")                                            
                                     );
    $this->form_validation->set_rules('nome_area',
                                      'nome',
                                      array('required',
                                            'max_length[25]',
                                             "is_unique_except[area.nome_area,{$area->nome_area}]")
                                     );


      if($this->form_validation->run()){
            try {
               Area_model::where('id', $id)
                            ->update([                                
                                "codigo"     => $this->input->post('codigo'),
                                "nome_area"  => $this->input->post('nome_area')
                            ]);
                $this->session->set_flashdata('success','Área atualizada com sucesso');
                redirect('Area');
            } catch (Exception $ignored){}
        }
        $this->session->set_flashdata('danger','Problemas ao atualizar os dados da área, tente novamente!');
        $this->editar($id);
    }
  }

  /**
   * Desativa uma area cadastrada no banco de dados.
   * @author Thalita
   * @param ID da area
   */
  function deletar ($id) {
    try {
      $area = Area_model::findOrFail($id);
      $area->delete();
<commit_msg>att controller editar e cadastrar<commit_after><?php

/**
 *
 */
class Area extends CI_Controller {

  /**
   * Exibe todos os turnos cadastrados no banco de dados.
   * @author Thalita
   * @since 2017/09/25
   */
  function index () {
    
    $areas = Area_model::withTrashed()->get();
    $this->load->template('areas/areas',compact('areas'),'areas/js_areas');
  }

  function cadastrar () {
    $this->load->template('areas/areasCadastrar',[],'areas/js_areas');
  }

  /**
   * Salva uma nova area.
   * @author Thalita
   * @since 2017/09/26
   */
  public function salvar () {

    $this->form_validation->set_rules('codigo',
                                      'codigo',
                                      array('required',
                                            'max_length[2]',
                                            'is_unique[area.codigo]')                                            
                                     );
    $this->form_validation->set_rules('nome_area',
                                      'nome',
                                      array('required',
                                            'max_length[25]',
                                            'is_unique[area.nome_area]')
                                     );

    $this->form_validation->set_message('is_unique','O código da área informada já está cadastrado');
    $this->form_validation->set_message('is_unique','O nome da área informada já está cadastrado');
    $this->form_validation->set_error_delimiters('<span class="text-danger">','</span>');

         if($this->form_validation->run()){
            try {
                $area = new Area_model();
                $area->nome_area = $this->input->post('nome_area');
                $area->codigo = $this->input->post('codigo');
                $area->save();
                $this->session->set_flashdata('success','Área cadastrada com sucesso');
            } catch (Exception $ignored){
                $this->session->set_flashdata('danger','Problemas ao cadastrar a área, tente novamente!');
            }
            redirect('Area');
        }else{
            $this->cadastrar();
        }
    }
  

  /**
   * Formulário para alterar os dados da area
   * @author Thalita
   * @since 2017/09/25
   */
  function editar ($id) {
      $area = Area_model::withTrashed()->findOrFail($id);
      $this->load->template('areas/areasEditar',compact('area','id'),'areas/js_areas');
  }

  /**
   * Edita os dados da area no banco de dados.
   * @author Thalita
   * @since 2017/09/25
   */
  function atualizar ($id) {
     $this->form_validation->set_rules('codigo',
                                      'codigo',
                                      array('required',
                                            'max_length[2]',
                                             "is_unique_except[area.codigo,{$area->codigo}]")                                            
                                     );
    $this->form_validation->set_rules('nome_area',
                                      'nome',
                                      array('required',
                                            'max_length[25]',
                                             "is_unique_except[area.nome_area,{$area->nome_area}]")
                                     );


      if($this->form_validation->run()){
            try {
               Area_model::where('id', $id)
                            ->update([                                
                                "codigo"     => $this->input->post('codigo'),
                                "nome_area"  => $this->input->post('nome_area')
                            ]);
                $this->session->set_flashdata('success','Área atualizada com sucesso');
                redirect('Area');
            } catch (Exception $ignored){}
        }
        $this->session->set_flashdata('danger','Problemas ao atualizar os dados da área, tente novamente!');
        $this->editar($id);
    }

  /**
   * Desativa uma area cadastrada no banco de dados.
   * @author Thalita
   * @param ID da area
   */
  function deletar ($id) {
    try {
      $area = Area_model::findOrFail($id);
      $area->delete();

{'fraction_non_alphanumeric': 0.13575525812619502, 'fraction_numerical': 0.009082217973231358, 'mean_word_length': 1.2594492440604752, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 111, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 60, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3723345', 'n_tokens_mistral': 2351, 'n_tokens_neox': 2226, 'n_words': 362}