Пример #1
0
 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();
 }
Пример #2
0
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.