/** * Método que lista todas as unidades de uma escola. Inclue todos os dados adicionais, como séries e turmas da escola * @param int $escola * @param int $unidade * @param int $ensino * @param int $serie * @param int $turma * @param int $area * @param int $equipe */ public function get_unidades($escola = 0, $unidade = 0, $ensino = 0, $serie = 0, $turma = 0, $area = 0, $equipe = 0) { $escola = filter_var($escola, FILTER_VALIDATE_INT); $unidade = filter_var($unidade, FILTER_VALIDATE_INT); $ensino = filter_var($ensino, FILTER_VALIDATE_INT); $serie = filter_var($serie, FILTER_VALIDATE_INT); $turma = filter_var($turma, FILTER_VALIDATE_INT); $area = filter_var($area, FILTER_VALIDATE_INT); $equipe = filter_var($equipe, FILTER_VALIDATE_INT); //Carregando os models $unidades = new Kernel_Models_Unidade(); $ensinos = $series = new Kernel_Models_Serie(); $materiaMae = new Kernel_Models_MateriaMae(); $public_materia = new Kernel_Models_Materia(); $turma = new Kernel_Models_Turma(); $unidadesLista = $unidades->select(); //Gerando a resposta $escolaObj = new stdClass(); $escolaObj->nome = 'Colégio GGE'; $escolaObj->unidades = array(); while ($unidadeFech = $unidadesLista->fetchObject()) { $unidadeObj = new stdClass(); $unidadeObj->nome = $unidadeFech->unidade_nome; $unidadeObj->ensinos = array(); $ensinosListar = $ensinos->ensinos($unidadeFech->pk_unidade); foreach ($ensinosListar as $ensinoKey => $ensinoFeth) { $ensinoObj = new stdClass(); $ensinoObj->nome = $ensinoFeth; $ensinoObj->series = array(); $seriesLista = $series->listarPorUnidade($unidadeFech->pk_unidade, $ensinoKey); while ($serieFeth = $seriesLista->fetchObject()) { $serieObj = new stdClass(); $serieObj->nome = $serieFeth->serie_nome; $serieObj->turmas = array(); $turmaLista = $turma->listarPorUnidadeSerie($unidadeFech->pk_unidade, $serieFeth->pk_serie, $ensinoKey); while ($turmaFeth = $turmaLista->fetchObject()) { $turmaObj = new stdClass(); $turmaObj->nome = $turmaFeth->turma_nome; $turmaObj->areas = array(); $areasListar = $materiaMae->areasDaNatureza($unidadeFech->pk_unidade, $ensinoKey, $serieFeth->pk_serie, $turmaObj->pk_turma); foreach ($areasListar as $areaKey => $areaFeth) { array_push($turmaObj->areas, $areaFeth); } array_push($turmaObj->areas, $areasListar); } } array_push($unidadeObj->ensinos, $ensinoObj); } array_push($escolaObj->unidades, $unidadeObj); } $this->appendResposta($escolaObj)->statusTrue()->setStatusCod(0)->printResposta(); }
/** * Método que gera a página contendo o relátorio anual da unidade informada */ public function relatorio_anual() { //Definindo as variaveis especiais para a impressão da página $conceitos = array("D" => "Deficiente", "I" => "Insuficiente", "R" => "Regular", "B" => "Bom", "L" => "Louvor"); $bimestres = array("1" => "1º Bimestre", "2" => "2º Bimestre", "3" => "3º Bimestre", "4" => "4º Bimestre"); $bimRomanos = array("1" => "I", "2" => "II", "3" => "III", "4" => "IV"); //Inicializando e definindo os filtros $this->filtro->initGets(array("unidade", "ano")); $this->setFiltrosList(array("unidade", "ano")); //Inicializando os objetos básicos da página $afa = new alunos_models_Afa(); $serie = new Kernel_Models_Serie(); //Fazendo as consultas básicas $ensinos = $serie->ensinos(); //Passando os dados para o view $this->setData("afa", $afa)->setData("ensinos", $ensinos)->setData("conceitos", $conceitos)->setData("bimestres", $bimestres)->setData("bimRomanos", $bimRomanos)->printView(); }
<?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * * @author Servidor */ $series = new Kernel_Models_Serie(); $seriesLista = $series->listarPorUnidade($filtros->unidade, $filtros->ensino); ?> <div class="form-group"> <select name="serie" class="filtro form-control"> <option value=""><?php echo $filtros->serie ? 'Todas as Séries' : 'Filtrar por Série'; ?> </option> <?php while ($row = $seriesLista->fetchObject()) { ?> <option value="<?php echo $row->pk_serie; ?> "<?php echo $row->pk_serie == $filtros->serie ? ' selected' : ''; ?> ><?php echo $row->serie_nome;
<?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * * @author Servidor */ $ensinos = new Kernel_Models_Serie(); $ensinosListar = $ensinos->ensinos($filtros->unidade); ?> <div class="form-group"> <select name="ensino" class="form-control filtro"> <option value=""><?php echo $filtros->materia ? 'Todos os Ensinos' : 'Filtrar por Ensino'; ?> </option> <?php foreach ($ensinosListar as $key => $value) { ?> <option value="<?php echo $key; ?> "<?php echo $key === $filtros->ensino ? ' selected' : ''; ?> ><?php echo $value;
/** * Método que permite editar a mensagem informada * @param int $mensagemId O código da mensagem a ser editada */ public function editar($mensagemId = 0) { //validando o ususário //Inicializando os objetos básicos $usrvalidar = new Kernel_Models_ValidarUsuarios(); $agenda = new docentes_models_AgendaSemanal(); $unidade = new Kernel_Models_Unidade(); $serie = new Kernel_Models_Serie(); $turma = new Kernel_Models_Turma(); $professor = new Kernel_Models_Professor(); //Trecho responsável pela edição da menasgem if ($_SERVER['REQUEST_METHOD'] == "POST") { try { $coordenador = $usrvalidar->getCoordenador(); //Verificando se a mensagem a ser editada é válida $agenda = $agenda->getMensagem((int) $mensagemId); $agenda->destinatariosReset(); //Recebendo os dados para o cadastro $titulo = filter_input(INPUT_POST, "assunto", FILTER_SANITIZE_MAGIC_QUOTES); $tipo = filter_input(INPUT_POST, "tipo", FILTER_VALIDATE_INT); $conteudo = filter_input(INPUT_POST, "mensagem", FILTER_SANITIZE_MAGIC_QUOTES); //Definindo os dados do objeto $agenda->setTitulo($titulo); $destinatariosValidos = $agenda->getDestinatariosValidos(); $agenda->setTipoDestinatarios($destinatariosValidos[$tipo]); //Lendo so destinatários de acordo com o tipo de destinatário selecionado $destinatarios = isset($_POST["desti{$tipo}"]) ? $_POST["desti{$tipo}"] : array(); $tipoDestinatario = $agenda->getTipoDestinatarios(); $tmp = new $tipoDestinatario(); foreach ($destinatarios as $destinatario) { $agenda->setDestinatarios($tmp->get((int) $destinatario)); } $agenda->setConteudo($conteudo); //fazendo o cadastro da mensagem $agenda->editar(); echo Javascript::alert("Mensagem editada com sucesso"); die(Javascript::window_location($this->rotas->rotaById(716))); } catch (Exception $exc) { echo Javascript::alert($exc->getMessage()); die(Javascript::history_back()); } } //Testando a mensagem informada try { $coordenador = $usrvalidar->coordenador(); $mensagem = $agenda->getMensagem((int) $mensagemId); $destinatarios = $mensagem->getDestinatarios(); $tipoDestinatarioId = array_search($mensagem->getTipoDestinatarios(), $mensagem->getDestinatariosValidos()); } catch (Exception $exc) { echo Javascript::alert($exc->getMessage()); die(Javascript::window_location($this->rotas->rotaById(932))); } //Passando os dados para a view $this->loadPlugin("tiny_mce")->setData("coordenador", $coordenador)->setData("professores", $professor->listarTodos(NULL, $coordenador))->setData("unidades", $unidade->listarTodas(NULL, $coordenador)->fetchAll(PDO::FETCH_CLASS))->setData("series", $serie->listarTodas(null, $coordenador)->fetchAll(PDO::FETCH_CLASS))->setData("turmas", $turma->listarTodas(null, $coordenador)->fetchAll(PDO::FETCH_CLASS))->setData("mensagem", $mensagem)->setData("tipoDestinatarioId", $tipoDestinatarioId)->setData("destinatarios", array_keys($destinatarios))->printView(); }
<?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * * @author Servidor */ $ensinos = new Kernel_Models_Serie(); $ensinosListar = $ensinos->ensinos($filtros, $usuarioParaFiltros); if ($ensinosListar->rowCount() > 1) { ?> <select name="ensino" class="filtro"> <option value=""><?php echo $filtros->validar(array("ensino")) ? 'Todos os Ensinos' : 'Selecionar Ensino'; ?> </option> <?php while ($ensinoFil = $ensinosListar->fetchObject()) { ?> <option value="<?php echo $ensinoFil->pk_ensino; ?> "<?php echo (int) $ensinoFil->pk_ensino === $filtros->getEnsino() ? ' selected' : ''; ?> ><?php echo $ensinoFil->nome_ensino;
<?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ /** * * @author Servidor */ $series = new Kernel_Models_Serie(); $seriesLista = $series->listarTodas($filtros, $usuarioParaFiltros); if ($seriesLista->rowCount() > 1) { ?> <select name="serie" class="filtro"> <option value=""><?php echo $filtros->validar(array("serie")) ? 'Todas as Séries' : 'Selecionar Série'; ?> </option> <?php while ($row = $seriesLista->fetchObject("Kernel_Models_Serie")) { ?> <option value="<?php echo $row->pk_serie; ?> "<?php echo $row->pk_serie == $filtros->getSerie() ? ' selected' : ''; ?> ><?php echo $row->nomeLimpo($filtros);
/** * Método que gera a página de ranking de uso do sap por parte dos professores */ public function listar_ranking_uso_sap() { $data = $this->getParametroVisao(); set_time_limit('300'); //Definições da página $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $this->getMsg(); $data['abaAtiva'] = 8; $data['abaPage'] = __FUNCTION__; $data['max_linhas'] = 30; $data['js'] = array('https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.21.5/js/jquery.tablesorter.min.js'); //Recebendo os parametros $data['pagina_indice'] = filter_input(INPUT_GET, 'pagina', FILTER_VALIDATE_INT); $data['nome_buscar'] = filter_input(INPUT_GET, 'buscar', FILTER_SANITIZE_MAGIC_QUOTES); $data['fk_unidade'] = filter_input(INPUT_GET, 'f_unidade', FILTER_VALIDATE_INT); $data['fk_serie'] = filter_input(INPUT_GET, 'f_serie', FILTER_VALIDATE_INT); $data['fk_turma'] = filter_input(INPUT_GET, 'f_turma', FILTER_VALIDATE_INT); // $unidades = $this->load->model('Unidades'); $unidades = new Kernel_Models_Unidade(); $series = new Kernel_Models_Serie(); $turmas = new Kernel_Models_Turma(); // $data['unidadesList'] = $unidades->listar(); $data['unidadesList'] = $unidades->unidades(); $data['seriesList'] = $series->listarPorUnidade($data['fk_unidade']); $data['turmasList'] = $turmas->listarPorUnidadeSerie($data['fk_unidade'], $data['fk_serie']); $sqlRanking = new RegistroFap(); $data['lista_professores'] = $sqlRanking->listarProfUsoRanking($data['nome_buscar'], $data['fk_unidade'], $data['fk_serie'], $data['fk_turma']); //Exibindo a view $this->load->view($this->load->getUrlTema(), $data); }
/** * Método que permite editar a mensagem informada * @param int $mensagemId O código da mensagem a ser editada */ public function editar($mensagemId = 0) { //validando o ususário //Inicializando os objetos básicos $usrvalidar = new Kernel_Models_ValidarUsuarios(); $agenda = new alunos_models_AgendaSemanal(); $serie = new Kernel_Models_Serie(); $turma = new Kernel_Models_Turma(); //Trecho responsável pela edição da menasgem if ($_SERVER['REQUEST_METHOD'] == "POST") { header('Content-Type: application/json; charset=UTF-8'); try { $coordenador = $usrvalidar->getCoordenador(); //Verificando se a mensagem a ser editada é válida $mensagem = $agenda->getMensagem((int) $mensagemId); $mensagem->destinatariosReset(); //Recebendo os dados $assunto = filter_input(INPUT_POST, "titulo", FILTER_SANITIZE_MAGIC_QUOTES); $turmas = isset($_POST["turmas"]) ? $_POST["turmas"] : "[]"; $conteudo = filter_input(INPUT_POST, "mensagem", FILTER_SANITIZE_MAGIC_QUOTES); //Passando os dados para o objeto $mensagem->setTitulo($assunto); $mensagem->setConteudo($conteudo); //Setando as turmas foreach (json_decode($turmas) as $turmaId) { $mensagem->setDestinatarios($turma->get((int) $turmaId)); } //Travando o unico tipo aceito $mensagem->setTipoDestinatarios("Kernel_Models_Turma"); $mensagem->editar(); die(json_encode(array("status" => true, "mensagem" => "Mensagem editada com sucesso"))); } catch (Exception $exc) { die(json_encode(array("status" => false, "mensagem" => $exc->getMessage(), "status_cod" => $exc->getCode()))); } } //Testando a mensagem informada try { $coordenador = $usrvalidar->coordenador(); $mensagem = $agenda->getMensagem((int) $mensagemId); $destinatarios = $mensagem->getDestinatarios(); } catch (Exception $exc) { echo Javascript::alert($exc->getMessage()); die(Javascript::window_location($this->rotas->rotaById(932))); } //Passando os dados para a view $this->loadPlugin("tiny_mce")->setData("coordenador", $coordenador)->setData("series", $serie->listarTodas(null, $coordenador))->setData("turmas", $turma->listarTodas(null, $coordenador))->setData("mensagem", $mensagem)->setData("destinatarios", array_keys($destinatarios))->printView(); }
/** * Exibe a página do relatório semanal do professor * @param type $pkUsuario * @return type Método que gera a página com o resumo semanal do professor */ public function meu_resumo_semanal($pkUsuario = FALSE) { $validarUser = new Kernel_Models_ValidarUsuarios(); $professor = $validarUser->professor($pkUsuario); $this->load->helper('andamento'); $aulas = new ModelBase("public.aula"); $registros = new Kernel_Models_Fap(); $contratos = new Kernel_Models_Contratos(); $agendasProf = new docentes_models_AgendaSemanal(); $centralNotifi = new Kernel_Models_Notificacoes(); $equipes = new Kernel_Models_Equipes(); $unidade = new Kernel_Models_Unidade(); $serie = new Kernel_Models_Serie(); //Definindo os dados do professor $fapRegistros = $registros->registrosDeProfessor($professor); $contratos->setUsuario($professor); $resposta = $contratos->getResposta($professor, 1); $ultAula = $aulas->select("fk_livro!=0 and fk_usuario=" . $professor->getId(), array(), "inner join usuario_professor on fk_usuario_professor=pk_usuario_professor", array("pk_aula"), array(), 1, 0, FALSE); if ($resposta == 2) { $this->appendJs('/themes/appjs/assets/js/agendas/professor/meu_resumo_semanal_contrato_prof.min.js'); } //Configurando as notificações $ids = array('novidades_docentes_fap', 'novidades_docentes_afa', 'novidades_docentes_acompanhamento', 'novidades_docentes_pesuisas_alunos', 'novidades_docentes_pesquisas_coord', 'novidades_docentes_diario_cl', 'novidades_docentes_mensagens'); $parametros = array('professorId' => (string) $professor->getId()); $centralNotifi->getUltimos($ids, $parametros); //Repassando os dados para o view $this->definirTema("appjs")->loadPlugin('bootstrap')->bowerLoad('metisMenu')->bowerLoad('angularjs')->loadPlugin('conceitos')->loadPlugin('notif.center')->setData('htmlBody', 'ng-app="app"')->setData('professor', $professor)->setData('unidades', $unidade->listarTodas(null, $professor))->setData("series", $serie->listarTodas(null, $professor))->setData('equipes', $equipes->listarTodas(null, $professor))->setData('fap', $fapRegistros)->setData('ultimaAula', $ultAula)->setdata('contrato', $resposta)->setData('temMensagem', $agendasProf->temMensagem($professor))->setData('ids', $ids)->setData('parametros', $parametros)->setData('centralNotifi', $centralNotifi)->setData('iconeNotif', base_url() . 'themes/geral/images/logo.png')->setData('arquivos', new Arquivos())->printView(); }