private function tela_to_trabalho(\Entity\Trabalho $trabalho) { //Pega dados da interface. $data = $this->input->post(); //$id_usuario = (int) $_SESSION["id_usuario"]; $titulo = $data["ctitulo"]; if ($titulo == '') { throw new Exception("Título do trabalho não preenchido"); } //$titulo = mysql_real_escape_string($data["cTitulo"]); //$titulo_ordenar = html_entity_decode(strip_tags($titulo), ENT_QUOTES, "UTF-8"); $resumo = $data["cresumo"]; if ($resumo == '') { throw new Exception("Resumo do trabalho não preenchido"); } //<<<<<<<<<<<<<<<<<< Alex implementar<<<<<<<<<<<<<<<<<<<<<<<<< $quant_cars_resumo = tamanho_resumo($resumo); if ($quant_cars_resumo > TRAB_QUANT_MAX_CARS_RESUMO) { throw new Exception("Resumo com " . $quant_cars_resumo . " caracteres. Excedeu o máximo permitido (" . TRAB_QUANT_MAX_CARS_RESUMO . " caracteres)"); } //Campo é obrigatório <<<<<<<<<<<<<<<<<< $resumo2 = "---"; //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($data["palavra1"]); if ($palavra1 == '') { throw new Exception("Palavra-chave 1 não preenchida"); } $palavra2 = html_entity_decode($data["palavra2"]); if ($palavra2 == '') { throw new Exception("Palavra-chave 2 não preenchida"); } $palavra3 = html_entity_decode($data["palavra3"]); if ($palavra3 == '') { throw new Exception("Palavra-chave 3 não preenchida"); } $id_area = (int) $data["id_area"]; if ($id_area <= 0) { throw new Exception("Área temática não preenchida"); } $id_categoria = (int) $data["id_categoria"]; if ($id_categoria <= 0) { throw new Exception("Categoria não preenchida"); } $id_modalidade = (int) $data["id_modalidade"]; if ($id_modalidade <= 0) { throw new Exception("Modalidade não preenchida"); } $apoiadores = html_entity_decode($data["apoiadores"]); $turno1 = $data["turno1"]; $turno2 = $data["turno2"]; $turno3 = $data["turno3"]; if ($turno1 == '') { throw new Exception("Turno preferencial 1 não foi escolhido"); } if ($turno1 == '') { throw new Exception("Turno preferencial 2 não foi escolhido"); } if ($turno1 == '') { throw new Exception("Turno preferencial 3 não foi escolhido"); } if ($turno1 == $turno2 || $turno1 == $turno3 || $turno2 == $turno3) { throw new Exception("Os três turnos devem ser diferentes"); } //Nao instancia trabalho pois estah vindo por parametro. //$trabalho = new \Entity\Trabalho; $trabalho->setTitulo($titulo); //$trabalho->setTituloOrdenar($titulo_ordenar); $trabalho->fk_area = $id_area; $trabalho->fk_categoria = $id_categoria; $trabalho->fk_modalidade = $id_modalidade; $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); return $trabalho; }
/** * Inseri um registro na tabela * * @parametro TrabalhoMySql trabalho */ public function insert(\Entity\Trabalho $Trabalho) { //Nao preenche os campos data_atualizacao e ip_atualizacao. //Preenche o campo data_cadastro automaticamente com a data atual do servidor de banco de dados. $sql = "INSERT INTO {$this->table} (fk_area, fk_categoria, fk_modalidade, nivel, titulo, titulo_ordenar, palavra1, palavra2, palavra3, apoiadores, resumo, resumo2, status, data_cadastro, ip_cadastro, fk_sessao, seq_sessao, nota, premiado, turno1, turno2, turno3) VALUES ( :fkArea, :fkCategoria, :fkModalidade, :nivel, :titulo, :tituloOrdenar, :palavra1, :palavra2, :palavra3, :apoiadores, :resumo, :resumo2, :status, sysdate(), :ipCadastro, :fkSessao, :seqSessao, :nota, :premiado, :turno1, :turno2, :turno3)"; $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(); $ipCadastro = $Trabalho->getIpCadastro(); $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(':fkArea', $fkArea); $stmt->bindParam(':fkCategoria', $fkCategoria); $stmt->bindParam(':fkModalidade', $fkModalidade); $stmt->bindParam(':nivel', $nivel); $stmt->bindParam(':titulo', $titulo); $stmt->bindParam(':tituloOrdenar', $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(':ipAtualizacao', $ipAtualizacao); $stmt->bindParam(':fkSessao', $fkSessao); $stmt->bindParam(':seqSessao', $seqSessao); $stmt->bindParam(':nota', $nota); $stmt->bindParam(':premiado', $premiado); $stmt->bindParam(':turno1', $turno1); $stmt->bindParam(':turno2', $turno2); $stmt->bindParam(':turno3', $turno3); $stmt->execute(); $sql = "SELECT LAST_INSERT_ID() as last_id"; $stmt = ConnectionFactory::prepare($sql); $stmt->execute(); $last_id = (array) $stmt->fetch(); //Pega o id_trabalho que foi gerado no banco e atualiza o objeto Trabalho. $id_trabalho = 0; foreach ($last_id as $value) { $id_trabalho = $value; } $Trabalho->setIdTrabalho($id_trabalho); return $id_tabalho; }
public function salvar_dados_trabalho(\Entity\Trabalho $trabalho) { //Instancia um DAO, para inserir ou atualizar o trabalho. $trabalho_dao = new TrabalhoMySqlDAO(); $id_trabalho = $trabalho->getIdTrabalho(); //Se id_trabalho for zero ou menor 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_dao->update($trabalho); } /* $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; } */ return 0; }
public function setTurno3($turno3) { $this->__load(); return parent::setTurno3($turno3); }