function Main() { $u = unserialize($_SESSION['usu']); $tpl = file_get_contents("tpl/frm-montagem.html"); $botoes = ""; //$botoes = Botao::BotaoSalvar("fntSalvaMontagem();", "Salvar a montagem atual"); $botoes .= Botao::BotaoAdd("fntAddFolha();", "@lng[Adicionar o item selecionado a montagem]"); $botoes .= Botao::BotaoExcluir("fntRemoverItemMontagem()", "@lng[Remover o item selecionado da montagem]"); $botoes .= Botao::BotaoConfigs("fntMostraConfigs();", "@lng[Permite modificar as configurações do item selecionado]"); //$botoes .= Botao::BotaoSalvar("fntSalvaConfigs();", "Salvar as configurações do item selecionado"); $botoes .= Botao::BotaoCancelar("fntVoltaTelaOpcoes();", "@lng[Voltar para a tela inicial do caso]"); $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $rais = $mon->ExisteArvore(); if (is_null($rais)) { $rais = $mon->AddRais(); } $arvore = $mon->RetornaArvoreLista(); $anexos = $mon->RetornaComboConteudosExtras(); if ($arvore != false) { //echo($arvore); //return; $tpl = str_replace("<!--arvore-->", $arvore, $tpl); } else { $tpl = str_replace("<!--arvore-->", $mon->getErro(), $tpl); } $tpl = str_replace("<!--selConteudos-->", $anexos, $tpl); $tpl = str_replace("<!--telatopo-->", Comuns::GeraTopoPagina($u), $tpl); $tpl = str_replace("<!--itens-toolbar-->", $botoes, $tpl); echo Comuns::Idioma($tpl); }
function Main() { header('Content-Type: text/html; charset=iso-8859-1'); if (isset($_SESSION['caso']) && $_SESSION['caso'] > 0) { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); if ($_REQUEST['a'] == "inc") { $ok = true; $erro = ""; $sTipo = $_POST['item']; $sIdPai = split("_", $_POST['pai']); $sOrg = $_POST['org']; $iOrd = $_POST['ord']; $sRegPai = $sIdPai[3]; if (isset($_POST['cont']) && !is_null($_POST['cont']) && $_POST['cont'] != "") { $iContRefe = $_POST['cont']; } else { $iContRefe = $sIdPai[1]; } $sChave = $mon->AddItem($sTipo, $iOrd, $sRegPai, $iContRefe, $sOrg); if ($sChave != false) { Log::RegistraLog("Adicionado o item " . $sChave . " à montagem do caso clínico"); echo $sChave; } else { Log::RegistraLog("Erro ao tentar adicionado um item à montagem do caso clínico. Detalhes: " . $mon->getErro()); echo "ERRO: " . $mon->getErro(); } } else { if ($_REQUEST['a'] == "rem") { $idNodo = $_POST['nodo']; $itens = split("_", $idNodo); $chave = $itens[3]; if ($mon->ExcluiItem($chave)) { Log::RegistraLog("Removido o item " . $chave . " da montagem do caso clínico"); echo "OK"; } else { Log::RegistraLog("Erro ao tentar remover o item " . $chave . " da montagem do caso clínico. Detalhes: " . $mon->getErro()); echo "ERRO: " . $mon->getErro(); } } else { if ($_REQUEST['a'] == "mov") { $idNodo = $_POST['nodo']; $idNodoPai = $_POST['nodopai']; $posAnt = $_POST['posant']; $posNova = $_POST['posnova']; $itens = split("_", $idNodo); $itensPai = split("_", $idNodoPai); $chave = $itens[3]; $chavePai = $itensPai[3]; if ($mon->ReordenaItem($chave, $chavePai, $posAnt, $posNova)) { Log::RegistraLog("O item " . $chave . " foi reordenado da posição " . $posAnt . " para a posição " . $posNova . " na montagem do caso clínico"); echo "OK"; } else { Log::RegistraLog("Erro ao tentar mover o item " . $chave . " na montagem do caso clínico. Detalhes: " . $mon->getErro()); echo "ERRO: " . $mon->getErro(); } } else { if ($_REQUEST['a'] == "par") { $idNodo = $_POST['nodo']; $itens = split("_", $idNodo); $chave = $itens[3]; $erro = false; $deserro = ""; foreach ($_POST as $campo => $valor) { if (stripos($campo, "Config") !== false) { $campo = split("_", $campo); $config = $campo[1]; if (substr($campo[0], 0, 3) == "txt") { $valor = urldecode($valor); } if (!$mon->SalvaParamItem($chave, $config, $valor)) { $erro = true; Log::RegistraLog("Erro ao tentar gravar a configuração. Caso: " . $_SESSION['caso'] . ". Item: " . $chave . ". Config: " . $config . ". Valor: " . $valor . ". Erro: " . $mon->getErro()); $deserro .= ($deserro != "" ? "\r\n" : "") . $mon->getErro(); } else { Log::RegistraLog("Gravada configuração para o item " . $chave . " na montagem do caso " . $_SESSION['caso'] . ". Config: " . $config . ". Valor: " . $valor); } } } if ($erro) { echo "ERRO: " . $deserro; } else { echo "OK"; } } else { if ($_REQUEST['a'] == "retpar") { //cont_an_0_129120D92796F7AF13882551731A996C $idNodo = $_POST['nodo']; $itens = split("_", $idNodo); $tipo = $itens[1]; $chave = $itens[3]; Log::RegistraLog("Tipo do item informado: " . $tipo . ". Chave informada: " . $chave); $xmlconfigs = $mon->RetornaConfigs($tipo, $chave); $saltos = $mon->RetornaListaConfSaltos($chave); $anexos = $mon->RetornaListaConfAnexos($chave); $ret = ""; if ($xmlconfigs !== false) { $ret = $xmlconfigs; } if ($saltos !== false) { $ret .= '<divDesviosSalvos>' . $saltos . '</divDesviosSalvos>'; } if ($anexos !== false) { $ret .= '<divAnexosSalvos>' . $anexos . '</divAnexosSalvos>'; } echo Comuns::Idioma($ret); } } } } } } else { echo "ERRO: @lng[Caso não informado]"; } }
function Main() { header('Content-Type: text/html; charset=iso-8859-1'); if (isset($_SESSION['caso']) && $_SESSION['caso'] > 0) { if ($_POST['tip'] == "tree") { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $html = $mon->RetornaArvoreLista(); if ($html) { $html = str_replace('<div id="tree">', '<div id="' . $_POST['id'] . '">', $html); } else { $html = "ERRO: " . $mon->getErro(); } echo $html; } else { if ($_POST['tip'] == "opts") { if (!$_POST['perg']) { $res = new Resolucao(); $res->setCodcaso($_SESSION['caso']); $hash = $res->BuscaConteudoPelaChave($_POST['nodo'], true); if ($hash != false) { echo $hash->ToXML(); } else { echo "ERRO. Hash voltou false"; } } else { $pergunta = new Pergunta(); $pergunta->Carregar($_POST['perg']); if ($pergunta->getTipo()->getCodigo() == 1) { $cont = 1; foreach ($pergunta->getAlternativas() as $alternativa) { $html .= '<div class="alt-img">'; $html .= '<input type="checkbox" name="rdoAlternativa_' . $pergunta->getCodigo() . '[]" id="rdoAlt_' . $pergunta->getCodigo() . '_' . $cont . '" value="' . $alternativa->getCodBinario() . '" class="opcao-resposta" />' . $alternativa->getTexto(); $html .= '<div id="img"><img src="' . $alt->getImagem() . '" alt="' . $alt->getTexto() . '" title="' . $alt->getTexto() . '" class="img-preview" /></div>'; $html .= '</div>'; $cont++; } } else { $cont = 1; foreach ($pergunta->getAlternativas() as $alternativa) { $html .= '<div class="alt-txt">'; $html .= '<input type="checkbox" name="rdoAlternativa_' . $pergunta->getCodigo() . '[]" id="rdoAlt_' . $pergunta->getCodigo() . '_' . $cont . '" value="' . $alternativa->getCodBinario() . '" class="opcao-resposta" />' . $alternativa->getTexto(); $html .= '</div>'; $cont++; } } echo '<conteudo>' . $html . '</conteudo>'; } } else { if ($_POST['tip'] == 'pergs') { //$arrNodo = split("_", $_POST['nodo']); Log::RegistraLog("Vai consultas as perguntas vinculadas ao nodo: " . $arrNodo[3]); $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $lista = $mon->ListaPerguntasNodo($_POST['nodo']); if ($lista) { $html .= '<option value="-1">@lng[Selecione]</option>'; foreach ($lista as $perg) { $html .= '<option value="' . $perg->Codigo . '">' . substr($perg->Texto, 0, 100) . '</option>'; } } else { $html .= '<option>' . $mon->getErro() . '</option>'; } echo $html; } else { if ($_POST['tip'] == 'salvacond') { $arrNodoAtual = split("_", $_POST['nodoatual']); $arrNodoDestino = split("_", $_POST['nododes']); if ($_POST['nodocond']) { $arrNodoCond = split("_", $_POST['nodocond']); $strChaveCond = $arrNodoCond[3]; if ($_POST['perg']) { $intPerg = $_POST['perg']; } else { $intPerg = null; } $intResp = $_POST['resp']; } else { $strChaveCond = null; $intResp = null; $intPerg = null; } $strChaveAtual = $arrNodoAtual[3]; $strChaveDestino = $arrNodoDestino[3]; $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $desvio = $mon->InsereSalto($strChaveAtual, $strChaveDestino, $strChaveCond, $intPerg, $intResp); if ($desvio) { $html = $mon->RetornaListaConfSaltos($strChaveAtual); if ($html) { echo $html; } else { echo "ERRO: " . $mon->getErro(); } } else { echo "ERRO: " . $mon->getErro(); } } else { if ($_POST['tip'] == 'mudaprior') { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); if ($mon->AlteraPrioridadeSalto($_POST['mm'], base64_decode($_POST['chaveOri']), base64_decode($_POST['chaveDest']))) { echo $mon->RetornaListaConfSaltos(base64_decode($_POST['chaveOri'])); } else { echo "ERRO: " . $mon->getErro(); } } else { if ($_POST['tip'] == 'delsalto') { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); if ($mon->DeletaSalto(base64_decode($_POST['chaveOri']), base64_decode($_POST['chaveDest']))) { echo $mon->RetornaListaConfSaltos(base64_decode($_POST['chaveOri'])); } else { echo "ERRO: " . $mon->getErro(); } } else { if ($_POST['tip'] == 'vincanexo') { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $nodo = $_POST['item']; $cont = $_POST['cont']; $strTipoCont = substr($cont, 0, 1); $arr = split("_", $nodo); $u = unserialize($_SESSION['usu']); if ($mon->InsereAnexo($arr[3], base64_decode(substr($cont, 1)), $strTipoCont, $u->getCodigo())) { echo $mon->RetornaListaConfAnexos($arr[3]); } else { echo 'ERRO: ' . $mon->getErro(); } } else { if ($_POST['tip'] == 'delanexo') { $mon = new Montagem(); $mon->setCodCaso($_SESSION['caso']); $nodo = base64_decode($_POST['item']); $cont = $_POST['cont']; $strTipoCont = substr($cont, 0, 1); //$arr = split("_", $nodo); //die("ERRO: " . $nodo . ' ' . base64_decode(substr($cont, 1))); if ($mon->DeletaAnexo($nodo, base64_decode(substr($cont, 1)), $strTipoCont)) { $listagem = $mon->RetornaListaConfAnexos($nodo); if ($listagem !== false) { echo $listagem; } else { echo "ERRO: " . $mon->getErro(); } } else { echo 'ERRO: ' . $mon->getErro(); } } } } } } } } } } else { echo "ERRO: @lng[Caso não informado]"; } }
function Main() { //header('Content-Type: text/html; charset=iso-8859-1'); if (!$_GET['c']) { if (!isset($_SESSION['casores']) || is_null('casores')) { $msg = base64_encode("@lng[Não foi informado nenhum caso de estudo]"); header("Location:aluno.php?msg=" . $msg); } } else { if (Caso::CasoValido(base64_decode($_GET['c']))) { $_SESSION['casores'] = base64_decode($_GET['c']); $_SESSION['status'] = false; $_SESSION['codresolucao'] = null; } else { $msg = base64_encode("@lng[Caso de estudo informado não é um caso válido]"); header("Location:aluno.php?msg=" . $msg); } } $u = unserialize($_SESSION['usu']); //$u = new Usuario(); $tpl = file_get_contents("tpl/frm-resolucao-off.html"); // Armazena a árvore de forma oculta $mon = new Montagem(); $mon->setCodCaso($_SESSION['casores']); $arvore = $mon->RetornaArvoreLista(); $tpl = str_replace("<!--arvore-->", $arvore, $tpl); $res = new Resolucao(); $res->setCodcaso($_SESSION['casores']); $res->setCodusuario($u->getCodigo()); if ($_GET['m'] == 'pre') { $tpl = str_replace("<!--region_close_preview-->", file_get_contents("tpl/close-preview.html"), $tpl); if ($_GET['t'] == 'I') { if ($u->TemGrupo(1) || $u->TemGrupo(4)) { if (Caso::ConsultaSituacao($_SESSION['casores']) == 0) { if (!$res->LimpaResolucao()) { echo Comuns::Idioma("@lng[Erro ao limpar histórico de resoluções.]") . " " . $res->getErro(); return; } } else { echo Comuns::Idioma("@lng[Este caso está publicado e não é possível lipar suas resoluções]"); return; } } else { echo Comuns::Idioma("@lng[Você não tem permissõo para excluir as resoluções deste caso]"); return; } } } if (!$_SESSION['status']) { $_SESSION['status'] = $res->BuscaStatusAndamento(); $raiz = ""; if ($_SESSION['status'] == 1) { $raiz = $res->BuscaNodoRaiz(); $raiz = "fntInicia('raiz_raiz_0_" . $raiz . "');"; $res->IniciaResolucao(); } else { if ($_SESSION['status'] == 2) { if ($_SESSION['codresolucao'] == null) { if ($_GET['r']) { if (Resolucao::ResolucaoValida($_SESSION['casores'], $u->getCodigo(), base64_decode($_GET['r']))) { $_SESSION['codresolucao'] = base64_decode($_GET['r']); } else { $msg = base64_encode("@lng[Dados informados inválidos]"); header("Location:aluno.php?msg=" . $msg); } } else { $codresolucao = Resolucao::BuscaUltimaResolucaoCaso($_SESSION['casores'], $u->getCodigo(), $_SESSION['status']); if ($codresolucao !== false) { $_SESSION['codresolucao'] = $codresolucao; } else { $msg = base64_encode("@lng[Não foi possível localilzar a resolução deste caso]"); header("Location:aluno.php?msg=" . $msg); } } } $res->setCodresolucao($_SESSION['codresolucao']); $res->RegistraAcesso($u->getIdAcessoAtual()); $raiz = $res->BuscaUltimoNodoVisitado(); if ($raiz !== false) { if ($raiz != -1) { $strPossiveis = $res->BuscaTodosMenosUltimoVisitado(); if ($strPossiveis !== false) { $strJaVisitados = $res->BuscaTodosNodosVisitados(); Log::RegistraLog("Nodos possíveis para o caminho de volta: " . $strPossiveis); $raiz = "fntInicia('" . $raiz . "'); fntGeraCaminhoVolta('" . $strPossiveis . "'); fntGeraVisitados('" . $strJaVisitados . "');"; } else { // Se não retornou nenhum é porque o ultimo visto foi a raiz e dai não precisa gerar histórico de volta $raiz = "fntInicia('" . $raiz . "');"; } } else { $raiz = $res->BuscaNodoRaiz(); $raiz = "fntInicia('raiz_raiz_0_" . $raiz . "');"; } } else { $msg = base64_encode("@lng[Erro durante a recuperação das informações.]" . $res->getErro()); header("Location:aluno.php?msg=" . $msg); } } else { if ($_SESSION['status'] == 3) { if ($_GET['re'] && $_GET['re'] == true) { $raiz = $res->BuscaNodoRaiz(); $raiz = "fntInicia('raiz_raiz_0_" . $raiz . "');"; $res->IniciaResolucao(); } else { header("Location:vwopcoescaso.php?c=" . base64_encode($_SESSION['casores'])); } } else { $_SESSION['status'] = false; die("Inconsistencia localizada. " . $res->getErro()); } } } if ($u->getNome() == "Anonimo") { $raiz .= "fntOcultaHome();"; } $tpl = str_replace("<!--javascriptload-->", $raiz, $tpl); } // Busca o nome do caso clínico $infos = Caso::ConsultaInfosCaso($_SESSION['casores']); $tpl = str_replace("<!--titulocaso-->", $infos['nome'], $tpl); echo Comuns::Idioma($tpl); }