/** * Método que salva uma avaliação de um determinado extra * @param AnexosAvaliacao $avaliacao * @throws Exception */ public function avaliar(AnexosAvaliacao $avaliacao) { $select = new Select(); $ava = $this->tg->selectObj($select->where(array("anexos_ava_fk_anexo" => $avaliacao->getAnexo()->getId(), "anexos_ava_fk_usuario" => $avaliacao->getUsuario()->getId()))); if ($ava->rowCount()) { $aval = $ava->fetch(); return $this->tg->update("pk_anexos_ava={$aval->getId()}", array("anexos_ava_nota" => $avaliacao->getNota())); } else { return $this->tg->insert(array("anexos_ava_fk_anexo" => $avaliacao->getAnexo()->getId(), "anexos_ava_fk_usuario" => $avaliacao->getUsuario()->getId(), "anexos_ava_nota" => $avaliacao->getNota(), "anexos_ava_dt" => $avaliacao->getDtHora()->format("Y-m-d G:i:s"))); } }
/** * Método que avalia um determinado anexo. * * @param int $anexoId */ private function avaliar($anexoId) { $sqlAnexo = new SqlAnexosAula(); $sqlAvaliacao = new SqlAnexosAvaliacoes(); $avaliacao = new AnexosAvaliacao(); try { $aluno = $this->getUsuario(false, new Aluno()); $anexo = $sqlAnexo->get((int) $anexoId); //Definindo os dados da avaliação $avaliacao->setAnexo($anexo); $avaliacao->setUsuario($aluno); //Definindo a nota if (filter_input(INPUT_POST, 'avaliacao', FILTER_VALIDATE_BOOLEAN) === true) { $avaliacao->setNota(AnexosAvaliacao::NOTA_MAX); } else { $avaliacao->setNota(AnexosAvaliacao::NOTA_MIN); } $sqlAvaliacao->avaliar($avaliacao); die(json_encode(array('status' => true, 'mensagem' => 'Avaliação feita com sucesso'))); } catch (SqlException $sql) { die(json_encode(array('status' => false, 'mensagem' => 'Ocorreu um erro interno do sistema. ' . 'Entre em contato com o administrador'))); } catch (Exception $exc) { die(json_encode(array('status' => false, 'mensagem' => $exc->getMessage()))); } }
/** * Método que avalia um determinado anexo * @param int $anexoId */ private function avaliar($anexoId) { $sqlAnexo = new Kernel\Sql\SqlAnexos(); $sqlAvaliacao = new SqlAnexosAvaliacoes(); $avaliacao = new AnexosAvaliacao(); try { $aluno = $this->getUsuario(FALSE, new Aluno()); $anexo = $sqlAnexo->get((int) $anexoId); //Definindo os dados da avaliação $avaliacao->setAnexo($anexo); $avaliacao->setUsuario($aluno); //Definindo a nota if (filter_input(INPUT_POST, "avaliacao", FILTER_VALIDATE_BOOLEAN) === true) { $avaliacao->setNota(AnexosAvaliacao::NOTA_MAX); } else { $avaliacao->setNota(AnexosAvaliacao::NOTA_MIN); } $sqlAvaliacao->avaliar($avaliacao); die(json_encode(array("status" => true, "mensagem" => "Avaliação feita com sucesso"))); } catch (SqlException $sql) { $this->reportarException($sql); die(json_encode(array("status" => false, "mensagem" => "Ocorreu um erro interno do sistema. Entre em contato com o administrador"))); } catch (\GGE\Lib\Base\Exception $exc) { die(json_encode(array("status" => false, "mensagem" => $exc->getMessage()))); } }