예제 #1
0
function fntProcessaDadosBasicos()
{
    $codcaso = $_SESSION['caso'];
    $ext = strtolower(substr($_FILES['foto']['name'], -4));
    //Pegando extensão do arquivo
    $new_name = date("Y.m.d-H.i.s") . $ext;
    //Definindo um novo nome para o arquivo
    $dir = '../img/';
    //Diretório para uploads
    $tpm_name = $_FILES['foto']['tmp_name'];
    $_SESSION['new_name'] = $new_name;
    $_SESSION['dir'] = $dir;
    $_SESSION['tpm_name'] = $tpm_name;
    $nome = $_POST['txtNome'];
    $descricao = stripslashes(urldecode($_POST['txtDescricao']));
    $area = $_POST['selArea'];
    $nivel = $_POST['selNivelDif'];
    $feed = $_POST['selFeedback'];
    $ativo = $_POST['selAtivo'];
    $sexo = $_POST['selSexo'];
    $idade = $_POST['txtIdade'];
    $idpac = $_POST['txtIdPaciente'];
    $etnia = $_POST['selEtnia'];
    $nomepac = $_POST['txtNomePac'];
    $imgpac = $_POST['selImagem'];
    $cid10 = $_POST['txtCid10'];
    $publico = $_POST['chkPublico'] == "on" || $_POST['chkPublico'] == "1" ? 1 : 0;
    $exigelogin = $_POST['chkExigeLogin'] == "on" || $_POST['chkExigeLogin'] == "1" ? 0 : 1;
    /* é o contrário */
    $c = new Caso();
    if (trim($nome) != "") {
        $c->setNome($nome);
    }
    if (trim($descricao) != "") {
        $c->setDescricao($descricao);
    }
    if ($area != "" && $area > 0) {
        $c->setArea(AreaConhecimento::RetornaArea($area));
    }
    if ($nivel != "" && $nivel > 0) {
        $c->setNivelDificuldade(NivelPergunta::RetornaNivel($nivel));
    }
    if ($feed != "") {
        $c->setFeedback($feed);
    }
    if ($ativo != "") {
        $c->setAtivo($ativo);
    }
    if ($sexo != "") {
        $c->setSexoPac($sexo);
    }
    if ($idade != "") {
        $c->setIdadePac($idade);
    }
    if ($idpac != "") {
        $c->setIdPac($idpac);
    }
    if ($etnia != "") {
        $c->setEtnia($etnia);
    }
    if ($nomepac != "") {
        $c->setNomePaciente($nomepac);
    }
    if ($imgpac != "") {
        $c->setImagemPaciente($imgpac);
    }
    if ($cid10 != "") {
        $c->setCid10($cid10);
    }
    $c->setPublico($publico);
    $c->setExigeLogin($exigelogin);
    $ret = "";
    if ($codcaso == 0) {
        $u = unserialize($_SESSION['usu']);
        //Caso novo
        $c->setCodAutor($u->getCodigo());
        $ret = $c->Insere();
        $codigo = $c->getCodigo();
        $_SESSION['caso'] = $codigo;
        Log::RegistraLog('Criou o caso de estudo ' . $c->getNome() . ' (Código ' . $codigo . ')');
    } else {
        if ($codcaso > 0) {
            $c->setCodigo($codcaso);
            $ret = $c->Atualiza();
            Log::RegistraLog('Atualizou os dados basicos do caso de estudo ' . $c->getNome() . ' (Código ' . $codigo . ')');
        }
    }
    if ($ret == true) {
        echo "OK" . ($codcaso == 0 ? base64_encode($_SESSION['caso']) : "");
    } else {
        Log::RegistraLog('ERRO. Acusado erro ao executar ultima operação. DADOS BASICOS. Descrição: ' . $c->getErro());
        echo $c->getErro();
    }
}