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); } } }