Пример #1
0
 public function remove_autor($id_trabalho, $id_autor)
 {
     $trab_aut_curso_dao = new TrabalhoAutorCursoMySqlDAO();
     $trab_aut_curso_dao->delete($id_trabalho, $id_autor);
 }
function salvar_trabalho($id_trabalho, $status)
{
    $id_usuario = (int) $_SESSION["id_usuario"];
    $titulo = $_POST["cTitulo"];
    //$titulo = mysql_real_escape_string($_POST["cTitulo"]);
    $titulo_ordenar = html_entity_decode(strip_tags($titulo), ENT_QUOTES, "UTF-8");
    $resumo = $_POST["cResumo"];
    //Se for usar mysql_real_escape_string() tem que ser depois de tamanho_resumo().
    //$resumo = mysql_real_escape_string($resumo);
    $resumo2 = html_entity_decode(strip_tags($resumo), ENT_QUOTES, "UTF-8");
    $palavra1 = html_entity_decode($_POST["palavra1"]);
    $palavra2 = html_entity_decode($_POST["palavra2"]);
    $palavra3 = html_entity_decode($_POST["palavra3"]);
    $area = (int) $_POST["area"];
    $categoria = (int) $_POST["categoria"];
    $modalidade = (int) $_POST["modalidade"];
    $apoiadores = html_entity_decode($_POST["apoiadores"]);
    $turno1 = $_POST["turno1"];
    $turno2 = $_POST["turno2"];
    $turno3 = $_POST["turno3"];
    $id_curso = (int) $_POST["curso"];
    $email_trabalho = html_entity_decode($_POST["email_trabalho"]);
    $ip_servidor = $_SERVER['REMOTE_ADDR'];
    $resp = 0;
    if (!isset($id_usuario)) {
        // erro: sessão expirou ou não existe
        return 1;
    }
    if (ETAPA_INSCRICAO_TRABALHO == 0 && ETAPA_CORRECAO_TRABALHO_1 == 0) {
        // erro: etapa não permite inserir trabalho.
        return 2;
    }
    //Verifica se o usuário é um autor.
    $autor_dao = new AutorMySqlDAO();
    $result = $autor_dao->load($id_usuario);
    if ($result == null) {
        // erro: usuário não é autor
        return 3;
    }
    //Verifica se tamanho do resumo está correto.
    $tam_resumo = tamanho_resumo($resumo);
    if ($tam_resumo > QUANT_MAX_CARS_RESUMO) {
        return -$tam_resumo;
    }
    $curso_dao = new CursoMySqlDAO();
    $res_curso = $curso_dao->load($id_curso);
    if ($res_curso == null) {
        //Não é um curso do autor.
        return 5;
    }
    $nivel = $res_curso->nivel;
    $valida_modalidade = valida_modalidade_trabalho_autor($id_usuario, $id_trabalho, $modalidade);
    if ($valida_modalidade > 0) {
        //Erro na validacao da modalidade.
        return $valida_modalidade;
    }
    //verifica turnos
    if (!valida_turnos($turno1, $turno2, $turno3)) {
        //turnos inválidos.
        return 6;
    }
    //Instancia um trabalho.
    $trabalho_dao = new TrabalhoMySqlDAO();
    $trabalho = new Trabalho();
    $trabalho->setFkArea($area);
    $trabalho->setFkCategoria($categoria);
    $trabalho->setFkModalidade($modalidade);
    $trabalho->setNivel($nivel);
    $trabalho->setTitulo($titulo);
    $trabalho->setTituloOrdenar($titulo_ordenar);
    $trabalho->setResumo($resumo);
    $trabalho->setResumo2($resumo2);
    $trabalho->setPalavra1($palavra1);
    $trabalho->setPalavra2($palavra2);
    $trabalho->setPalavra3($palavra3);
    $trabalho->setApoiadores($apoiadores);
    $trabalho->setTurno1($turno1);
    $trabalho->setTurno2($turno2);
    $trabalho->setTurno3($turno3);
    $trabalho->setIpCadastro($ip_servidor);
    $trabalho->setStatus($status);
    //Se id_trabalho negativo entao insere um novo trabalho.
    if ($id_trabalho < 0) {
        //Insere trabalho.
        $id_trabalho = $trabalho_dao->insert($trabalho);
        //Insere trabalho_autor_curso.
        $trab_aut_curso = new TrabalhoAutorCurso();
        $trab_aut_curso_dao = new TrabalhoAutorCursoMySqlDAO();
        $trab_aut_curso->setFkAutor($id_usuario);
        $trab_aut_curso->setFkCurso($id_curso);
        $trab_aut_curso->setFkTrabalho($id_trabalho);
        $trab_aut_curso->setEmailTrabalho($email_trabalho);
        $trab_aut_curso->setSeq(1);
        $trab_aut_curso_dao->insert($trab_aut_curso);
        //Envia email para autor do trabalho.
        envia_email_trabalho_inscrito($id_trabalho, $titulo, $email_trabalho);
    } else {
        //Atualiza trabalho.
        $trabalho->setIdTrabalho($id_trabalho);
        $trabalho_dao->update($trabalho);
    }
    return 0;
}
     echo -4;
     exit;
 } else {
     if ($acao == 'remover_coautor') {
         if ($_SESSION['is_autor_principal_do_trabalho']) {
             $id_autor = $_REQUEST['id_autor'];
             $id_trabalho = $_SESSION['id_trabalho'];
             $trab_dao = new TrabalhoMySqlDAO();
             $autor_principal = $trab_dao->loadAutorPrincipal($id_trabalho);
             if ($autor_principal->id_usuario == $id_autor) {
                 //Nao pode remover o autor principal.
                 echo -1;
                 exit;
             }
             //Remove o trabalho_autor_curso.
             $trab_autor_curso_dao = new TrabalhoAutorCursoMySqlDAO();
             $trab_autor_curso_dao->delete($id_trabalho, $id_autor);
             //Re-carrega os trabalho_autor_curso do trabalho e coloca na SESSION.
             $trab_dao = new TrabalhoMySqlDAO();
             $trab_autor_curso = $trab_dao->queryAllAutoresCursosOrderBySeq($id_trabalho);
             $_SESSION['autores_cursos_do_trabalho'] = $trab_autor_curso;
             echo 0;
             exit;
         }
         //Nao é autor principal do trabalho.
         echo -4;
         exit;
     } else {
         if ($acao == 'remover_orientador') {
             if ($_SESSION['is_autor_principal_do_trabalho']) {
                 $id_orientador = $_REQUEST['id_orientador'];