public function indexAction() { try { $conexao = $this->conexao->getConexao(); $breadcrumbs = array(); $breadcrumbs[] = array("Agenda" => ""); $quantidadePorPagina = isset($_GET["exibir"]) ? (int) $_GET["exibir"] : QUANTIDADE_POR_PAGINA; $pagina = isset($_GET["p"]) ? $_GET["p"] : 1; $pagina = $pagina <= 0 ? 1 : $pagina; $limit = $pagina == 1 ? $quantidadePorPagina : $quantidadePorPagina * ($pagina - 1); $offset = $pagina == 1 ? 0 : $quantidadePorPagina; $order = array("data" => "desc"); if (isset($_GET['order'])) { $order = array($_GET['order'] => "asc"); } $quantidade = 0; $objetos = array(); $compromissos = array(); $mes = date('m'); $ano = date('Y'); $dia = date('d'); $objetos = $this->dao->findAll($conexao, "agenda", array("dados" => array("agenda.id", "agenda.tipo", "agenda.data", "agenda.hora", "agenda.dia", "agenda.mes", "agenda.ano", "agenda.telefoneResidencial", "agenda.telefoneCelular", "agenda.lembrete", "agenda.observacoes", "agenda.ano", "agenda.nomePaciente", "agenda.marcador", "CONCAT_WS('T', agenda.data, agenda.hora) as timestamp"), "where" => array("agenda.mes" => $mes, "agenda.ano" => $ano, "agenda_fisioterapeutas.fisioterapeuta" => 2), "leftJoin" => array("agenda_fisioterapeutas" => "agenda.id = agenda_fisioterapeutas.compromisso"), "order" => array("agenda.hora" => "asc"))); $fisioterapeutas = $this->dao->findAll($conexao, "vw_usuarios", array("where" => array("permissao" => Permissao::PERMISSAO_FISIOTERAPEUTA), "order" => array("nome" => "asc"))); $fisioterapeuta = $this->dao->findByPk($conexao, "vw_usuarios", 2); $fisioterapeuta["diasAtendimento"] = !empty($fisioterapeuta["diasAtendimento"]) ? explode(",", $fisioterapeuta["diasAtendimento"]) : array(); // recupera os pacientes para o autocomplete $pacientes = $this->dao->findAll($conexao, "pacientes"); $pacientesArr = array(); foreach ($pacientes as $paciente) { $pacientesArr[] = '"' . $paciente["nome"] . '"'; } $mesAtual = rangeMonth($ano . '-' . $mes . '-' . $dia); for ($i = $mesAtual["start"]; $i <= $mesAtual["end"]; $i++) { foreach ($objetos as $objeto) { if ($objeto["dia"] == $i) { $compromissos[(int) $i][$objeto["hora"]] = $objeto; } } } } catch (Exception $e) { setMensagem("error", $e->getMessage()); } $conexao->disconnect(); $view = new View($_GET["modulo"], "extendido", "index.phtml"); $view->setParams(array("title" => getTitulo($breadcrumbs), "compromissos" => $compromissos, "fisioterapeutas" => $fisioterapeutas, "fisioterapeuta" => $fisioterapeuta, "pacientes" => implode(",", $pacientesArr), "quantidade" => $quantidade, "quantidadePorPagina" => $quantidadePorPagina, "pagina" => $pagina, "breadcrumbs" => $breadcrumbs, "dia" => $dia, "mes" => $mes, "ano" => $ano, "holidays" => Funcoes::getFeriados($mes, $ano))); $view->showContents(); }
header("Access-Control-Allow-Origin: *"); require_once "../../config.php"; $conexao = new Conexao(); $compromissos = array(); $dao = new DAOGenerico(); if (isset($_POST['data'])) { list($ano, $mes, $dia) = explode("-", $_POST["data"]); } else { $dia = 1; $mes = $_POST["mes"]; $ano = $_POST["ano"]; } $prevData = date('Y-m-d', mktime(0, 0, 0, $mes - 1, 1, $ano)); $nextData = date('Y-m-d', mktime(0, 0, 0, $mes + 1, 1, $ano)); $where = array("agenda.mes" => $mes, "agenda.ano" => $ano); $holidays = Funcoes::getFeriados($mes, $ano); if (!empty($_POST["fisioterapeuta"])) { $idFisioterapeuta = $where["agenda_fisioterapeutas.fisioterapeuta"] = $_POST["fisioterapeuta"]; $fisioterapeuta = $dao->findByPk($conexao->getConexao(), "vw_usuarios", (int) $_POST["fisioterapeuta"]); $fisioterapeuta["diasAtendimento"] = !empty($fisioterapeuta["diasAtendimento"]) ? explode(",", $fisioterapeuta["diasAtendimento"]) : array(); } $objetos = $dao->findAll($conexao->getConexao(), "agenda", array("dados" => array("agenda.id", "agenda.tipo", "agenda.data", "agenda.hora", "agenda.dia", "agenda.mes", "agenda.ano", "agenda.telefoneResidencial", "agenda.telefoneCelular", "agenda.lembrete", "agenda.observacoes", "agenda.nomePaciente", "agenda.marcador", "CONCAT_WS('T', agenda.data, agenda.hora) as timestamp"), "where" => $where, "leftJoin" => array("agenda_fisioterapeutas" => "agenda.id = agenda_fisioterapeutas.compromisso"), "order" => array("agenda.hora" => "asc"))); $mesRange = rangeMonth($ano . "-" . $mes . "-01"); for ($i = $mesRange["start"]; $i <= $mesRange["end"]; $i++) { foreach ($objetos as $objeto) { if ($objeto["dia"] == $i) { $compromissos[(int) $i][$objeto["hora"]] = $objeto; } } } // Create array containing abbreviations of days of week.