예제 #1
0
 public function vincular_materia($id = '')
 {
     $msg = null;
     if ($_SERVER['REQUEST_METHOD'] == "POST") {
         try {
             // View::validarFormAntInjection('cadastrar_materia_vin');
             $sqlGrade = new SqlGrade();
             $sqlGrade->vincular_materia_serie($this->input->post('pk_materia'), $this->input->post('fk_serie'));
             $this->session->set_flashdata('msg', '<p class="alert ok">Dados incluídos com sucesso!</a>');
             redirect(base_url() . 'configuracoes/grade/listar_materias/?&pk_serie=' . $this->input->post('fk_serie'));
             return false;
         } catch (Exception $e) {
             $msg = '<p class="alert erro">' . $e->getMessage() . '</p>';
         }
     } else {
         $data = $this->getParametroVisao();
         $data['page'] = 'home';
         $data['tema'] != '' ? $this->load->setTheme($data['tema']) : '';
         $data['msg'] = $this->getMsg();
         $data['abaAtiva'] = 1;
         $data['abaPage'] = 'vincular_materia';
         $pk_serie = $_GET['pk_serie'] != '' ? $_GET['pk_serie'] : 0;
         $sqlGrade = new SqlGrade();
         $result = $sqlGrade->listar_materias_not_in($pk_serie);
         $data['materias'] = $result['registros'];
         $data['total'] = count($result['registros']);
         if ($data['total'] > 0) {
             $this->load->library('table');
             $arrHead[] = 'Id';
             $arrHead[] = 'Título';
             $this->table->set_heading($arrHead);
             $count = 0;
             foreach ($result['registros'] as $row) {
                 $count++;
                 $this->load->library('util');
                 $tmpl = $this->util->zebrar($count, count($result['registros']));
                 $cell_1 = array('data' => '<input name="pk_materia[]" type="checkbox" value="' . $row['pk_materia'] . '" />', 'class' => 'tright');
                 $this->table->add_row($cell_1, $row['materia_nome']);
             }
             $this->table->set_template($tmpl);
         } else {
             $data['msg'] = '<div class="alert atencao">Todas as matérias cadastradas no sistema já foram incluídas na série escolhida.<br />Se a matéria que desejar incluir ainda não tiver sido cadastrada, <a href="' . base_url() . 'configuracoes/grade/cadastrar_materia">clique aqui</a>.</div>';
         }
         if ($this->input->is_ajax_request()) {
             $this->load->view($this->uri->segment(3), $data);
         } else {
             $this->load->view($this->load->getUrlTema(), $data);
         }
     }
 }