示例#1
0
 public static function convert($row)
 {
     $coautor = new Coautor();
     $coautor->id = $row['id'];
     $coautor->nome = $row['nome'];
     $coautor->email = $row['email'];
     $coautor->trabalho = Trabalho::find($row['trabalho_id']);
     return $coautor;
 }
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;
}
示例#3
0
include_once dirname(__FILE__) . '/../model/Subarea.class.php';
include_once dirname(__FILE__) . '/../model/Contato.class.php';
if (!recebendo_submissao_trabalhos()) {
    header("location: /" . $config['PATH'] . "/index.php?syserror=SUBMISSAO_TRABALHOS_ENCERRADA");
    exit;
}
session_start();
if (!isset($_SESSION['participante'])) {
    header("location: /" . $config['PATH'] . "/trabalhos/form_login.php?syserror=INSCRICAO_SUBMISSAO");
    exit;
}
if (!in_array(get_file_extension($_FILES['arquivo']['name']), $config['PAPER_TYPES'])) {
    header("location: /" . $config['PATH'] . "/trabalhos/form_submissao.php?syserror=FORMATO_SUBMISSAO_INVALIDO");
    exit;
}
$trabalho = new Trabalho();
$trabalho->titulo = $_POST['titulo'];
$trabalho->resumo = $_POST['resumo'];
$trabalho->palavras_chave = $_POST['palavras_chave'];
$trabalho->subarea = Subarea::find($_POST['subarea_id']);
$trabalho->tipo = TipoTrabalho::find($_POST['tipo_id']);
$trabalho->extensao = get_file_extension($_FILES['arquivo']['name']);
$trabalho->autor_principal = $_SESSION['participante'];
$trabalho->save();
if (is_uploaded_file($_FILES['arquivo']['tmp_name'])) {
    $result = move_uploaded_file($_FILES['arquivo']['tmp_name'], dirname(__FILE__) . '/uploads/' . $trabalho->id . '.' . get_file_extension($_FILES['arquivo']['name']));
    if (!$result) {
        echo "Falha ao mover o arquivo!";
    }
} else {
    echo "Operação não permitida!";
 /**
  * atualiza um registro da tabela
  *
  * @parametro TrabalhoMySql trabalho
  */
 public function update(Trabalho $Trabalho)
 {
     $sql = "UPDATE {$this->table} SET " . "fk_area = :fk_area, " . "fk_categoria = :fk_categoria, " . "fk_modalidade = :fk_modalidade, " . "nivel = :nivel, " . "titulo = :titulo, " . "titulo_ordenar = :titulo_ordenar, " . "palavra1 = :palavra1, " . "palavra2 = :palavra2, " . "palavra3 = :palavra3, " . "apoiadores = :apoiadores, " . "resumo = :resumo, " . "resumo2 = :resumo2, " . "status = :status, " . "data_atualizacao = sysdate(), " . "ip_atualizacao = :ip_atualizacao, " . "fk_sessao = :fk_sessao, " . "seq_sessao = :seq_sessao, " . "nota = :nota, " . "premiado = :premiado, " . "turno1 = :turno1, " . "turno2 = :turno2, " . "turno3 = :turno3 " . "WHERE id_trabalho = :id";
     $id = (int) $Trabalho->getIdTrabalho();
     $fkArea = $Trabalho->getFkArea();
     $fkCategoria = $Trabalho->getFkCategoria();
     $fkModalidade = $Trabalho->getFkModalidade();
     $nivel = $Trabalho->getNivel();
     $titulo = $Trabalho->getTitulo();
     $tituloOrdenar = $Trabalho->getTituloOrdenar();
     $palavra1 = $Trabalho->getPalavra1();
     $palavra2 = $Trabalho->getPalavra2();
     $palavra3 = $Trabalho->getPalavra3();
     $apoiadores = $Trabalho->getApoiadores();
     $resumo = $Trabalho->getResumo();
     $resumo2 = $Trabalho->getResumo2();
     $status = $Trabalho->getStatus();
     $dataCadastro = $Trabalho->getDataCadastro();
     $dataAtualizacao = $Trabalho->getDataAtualizacao();
     $ipCadastro = $Trabalho->getIpCadastro();
     $ipAtualizacao = $Trabalho->getIpAtualizacao();
     // $fkSessao = $Trabalho->getFkSessao();
     $seqSessao = $Trabalho->getSeqSessao();
     $nota = $Trabalho->getNota();
     $premiado = $Trabalho->getPremiado();
     $turno1 = $Trabalho->getTurno1();
     $turno2 = $Trabalho->getTurno2();
     $turno3 = $Trabalho->getTurno3();
     $stmt = ConnectionFactory::prepare($sql);
     $stmt->bindParam(':id', $id, PDO::PARAM_INT);
     $stmt->bindParam(':fk_area', $fkArea);
     $stmt->bindParam(':fk_categoria', $fkCategoria);
     $stmt->bindParam(':fk_modalidade', $fkModalidade);
     $stmt->bindParam(':nivel', $nivel, PDO::PARAM_INT);
     $stmt->bindParam(':titulo', $titulo);
     $stmt->bindParam(':titulo_ordenar', $tituloOrdenar);
     $stmt->bindParam(':palavra1', $palavra1);
     $stmt->bindParam(':palavra2', $palavra2);
     $stmt->bindParam(':palavra3', $palavra3);
     $stmt->bindParam(':apoiadores', $apoiadores);
     $stmt->bindParam(':resumo', $resumo);
     $stmt->bindParam(':resumo2', $resumo2);
     $stmt->bindParam(':status', $status);
     //$stmt->bindParam(':dataCadastro', $dataCadastro);
     //$stmt->bindParam(':dataAtualizacao', $dataAtualizacao);
     //$stmt->bindParam(':ipCadastro', $ipCadastro);
     $stmt->bindParam(':ip_atualizacao', $ipAtualizacao);
     $stmt->bindParam(':fk_sessao', $fkSessao, PDO::PARAM_INT);
     $stmt->bindParam(':seq_sessao', $seqSessao, PDO::PARAM_INT);
     $stmt->bindParam(':nota', $nota);
     $stmt->bindParam(':premiado', $premiado);
     $stmt->bindParam(':turno1', $turno1);
     $stmt->bindParam(':turno2', $turno2);
     $stmt->bindParam(':turno3', $turno3);
     //var_dump($trabalho);
     return $stmt->execute();
 }
示例#5
0
<?php

include_once dirname(__FILE__) . '/../../inc/config.inc.php';
include_once dirname(__FILE__) . '/../../inc/mensagens.inc.php';
include_once dirname(__FILE__) . '/../../model/Trabalho.class.php';
include_once dirname(__FILE__) . '/../../model/TipoTrabalho.class.php';
include_once dirname(__FILE__) . '/../../model/Area.class.php';
include_once dirname(__FILE__) . '/../../model/Coautor.class.php';
session_start();
if (!isset($_SESSION['usuario'])) {
    header("location: /" . $config['PATH'] . "/admin/form_login.php?syserror=AUTENTICACAO_NECESSARIA");
    exit;
}
$trabalho = Trabalho::find($_GET['id']);
$autor_principal = $trabalho->autor_principal;
$coautores = $trabalho->coautores();
?>

<!DOCTYPE HTML>
<html lang="pt-br">
	<head>
		<?php 
include_once dirname(__FILE__) . '/../../inc/head.inc.php';
?>
	</head>
	<body>
		<div class="container rounded-corners">
			<div class="header">
				<?php 
$active = 'admin';
?>
示例#6
0
<?php

include_once dirname(__FILE__) . '/../../inc/config.inc.php';
include_once dirname(__FILE__) . '/../../inc/mensagens.inc.php';
include_once dirname(__FILE__) . '/../../model/Trabalho.class.php';
include_once dirname(__FILE__) . '/../../model/TipoTrabalho.class.php';
include_once dirname(__FILE__) . '/../../model/Area.class.php';
include_once dirname(__FILE__) . '/../../model/Subarea.class.php';
include_once dirname(__FILE__) . '/../../model/Coautor.class.php';
session_start();
if (!isset($_SESSION['usuario'])) {
    header("location: /" . $config['PATH'] . "/admin/form_login.php?syserror=AUTENTICACAO_NECESSARIA");
    exit;
}
$trabalhos = Trabalho::all();
if (isset($_GET['tipo_id'])) {
    for ($i = 0; $i < count($trabalhos); $i++) {
        if ($trabalhos[$i]->tipo->id != $_GET['tipo_id']) {
            unset($trabalhos[$i]);
        }
    }
}
if (isset($_GET['subarea_id'])) {
    for ($i = 0; $i < count($trabalhos); $i++) {
        if ($trabalhos[$i]->subarea->id != $_GET['subarea_id']) {
            unset($trabalhos[$i]);
        }
    }
}
$tipos = TipoTrabalho::all();
$areas = Area::all();
示例#7
0
 public function trabalhos_submetidos()
 {
     return Trabalho::find_by_autor_principal($this->id);
 }