$paciente["pathFoto"] = "imagens/user.gif"; } else { $paciente["pathFoto"] = "uploads/pacientes/" . $paciente["id"] . '/' . $paciente["foto"]; } echo json_encode($paciente); break; case 'cadastra': try { $dados = $_POST["dados"]; $fisioterapeutasMarcados = !empty($dados["fisioterapeutas"]) ? explode(",", $dados["fisioterapeutas"]) : array(); $fisioterapeutasAtuaisIds = $fisioterapeutas = $indisponiveis = array(); // verifica disponibilidade de horário para cada fisioterapeuta marcado foreach ($fisioterapeutasMarcados as $f) { list($nome, $id) = explode("-", $f); $fisioterapeutas[] = $id; $quantidadeCompromissos = $dao->count($conexao->getConexao(), "agenda", array("leftJoin" => array("agenda_fisioterapeutas" => "agenda_fisioterapeutas.compromisso = agenda.id"), "where" => array("agenda.data" => $dados["data"], "agenda.hora" => $dados["hora"], "agenda_fisioterapeutas.fisioterapeuta" => $id), "whereNot" => array("agenda.id" => $dados["id"]))); if ($quantidadeCompromissos > 0) { $indisponiveis[] = $nome; } } if (count($indisponiveis) > 0) { echo json_encode(array('type' => 'danger', 'message' => 'Já existe(m) compromisso(s) para ' . implode(', ', $indisponiveis) . ' nesta mesma data e horário.')); exit; } // verifica se precisa cadastrar o paciente $existe = function ($dao, $conexao, $nome) { return $dao->count($conexao, "pacientes", array('where' => array('nome' => $nome))) > 0; }; $mensagem = ''; if (!$existe($dao, $conexao->getConexao(), $dados['nomePaciente'])) { $timestamp = time();