Unverified Commit 55a0747c authored by José Rômulo's avatar José Rômulo Committed by GitHub
Browse files

Merge branch 'lmts-ufape:master' into master

parents e211da21 22e72923
web: vendor/bin/heroku-php-apache2 public/
...@@ -15,7 +15,7 @@ class CoordenadorComissao extends Model ...@@ -15,7 +15,7 @@ class CoordenadorComissao extends Model
} }
public function trabalho(){ public function trabalho(){
return $this->hasMany('App\Trabalho'); return $this->hasMany('App\Trabalho', 'coordenador_id');
} }
} }
...@@ -88,6 +88,7 @@ class ArquivoController extends Controller ...@@ -88,6 +88,7 @@ class ArquivoController extends Controller
$arquivo = Arquivo::find($id); $arquivo = Arquivo::find($id);
if (Storage::disk()->exists($arquivo->nome)) { if (Storage::disk()->exists($arquivo->nome)) {
ob_end_clean();
return Storage::download($arquivo->nome); return Storage::download($arquivo->nome);
} }
return abort(404); return abort(404);
......
...@@ -166,6 +166,7 @@ class EventoController extends Controller ...@@ -166,6 +166,7 @@ class EventoController extends Controller
$evento['coordenadorId'] = $request->coordenador_id; $evento['coordenadorId'] = $request->coordenador_id;
$evento['criador_id'] = $user_id; $evento['criador_id'] = $user_id;
$evento['numParticipantes'] = $request->numParticipantes; $evento['numParticipantes'] = $request->numParticipantes;
$evento['consu'] = $request->has('consu');
$evento['anexosStatus'] = 'final'; $evento['anexosStatus'] = 'final';
//dd($evento); //dd($evento);
...@@ -395,7 +396,7 @@ class EventoController extends Controller ...@@ -395,7 +396,7 @@ class EventoController extends Controller
$evento->resultado_preliminar = $request->resultado_preliminar; $evento->resultado_preliminar = $request->resultado_preliminar;
$evento->resultado_final = $request->resultado_final; $evento->resultado_final = $request->resultado_final;
$evento->coordenadorId = $request->coordenador_id; $evento->coordenadorId = $request->coordenador_id;
$evento->consu = $request->has('consu');
if($request->pdfEdital != null){ if($request->pdfEdital != null){
$pdfEdital = $request->pdfEdital; $pdfEdital = $request->pdfEdital;
$path = 'pdfEdital/' . $evento->id . '/'; $path = 'pdfEdital/' . $evento->id . '/';
...@@ -597,6 +598,7 @@ class EventoController extends Controller ...@@ -597,6 +598,7 @@ class EventoController extends Controller
$evento = Evento::find($id); $evento = Evento::find($id);
if (Storage::disk()->exists($evento->pdfEdital)) { if (Storage::disk()->exists($evento->pdfEdital)) {
ob_end_clean();
return Storage::download($evento->pdfEdital); return Storage::download($evento->pdfEdital);
} }
...@@ -607,6 +609,7 @@ class EventoController extends Controller ...@@ -607,6 +609,7 @@ class EventoController extends Controller
$evento = Evento::find($id); $evento = Evento::find($id);
if (Storage::disk()->exists($evento->modeloDocumento)) { if (Storage::disk()->exists($evento->modeloDocumento)) {
ob_end_clean();
return Storage::download($evento->modeloDocumento); return Storage::download($evento->modeloDocumento);
} }
......
...@@ -54,6 +54,7 @@ class HomeController extends Controller ...@@ -54,6 +54,7 @@ class HomeController extends Controller
} }
public function downloadArquivo(Request $request){ public function downloadArquivo(Request $request){
ob_end_clean();
return Storage::download($request->file); return Storage::download($request->file);
} }
} }
...@@ -239,12 +239,14 @@ class TrabalhoController extends Controller ...@@ -239,12 +239,14 @@ class TrabalhoController extends Controller
Storage::delete($trabalho->anexoAutorizacaoComiteEtica); Storage::delete($trabalho->anexoAutorizacaoComiteEtica);
} }
$trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoAutorizacaoComiteEtica, 'Comite_de_etica.pdf'); $trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoAutorizacaoComiteEtica, 'Comite_de_etica.pdf');
$trabalho->justificativaAutorizacaoEtica = null;
} elseif( isset($request->justificativaAutorizacaoEtica)){ } elseif( isset($request->justificativaAutorizacaoEtica)){
if(Storage::disk()->exists($trabalho->justificativaAutorizacaoEtica)) { if(Storage::disk()->exists($trabalho->justificativaAutorizacaoEtica)) {
Storage::delete($trabalho->justificativaAutorizacaoEtica); Storage::delete($trabalho->justificativaAutorizacaoEtica);
} }
$trabalho->justificativaAutorizacaoEtica = Storage::putFileAs($pasta, $request->justificativaAutorizacaoEtica, 'Justificativa.pdf'); $trabalho->justificativaAutorizacaoEtica = Storage::putFileAs($pasta, $request->justificativaAutorizacaoEtica, 'Justificativa.pdf');
$trabalho->anexoAutorizacaoComiteEtica = null;
} }
//Anexo Lattes //Anexo Lattes
...@@ -260,6 +262,7 @@ class TrabalhoController extends Controller ...@@ -260,6 +262,7 @@ class TrabalhoController extends Controller
if(Storage::disk()->exists($trabalho->anexoPlanilhaPontuacao)) { if(Storage::disk()->exists($trabalho->anexoPlanilhaPontuacao)) {
Storage::delete($trabalho->anexoPlanilhaPontuacao); Storage::delete($trabalho->anexoPlanilhaPontuacao);
} }
$trabalho->anexoPlanilhaPontuacao = Storage::putFileAs($pasta, $request->anexoPlanilhaPontuacao, "Planilha.". $request->file('anexoPlanilhaPontuacao')->extension()); $trabalho->anexoPlanilhaPontuacao = Storage::putFileAs($pasta, $request->anexoPlanilhaPontuacao, "Planilha.". $request->file('anexoPlanilhaPontuacao')->extension());
} }
...@@ -270,7 +273,7 @@ class TrabalhoController extends Controller ...@@ -270,7 +273,7 @@ class TrabalhoController extends Controller
} }
$trabalho->anexoGrupoPesquisa = Storage::putFileAs($pasta, $request->anexoGrupoPesquisa, "Grupo_de_pesquisa.". $request->file('anexoGrupoPesquisa')->extension()); $trabalho->anexoGrupoPesquisa = Storage::putFileAs($pasta, $request->anexoGrupoPesquisa, "Grupo_de_pesquisa.". $request->file('anexoGrupoPesquisa')->extension());
} }
$trabalho->save();
return $trabalho; return $trabalho;
} }
...@@ -289,9 +292,12 @@ class TrabalhoController extends Controller ...@@ -289,9 +292,12 @@ class TrabalhoController extends Controller
//Autorização ou Justificativa //Autorização ou Justificativa
if( isset($request->anexoAutorizacaoComiteEtica)){ if( isset($request->anexoAutorizacaoComiteEtica)){
$trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoAutorizacaoComiteEtica, 'Comite_de_etica.pdf'); $trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoAutorizacaoComiteEtica, 'Comite_de_etica.pdf');
$trabalho->justificativaAutorizacaoEtica = null;
} elseif( isset($request->justificativaAutorizacaoEtica)){ } elseif( isset($request->justificativaAutorizacaoEtica)){
$trabalho->justificativaAutorizacaoEtica = Storage::putFileAs($pasta, $request->justificativaAutorizacaoEtica, 'Justificativa.pdf'); $trabalho->justificativaAutorizacaoEtica = Storage::putFileAs($pasta, $request->justificativaAutorizacaoEtica, 'Justificativa.pdf');
$trabalho->anexoAutorizacaoComiteEtica = null;
} }
//Anexo Lattes //Anexo Lattes
...@@ -314,14 +320,22 @@ class TrabalhoController extends Controller ...@@ -314,14 +320,22 @@ class TrabalhoController extends Controller
public function show($id) public function show($id)
{ {
//
$projeto = Trabalho::find($id); $projeto = Auth::user()->proponentes->trabalhos()->where('id', $id)->first();
if(Auth::user()->tipo == 'administrador'){
$projeto = Trabalho::find($id);
}
if(!$projeto){
// $projeto = Auth::user()->coordenadorComissao->trabalho()->where('id', $id)->first();
return back()->withErrors(['Proposta não encontrada!']);
}
$edital = Evento::find($projeto->evento_id); $edital = Evento::find($projeto->evento_id);
$grandeAreas = GrandeArea::all(); $grandeAreas = GrandeArea::all();
$areas = Area::all(); $areas = Area::all();
$subareas = Subarea::all(); $subareas = Subarea::all();
$funcaoParticipantes = FuncaoParticipantes::all(); $funcaoParticipantes = FuncaoParticipantes::all();
$participantes = Participante::where('trabalho_id', $id)->get(); $participantes = $projeto->participantes;
$participantesUsersIds = Participante::where('trabalho_id', $id)->select('user_id')->get(); $participantesUsersIds = Participante::where('trabalho_id', $id)->select('user_id')->get();
$users = User::whereIn('id', $participantesUsersIds)->get(); $users = User::whereIn('id', $participantesUsersIds)->get();
$arquivos = Arquivo::where('trabalhoId', $id)->get(); $arquivos = Arquivo::where('trabalhoId', $id)->get();
...@@ -342,7 +356,10 @@ class TrabalhoController extends Controller ...@@ -342,7 +356,10 @@ class TrabalhoController extends Controller
public function exportProjeto($id) public function exportProjeto($id)
{ {
$projeto = Trabalho::find($id); $projeto = Auth::user()->proponentes->trabalhos()->where('id', $id)->first();
if(!$projeto){
return back()->withErrors(['Proposta não encontrada!']);
}
$edital = Evento::find($projeto->evento_id); $edital = Evento::find($projeto->evento_id);
$grandeAreas = GrandeArea::all(); $grandeAreas = GrandeArea::all();
$areas = Area::all(); $areas = Area::all();
...@@ -364,7 +381,10 @@ class TrabalhoController extends Controller ...@@ -364,7 +381,10 @@ class TrabalhoController extends Controller
public function edit($id) public function edit($id)
{ {
$proponente = Proponente::where('user_id', Auth::user()->id)->first(); $proponente = Proponente::where('user_id', Auth::user()->id)->first();
$projeto = Trabalho::find($id); $projeto = Auth::user()->proponentes->trabalhos()->where('id', $id)->first();
if(!$projeto){
return back()->withErrors(['Proposta não encontrada!']);
}
$edital = Evento::find($projeto->evento_id); $edital = Evento::find($projeto->evento_id);
$grandeAreas = GrandeArea::all(); $grandeAreas = GrandeArea::all();
$areas = Area::all(); $areas = Area::all();
...@@ -392,234 +412,6 @@ class TrabalhoController extends Controller ...@@ -392,234 +412,6 @@ class TrabalhoController extends Controller
]); ]);
} }
// $mytime = Carbon::now('America/Recife');
// $mytime = $mytime->toDateString();
// $evento = Evento::find($request->editalId);
// $coordenador = CoordenadorComissao::find($evento->coordenadorId);
// //Relaciona o projeto criado com o proponente que criou o projeto
// $proponente = Proponente::where('user_id', Auth::user()->id)->first();
// //$trabalho->proponentes()->save($proponente);
// //dd($coordenador->id);
// $trabalho = "trabalho";
// if($evento->inicioSubmissao > $mytime){
// if($mytime >= $evento->fimSubmissao){
// return redirect()->route('home');
// }
// }
// //O anexo de Decisão do CONSU dependo do tipo de edital
// if( $evento->tipo == 'PIBIC' || $evento->tipo == 'PIBIC-EM'){
// $validatedData = $request->validate([
// 'editalId' => ['required', 'string'],
// 'nomeProjeto' => ['required', 'string'],
// 'grandeArea' => ['required', 'string'],
// 'area' => ['required', 'string'],
// 'subArea' => ['required', 'string'],
// 'pontuacaoPlanilha' => ['required', 'string'],
// 'linkGrupo' => ['required', 'string'],
// 'linkLattesEstudante' => ['required', 'string'],
// 'nomeParticipante.*' => ['required', 'string'],
// 'emailParticipante.*' => ['required', 'string'],
// 'funcaoParticipante.*' => ['required', 'string'],
// ]);
// }else{
// //Caso em que o anexo da Decisão do CONSU não necessário
// $validatedData = $request->validate([
// 'editalId' => ['required', 'string'],
// 'nomeProjeto' => ['required', 'string',],
// 'grandeArea' => ['required', 'string'],
// 'area' => ['required', 'string'],
// 'subArea' => ['required', 'string'],
// 'pontuacaoPlanilha' => ['required', 'string'],
// 'linkGrupo' => ['required', 'string'],
// 'linkLattesEstudante' => ['required', 'string'],
// 'nomeCoordenador' => ['required', 'string'],
// 'nomeParticipante.*' => ['required', 'string'],
// 'emailParticipante.*' => ['required', 'string'],
// 'funcaoParticipante.*' => ['required', 'string'],
// ]);
// }
// $trabalho = Trabalho::find($id);
// $trabalho->titulo = $request->nomeProjeto;
// $trabalho->coordenador_id = $coordenador->id;
// $trabalho->grande_area_id = $request->grandeArea;
// $trabalho->area_id = $request->area;
// $trabalho->sub_area_id = $request->subArea;
// $trabalho->pontuacaoPlanilha = $request->pontuacaoPlanilha;
// $trabalho->linkGrupoPesquisa = $request->linkGrupo;
// $trabalho->linkLattesEstudante = $request->linkLattesEstudante;
// $trabalho->data = $mytime;
// $trabalho->evento_id = $request->editalId;
// $trabalho->proponente_id = $proponente->id;
// $pasta = 'trabalhos/' . $request->editalId . '/' . $trabalho->id;
// if (!(is_null($request->anexoDecisaoCONSU))) {
// Storage::delete($trabalho->anexoDecisaoCONSU);
// $trabalho->anexoDecisaoCONSU = Storage::putFileAs($pasta, $request->anexoDecisaoCONSU, "CONSU.pdf");
// }
// if (!(is_null($request->anexoProjeto))) {
// Storage::delete($trabalho->anexoProjeto);
// $trabalho->anexoProjeto = Storage::putFileAs($pasta, $request->anexoProjeto, "Projeto.pdf");
// }
// if (!(is_null($request->anexoComiteEtica))) {
// Storage::delete($trabalho->anexoComiteEtica);
// $trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoComiteEtica, "Comite_de_etica.pdf");
// }
// if (!(is_null($request->anexoLattesCoordenador))) {
// Storage::delete($trabalho->anexoLattesCoordenador);
// $trabalho->anexoLattesCoordenador = Storage::putFileAs($pasta, $request->anexoLattesCoordenador, "Latter_Coordenador.pdf");
// }
// if (!(is_null($request->anexoPlanilhaPontuacao))) {
// Storage::delete($trabalho->anexoLattesCoordenador);
// $trabalho->anexoPlanilhaPontuacao = Storage::putFileAs($pasta, $request->anexoPlanilhaPontuacao, "Planilha.pdf");
// }
// //atualizando projeto
// $trabalho->update();
// // criando novos participantes que podem ter sido adicionados
// $participantesUsersIds = Participante::where('trabalho_id', '=', $trabalho->id)->select('user_id')->get();
// $users = User::whereIn('id', $participantesUsersIds)->get();
// $emailParticipantes = [];
// foreach ($users as $user) {
// array_push($emailParticipantes, $user->email);
// }
// foreach ($request->emailParticipante as $key => $value) {
// // criando novos participantes que podem ter sido adicionados
// if (!(in_array($request->emailParticipante[$key], $emailParticipantes, false))) {
// $userParticipante = User::where('email', $value)->first();
// if($userParticipante == null){
// $passwordTemporario = Str::random(8);
// $subject = "Participante de Projeto";
// Mail::to($value)->send(new EmailParaUsuarioNaoCadastrado(Auth()->user()->name, ' ', 'Participante', $evento->nome, $passwordTemporario, $subject));
// $usuario = User::create([
// 'email' => $value,
// 'password' => bcrypt($passwordTemporario),
// 'usuarioTemp' => true,
// 'name' => $request->nomeParticipante[$key],
// 'tipo' => 'participante',
// ]);
// $participante = new Participante();
// $participante->user_id = $usuario->id;
// $participante->trabalho_id = $trabalho->id;
// $participante->funcao_participante_id = $request->funcaoParticipante[$key];
// $participante->save();
// }else{
// $participante = new Participante();
// $participante->user_id = $userParticipante->id;
// $participante->trabalho_id = $trabalho->id;
// $participante->funcao_participante_id = $request->funcaoParticipante[$key];
// $participante->save();
// $participante->trabalhos()->save($trabalho);
// $subject = "Participante de Projeto";
// $email = $value;
// Mail::to($email)
// ->send(new SubmissaoTrabalho($userParticipante, $subject, $evento, $trabalho));
// }
// $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/';
// $nome = $request->nomePlanoTrabalho[$key] .".pdf";
// $file = $request->anexoPlanoTrabalho[$key];
// Storage::putFileAs($path, $file, $nome);
// $arquivo = new Arquivo();
// $arquivo->titulo = $request->nomePlanoTrabalho[$key];
// $arquivo->nome = $path . $nome;
// $arquivo->trabalhoId = $trabalho->id;
// $arquivo->data = $mytime;
// $arquivo->participanteId = $participante->id;
// $arquivo->versaoFinal = true;
// $arquivo->save();
// }
// //atualizando os participantes que já estão no projeto e planos de trabalho se enviados
// if (in_array($request->emailParticipante[$key], $emailParticipantes, false)) {
// $userParticipante = User::where('email', $value)->first();
// if($userParticipante != null){
// $user = User::where('email', $request->emailParticipante[$key])->first();
// $participante = Participante::where([['user_id', '=', $user->id], ['trabalho_id', '=', $trabalho->id]])->first();
// $user->name = $request->nomeParticipante[$key];
// $user->update();
// $participante->funcao_participante_id = $request->funcaoParticipante[$key];
// $participante->update();
// //atualizando planos de trabalho
// if ($request->anexoPlanoTrabalho != null && array_key_exists($key, $request->anexoPlanoTrabalho)) {
// if (!(is_null($request->anexoPlanoTrabalho[$key]))) {
// $arquivo = Arquivo::where('participanteId', $participante->id)->first();
// //se plano já existir, deletar
// if($arquivo != null){
// Storage::delete($arquivo->nome);
// $arquivo->delete();
// }
// //atualizar plano
// if($request->semPlano[$key] == null){
// $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/';
// $nome = $request->nomePlanoTrabalho[$key] .".pdf";
// $file = $request->anexoPlanoTrabalho[$key];
// Storage::putFileAs($path, $file, $nome);
// $arquivo = new Arquivo();
// $arquivo->titulo = $request->nomePlanoTrabalho[$key];
// $arquivo->nome = $path . $nome;
// $arquivo->trabalhoId = $trabalho->id;
// $arquivo->data = $mytime;
// $arquivo->participanteId = $participante->id;
// $arquivo->versaoFinal = true;
// $arquivo->save();
// }
// }
// }
// //removendo planos de trabalho
// if($request->nomePlanoTrabalho != null && array_key_exists($key, $request->nomePlanoTrabalho)){
// if($request->semPlano[$key] == 'sim'){
// $arquivo = Arquivo::where('participanteId', $participante->id)->first();
// //se plano já existir, deletar
// if($arquivo != null){
// Storage::delete($arquivo->nome);
// $arquivo->delete();
// }
// }
// }
// }
// }
// }
// // Atualizando possiveis usuários removidos
// $participantesUsersIds = Participante::where('trabalho_id', '=', $trabalho->id)->select('user_id')->get();
// $users = User::whereIn('id', $participantesUsersIds)->get();
// foreach ($users as $user) {
// if (!(in_array($user->email, $request->emailParticipante, false))) {
// $participante = Participante::where([['user_id', '=', $user->id], ['trabalho_id', '=', $trabalho->id]])->first();
// $arquivo = Arquivo::where('participanteId', $participante->id)->first();
// if($arquivo != null){
// Storage::delete($arquivo->nome);
// $arquivo->delete();
// }
// $participante->delete();
// }
// }
public function destroy(Request $request) public function destroy(Request $request)
{ {
$projeto = Trabalho::find($request->id); $projeto = Trabalho::find($request->id);
...@@ -793,6 +585,7 @@ class TrabalhoController extends Controller ...@@ -793,6 +585,7 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
//dd($projeto); //dd($projeto);
if (Storage::disk()->exists($projeto->anexoProjeto)) { if (Storage::disk()->exists($projeto->anexoProjeto)) {
ob_end_clean();
return Storage::download($projeto->anexoProjeto); return Storage::download($projeto->anexoProjeto);
} }
return abort(404); return abort(404);
...@@ -800,6 +593,7 @@ class TrabalhoController extends Controller ...@@ -800,6 +593,7 @@ class TrabalhoController extends Controller
public function baixarAnexoGrupoPesquisa($id) { public function baixarAnexoGrupoPesquisa($id) {
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->anexoGrupoPesquisa)) { if (Storage::disk()->exists($projeto->anexoGrupoPesquisa)) {
ob_end_clean();
return Storage::download($projeto->anexoGrupoPesquisa); return Storage::download($projeto->anexoGrupoPesquisa);
} }
return abort(404); return abort(404);
...@@ -809,6 +603,7 @@ class TrabalhoController extends Controller ...@@ -809,6 +603,7 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->anexoDecisaoCONSU)) { if (Storage::disk()->exists($projeto->anexoDecisaoCONSU)) {
ob_end_clean();
return Storage::download($projeto->anexoDecisaoCONSU); return Storage::download($projeto->anexoDecisaoCONSU);
} }
return abort(404); return abort(404);
...@@ -818,6 +613,7 @@ class TrabalhoController extends Controller ...@@ -818,6 +613,7 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->anexoAutorizacaoComiteEtica)) { if (Storage::disk()->exists($projeto->anexoAutorizacaoComiteEtica)) {
ob_end_clean();
return Storage::download($projeto->anexoAutorizacaoComiteEtica); return Storage::download($projeto->anexoAutorizacaoComiteEtica);
} }
return abort(404); return abort(404);
...@@ -827,6 +623,7 @@ class TrabalhoController extends Controller ...@@ -827,6 +623,7 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->anexoLattesCoordenador)) { if (Storage::disk()->exists($projeto->anexoLattesCoordenador)) {
ob_end_clean();
return Storage::download($projeto->anexoLattesCoordenador); return Storage::download($projeto->anexoLattesCoordenador);
} }
return abort(404); return abort(404);
...@@ -836,7 +633,32 @@ class TrabalhoController extends Controller ...@@ -836,7 +633,32 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->anexoPlanilhaPontuacao)) { if (Storage::disk()->exists($projeto->anexoPlanilhaPontuacao)) {
return Storage::download($projeto->anexoPlanilhaPontuacao); ob_end_clean();
$file = $projeto->anexoPlanilhaPontuacao;
$ext = explode(".", $file);
switch ($ext[1]) {
case 'xlsx':
$hearder = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
break;
case 'xls':
$hearder = 'application/vnd.ms-excel';
break;
case 'ods':
$hearder = 'application/vnd.oasis.opendocument.spreadsheet';
break;
default:
$hearder = 'application/vnd.ms-excel';
break;
}
$headers = array(
"Content-type: {$hearder}",
);
return Storage::download($projeto->anexoPlanilhaPontuacao, "Planilha.{$ext[1]}",$headers);
} }
return abort(404); return abort(404);
} }
...@@ -845,6 +667,7 @@ class TrabalhoController extends Controller ...@@ -845,6 +667,7 @@ class TrabalhoController extends Controller
$projeto = Trabalho::find($id); $projeto = Trabalho::find($id);
if (Storage::disk()->exists($projeto->justificativaAutorizacaoEtica)) { if (Storage::disk()->exists($projeto->justificativaAutorizacaoEtica)) {
ob_end_clean();
return Storage::download($projeto->justificativaAutorizacaoEtica); return Storage::download($projeto->justificativaAutorizacaoEtica);
} }
...@@ -858,6 +681,7 @@ class TrabalhoController extends Controller ...@@ -858,6 +681,7 @@ class TrabalhoController extends Controller
->orderByDesc('updated_at')->first(); ->orderByDesc('updated_at')->first();
if (Storage::disk()->exists($trabalho->$nomeAnexo)) { if (Storage::disk()->exists($trabalho->$nomeAnexo)) {
ob_end_clean();
return Storage::download($trabalho->$nomeAnexo); return Storage::download($trabalho->$nomeAnexo);
} }
return abort(404); return abort(404);
...@@ -868,68 +692,17 @@ class TrabalhoController extends Controller ...@@ -868,68 +692,17 @@ class TrabalhoController extends Controller
->orderByDesc('updated_at')->first(); ->orderByDesc('updated_at')->first();
if (Storage::disk()->exists($eventoTemp->$nomeAnexo)) { if (Storage::disk()->exists($eventoTemp->$nomeAnexo)) {
ob_end_clean();
return Storage::download($eventoTemp->$nomeAnexo); return Storage::download($eventoTemp->$nomeAnexo);
} }
return abort(404); return abort(404);
} }
// try {
// $edital = Evento::find($request->editalId);
// $hoje = now();
// if (!($edital->inicioSubmissao < $hoje && $edital->fimSubmissao >= $hoje)) {
// return redirect()->route('inicial')->with(['error'=> 0, 'mensagem' => 'As submissões para o edital '. $edital->titulo .' foram encerradas.']);
// }
// $projeto = $this->atribuirDados($request, $edital);
// $projeto->save();
// // Email de submissão
// // $subject = "Submissão de Trabalho";
// // $proponente = Auth()->user();
// // Mail::to($proponente->email)->send(new SubmissaoTrabalho($proponente, $subject, $edital, $projeto));
// $id = $projeto->id;
// Notification::send(Auth::user(), new SubmissaoNotification($id));
// // Salvando participantes
// $this->salvarParticipantes($request, $edital, $projeto);
// return redirect(route('proponente.projetos'))->with(['mensagem' => 'Projeto submetido com sucesso!']);
// } catch (\Throwable $th) {
// return back()->with(['mensagem' => $th->getMessage()]);
// }
// foreach ($request->marcado as $key => $value) {
// $user = User::firstOrCreate([
// ['email' => $request->email[$value]],
// [
// 'name' => $request->name[$value], 'instituicao' => $request->instituicao[$value],
// 'cpf' => $request->cpf[$value], 'celular' => $request->celular[$value],
// ]
// ]);
// $participante = Participante::create([
// 'rg' => $request->rg[$value], 'data_de_nascimento'=> $request->data_de_nascimento[$value],
// 'curso' => $request->curso[$value], 'turno' => $request->turno[$value],
// 'ordem_prioridade'=> $request->ordem_prioridade[$value],'periodo_atual' => $request->periodo_atual[$value],
// 'total_periodos' => $request->total_periodos[$value],'media_do_curso'=> $request->media_do_curso[$value]
// ]);
// $user->endereco()->create([
// 'rua' => $request->rua[$value],
// 'numero' => $request->numero[$value],
// 'bairro' => $request->bairro[$value],
// 'cidade' => $request->cidade[$value],
// 'uf' => $request->uf[$value],
// 'cep' => $request->cep[$value],
// 'complemento' => $request->complemento[$value],
// ]);
// $user->participantes()->save($participante);
// $trabalho->participantes()->save($participante);
// }
public function update(UpdateTrabalho $request, $id) public function update(UpdateTrabalho $request, $id)
{ {
// dd($request->participante_id);
// dd( $request->all() );
try { try {
if (!$request->has('rascunho') ) { if (!$request->has('rascunho') ) {
$request->merge([ $request->merge([
...@@ -944,31 +717,36 @@ class TrabalhoController extends Controller ...@@ -944,31 +717,36 @@ class TrabalhoController extends Controller
$request->merge([ $request->merge([
'coordenador_id' => $evento->coordenadorComissao->id 'coordenador_id' => $evento->coordenadorComissao->id
]); ]);
$trabalho = Auth::user()->proponentes->trabalhos()->where('id', $id)->first();
DB::beginTransaction(); DB::beginTransaction();
if(!$trabalho){
$trabalho = Auth::user()->proponentes->trabalhos()->where('id', $id)->first(); return back()->withErrors(['Proposta não encontrada']);
}
$trabalho->update($request->except([ $trabalho->update($request->except([
'anexoProjeto', 'anexoDecisaoCONSU','anexoPlanilhaPontuacao', 'anexoProjeto', 'anexoDecisaoCONSU','anexoPlanilhaPontuacao',
'anexoLattesCoordenador','anexoGrupoPesquisa','anexoAutorizacaoComiteEtica', 'anexoLattesCoordenador','anexoGrupoPesquisa','justificativaAutorizacaoEtica','anexoAutorizacaoComiteEtica'
'justificativaAutorizacaoEtica'
])); ]));
$pasta = 'trabalhos/' . $evento->id . '/' . $trabalho->id;
$trabalho = $this->armazenarAnexosFinais($request, $pasta, $trabalho, $evento);
$trabalho->save();
if ($request->marcado == null) { if ($request->marcado == null) {
$idExcluido = $trabalho->participantes->pluck('id'); $idExcluido = $trabalho->participantes->pluck('id');
}else{ }else{
$idExcluido = []; $idExcluido = [];
} }
// dd($idExcluido);
// dd(array_search( 2, $request->marcado));
foreach ($request->participante_id as $key => $value) { foreach ($request->participante_id as $key => $value) {
// $value = intval($value);
if($request->marcado != null && array_search( $key, $request->marcado) === false){ if($request->marcado != null && array_search( $key, $request->marcado) === false){
if($value !== null) if($value !== null)
array_push($idExcluido, $value); array_push($idExcluido, $value);
} }
} }
// dd($idExcluido);
foreach ($idExcluido as $key => $value) { foreach ($idExcluido as $key => $value) {
$trabalho->participantes()->find($value)->delete(); $trabalho->participantes()->find($value)->delete();
} }
...@@ -1070,9 +848,7 @@ class TrabalhoController extends Controller ...@@ -1070,9 +848,7 @@ class TrabalhoController extends Controller
} }
$pasta = 'trabalhos/' . $evento->id . '/' . $trabalho->id;
$trabalho = $this->armazenarAnexosFinais($request, $pasta, $trabalho, $evento);
$trabalho->save();
DB::commit(); DB::commit();
......
...@@ -2,9 +2,10 @@ ...@@ -2,9 +2,10 @@
namespace App\Http\Requests; namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest; use App\Evento;
use Illuminate\Support\Facades\Auth;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Auth;
use Illuminate\Foundation\Http\FormRequest;
class StoreTrabalho extends FormRequest class StoreTrabalho extends FormRequest
{ {
...@@ -25,8 +26,8 @@ class StoreTrabalho extends FormRequest ...@@ -25,8 +26,8 @@ class StoreTrabalho extends FormRequest
*/ */
public function rules() public function rules()
{ {
$evento = Evento::find($this->editalId);
$rules = [ $rules = [
'editalId' => ['required', 'string'], 'editalId' => ['required', 'string'],
'marcado.*' => ['required'], 'marcado.*' => ['required'],
...@@ -37,7 +38,7 @@ class StoreTrabalho extends FormRequest ...@@ -37,7 +38,7 @@ class StoreTrabalho extends FormRequest
'pontuacaoPlanilha' => ['required', 'string'], 'pontuacaoPlanilha' => ['required', 'string'],
'linkGrupoPesquisa' => ['required', 'string'], 'linkGrupoPesquisa' => ['required', 'string'],
'anexoProjeto' => ['required', 'mimes:pdf'], 'anexoProjeto' => ['required', 'mimes:pdf'],
'anexoDecisaoCONSU' => ['required', 'mimes:pdf'], 'anexoDecisaoCONSU' => [Rule::requiredIf($evento->consu), 'mimes:pdf'],
'anexoPlanilhaPontuacao' => ['required'], 'anexoPlanilhaPontuacao' => ['required'],
'anexoLattesCoordenador' => ['required', 'mimes:pdf'], 'anexoLattesCoordenador' => ['required', 'mimes:pdf'],
'anexoGrupoPesquisa' => ['required', 'mimes:pdf'], 'anexoGrupoPesquisa' => ['required', 'mimes:pdf'],
...@@ -62,7 +63,6 @@ class StoreTrabalho extends FormRequest ...@@ -62,7 +63,6 @@ class StoreTrabalho extends FormRequest
$rules['cidade.'.$value] = ['required', 'string']; $rules['cidade.'.$value] = ['required', 'string'];
$rules['uf.'.$value] = ['required', 'string']; $rules['uf.'.$value] = ['required', 'string'];
$rules['cep.'.$value] = ['required', 'string']; $rules['cep.'.$value] = ['required', 'string'];
$rules['complemento.'.$value] = ['required', 'string'];
//participante //participante
$rules['rg.'.$value] = ['required', 'string']; $rules['rg.'.$value] = ['required', 'string'];
$rules['data_de_nascimento.'.$value] = ['required', 'string']; $rules['data_de_nascimento.'.$value] = ['required', 'string'];
......
...@@ -2,10 +2,11 @@ ...@@ -2,10 +2,11 @@
namespace App\Http\Requests; namespace App\Http\Requests;
use App\Evento;
use App\Trabalho; use App\Trabalho;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Auth;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Auth;
use Illuminate\Foundation\Http\FormRequest;
class UpdateTrabalho extends FormRequest class UpdateTrabalho extends FormRequest
{ {
...@@ -27,7 +28,7 @@ class UpdateTrabalho extends FormRequest ...@@ -27,7 +28,7 @@ class UpdateTrabalho extends FormRequest
public function rules() public function rules()
{ {
$projeto = Trabalho::find($this->id); $projeto = Trabalho::find($this->id);
$evento = Evento::find($this->editalId);
$rules = [ $rules = [
'editalId' => ['required', 'string'], 'editalId' => ['required', 'string'],
'marcado.*' => ['required'], 'marcado.*' => ['required'],
...@@ -38,15 +39,15 @@ class UpdateTrabalho extends FormRequest ...@@ -38,15 +39,15 @@ class UpdateTrabalho extends FormRequest
'pontuacaoPlanilha' => ['required', 'string'], 'pontuacaoPlanilha' => ['required', 'string'],
'linkGrupoPesquisa' => ['required', 'string'], 'linkGrupoPesquisa' => ['required', 'string'],
'anexoProjeto' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoProjeto == null)], 'mimes:pdf'], 'anexoProjeto' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoProjeto == null)], 'mimes:pdf'],
'anexoDecisaoCONSU' => ['mimes:pdf'], 'anexoDecisaoCONSU' => [Rule::requiredIf($evento->consu && $projeto->anexoDecisaoCONSU == null), 'mimes:pdf'],
'anexoPlanilhaPontuacao' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoPlanilhaPontuacao == null)]], 'anexoPlanilhaPontuacao' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoPlanilhaPontuacao == null)]],
'anexoLattesCoordenador' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoLattesCoordenador == null)], 'mimes:pdf'], 'anexoLattesCoordenador' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoLattesCoordenador == null)], 'mimes:pdf'],
'anexoGrupoPesquisa' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoGrupoPesquisa == null)], 'mimes:pdf'], 'anexoGrupoPesquisa' => [[Rule::requiredIf(!$this->has('rascunho') && $projeto->anexoGrupoPesquisa == null)], 'mimes:pdf'],
'anexoAutorizacaoComiteEtica' => [ 'anexoAutorizacaoComiteEtica' => [
Rule::requiredIf((!$this->has('rascunho') && $projeto->anexoAutorizacaoComiteEtica == null) ) Rule::requiredIf((!$this->has('rascunho') && $projeto->justificativaAutorizacaoEtica == null && $projeto->anexoAutorizacaoComiteEtica == null) )
], ],
'justificativaAutorizacaoEtica' => [ 'justificativaAutorizacaoEtica' => [
Rule::requiredIf((!$this->has('rascunho') && $projeto->anexoAutorizacaoComiteEtica == null)) Rule::requiredIf((!$this->has('rascunho') && $projeto->anexoAutorizacaoComiteEtica == null && $projeto->justificativaAutorizacaoEtica == null))
], ],
]; ];
...@@ -66,7 +67,6 @@ class UpdateTrabalho extends FormRequest ...@@ -66,7 +67,6 @@ class UpdateTrabalho extends FormRequest
$rules['cidade.'.$value] = ['required', 'string']; $rules['cidade.'.$value] = ['required', 'string'];
$rules['uf.'.$value] = ['required', 'string']; $rules['uf.'.$value] = ['required', 'string'];
$rules['cep.'.$value] = ['required', 'string']; $rules['cep.'.$value] = ['required', 'string'];
$rules['complemento.'.$value] = ['required', 'string'];
//participante //participante
$rules['rg.'.$value] = ['required', 'string']; $rules['rg.'.$value] = ['required', 'string'];
$rules['data_de_nascimento.'.$value] = ['required', 'string']; $rules['data_de_nascimento.'.$value] = ['required', 'string'];
...@@ -91,4 +91,14 @@ class UpdateTrabalho extends FormRequest ...@@ -91,4 +91,14 @@ class UpdateTrabalho extends FormRequest
return $rules; return $rules;
} }
} }
public function messages()
{
return [
'titulo.required' => 'O :attribute é obrigatório',
'justificativaAutorizacaoEtica.required' => 'O campo justificativa Autorizacao Etica é obrigatório',
'anexoAutorizacaoComiteEtica.required' => 'O campo anexoAutorizacao Comite Etica é obrigatório',
];
}
} }
...@@ -1643,16 +1643,16 @@ ...@@ -1643,16 +1643,16 @@
}, },
{ {
"name": "monolog/monolog", "name": "monolog/monolog",
"version": "2.2.0", "version": "2.3.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/Seldaek/monolog.git", "url": "https://github.com/Seldaek/monolog.git",
"reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084" "reference": "df991fd88693ab703aa403413d83e15f688dae33"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/1cb1cde8e8dd0f70cc0fe51354a59acad9302084", "url": "https://api.github.com/repos/Seldaek/monolog/zipball/df991fd88693ab703aa403413d83e15f688dae33",
"reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084", "reference": "df991fd88693ab703aa403413d83e15f688dae33",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
...@@ -1671,7 +1671,7 @@ ...@@ -1671,7 +1671,7 @@
"php-amqplib/php-amqplib": "~2.4", "php-amqplib/php-amqplib": "~2.4",
"php-console/php-console": "^3.1.3", "php-console/php-console": "^3.1.3",
"phpspec/prophecy": "^1.6.1", "phpspec/prophecy": "^1.6.1",
"phpstan/phpstan": "^0.12.59", "phpstan/phpstan": "^0.12.91",
"phpunit/phpunit": "^8.5", "phpunit/phpunit": "^8.5",
"predis/predis": "^1.1", "predis/predis": "^1.1",
"rollbar/rollbar": "^1.3", "rollbar/rollbar": "^1.3",
...@@ -1723,7 +1723,7 @@ ...@@ -1723,7 +1723,7 @@
], ],
"support": { "support": {
"issues": "https://github.com/Seldaek/monolog/issues", "issues": "https://github.com/Seldaek/monolog/issues",
"source": "https://github.com/Seldaek/monolog/tree/2.2.0" "source": "https://github.com/Seldaek/monolog/tree/2.3.0"
}, },
"funding": [ "funding": [
{ {
...@@ -1735,7 +1735,7 @@ ...@@ -1735,7 +1735,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2020-12-14T13:15:25+00:00" "time": "2021-07-05T11:34:13+00:00"
}, },
{ {
"name": "nesbot/carbon", "name": "nesbot/carbon",
...@@ -1832,16 +1832,16 @@ ...@@ -1832,16 +1832,16 @@
}, },
{ {
"name": "nikic/php-parser", "name": "nikic/php-parser",
"version": "v4.10.5", "version": "v4.11.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/nikic/PHP-Parser.git", "url": "https://github.com/nikic/PHP-Parser.git",
"reference": "4432ba399e47c66624bc73c8c0f811e5c109576f" "reference": "fe14cf3672a149364fb66dfe11bf6549af899f94"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4432ba399e47c66624bc73c8c0f811e5c109576f", "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/fe14cf3672a149364fb66dfe11bf6549af899f94",
"reference": "4432ba399e47c66624bc73c8c0f811e5c109576f", "reference": "fe14cf3672a149364fb66dfe11bf6549af899f94",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
...@@ -1882,9 +1882,9 @@ ...@@ -1882,9 +1882,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/nikic/PHP-Parser/issues", "issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v4.10.5" "source": "https://github.com/nikic/PHP-Parser/tree/v4.11.0"
}, },
"time": "2021-05-03T19:11:20+00:00" "time": "2021-07-03T13:36:55+00:00"
}, },
{ {
"name": "opis/closure", "name": "opis/closure",
...@@ -7321,5 +7321,5 @@ ...@@ -7321,5 +7321,5 @@
"php": "^7.2" "php": "^7.2"
}, },
"platform-dev": [], "platform-dev": [],
"plugin-api-version": "2.1.0" "plugin-api-version": "2.0.0"
} }
<?php <?php
use Illuminate\Support\Str; use Illuminate\Support\Str;
// $DATABASE_URL=parse_url('postgres://shldedzeknxkxv:2b9d0bcbdc7bd07dcbc4db2716e1af333788b38234d527435607a3fd1353f52b@ec2-54-227-246-76.compute-1.amazonaws.com:5432/d87d2lg0us76su');
return [ return [
/* /*
...@@ -15,7 +15,7 @@ return [ ...@@ -15,7 +15,7 @@ return [
| |
*/ */
'default' => env('DB_CONNECTION', 'mysql'), 'default' => env('DB_CONNECTION', 'pgsql'),
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
...@@ -78,6 +78,20 @@ return [ ...@@ -78,6 +78,20 @@ return [
'sslmode' => 'prefer', 'sslmode' => 'prefer',
], ],
// 'pgsql' => array(
// 'driver' => 'pgsql',
// 'host' => $DATABASE_URL['host'],
// 'port' => $DATABASE_URL['port'],
// 'database' => ltrim($DATABASE_URL['path'], "/"),
// 'username' => $DATABASE_URL['user'],
// 'password' => $DATABASE_URL['pass'],
// 'charset' => 'utf8',
// 'prefix' => '',
// 'prefix_indexes' => true,
// 'schema' => 'public',
// 'sslmode' => 'prefer',
// ),
'sqlsrv' => [ 'sqlsrv' => [
'driver' => 'sqlsrv', 'driver' => 'sqlsrv',
'url' => env('DATABASE_URL'), 'url' => env('DATABASE_URL'),
......
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AlterTableEventos extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('eventos', function (Blueprint $table) {
$table->boolean('consu')->default(false);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('eventos', function (Blueprint $table) {
$table->dropColumn('consu');
});
}
}
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
</div> </div>
{{-- nome | Participantes | Tipo--}} {{-- nome | Participantes | Tipo--}}
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-sm-6"> <div class="col-sm-12">
<label for="nome" class="col-form-label">{{ __('Nome*:') }}</label> <label for="nome" class="col-form-label">{{ __('Nome*:') }}</label>
<input id="nome" type="text" class="form-control @error('nome') is-invalid @enderror" name="nome" value="{{ old('nome') }}" required autocomplete="nome" autofocus> <input id="nome" type="text" class="form-control @error('nome') is-invalid @enderror" name="nome" value="{{ old('nome') }}" required autocomplete="nome" autofocus>
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
@enderror @enderror
</div> </div>
<div class="col-sm-2"> <div class="col-sm-5">
<label for="tipo" class="col-form-label">{{ __('Tipo*:') }}</label> <label for="tipo" class="col-form-label">{{ __('Tipo*:') }}</label>
<select id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" value="{{ old('tipo') }}" required> <select id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" value="{{ old('tipo') }}" required>
<option @if(old('tipo')=='PIBIC' ) selected @endif value="PIBIC">PIBIC</option> <option @if(old('tipo')=='PIBIC' ) selected @endif value="PIBIC">PIBIC</option>
...@@ -56,7 +56,8 @@ ...@@ -56,7 +56,8 @@
@enderror @enderror
</div> </div>
<div class="col-sm-2"> <div class="col-sm-2">
<label for="numParticipantes" class="col-form-label">{{ __('numParticipantes*:') }}</label> <label for="numParticipantes" class="col-form-label">{{ __('Nº de Participantes*:') }}</label>
<input id="numParticipantes" type="number" min="1" max="20" class="form-control @error('numParticipantes') is-invalid @enderror" name="numParticipantes" value="{{ old('numParticipantes') }}" required autocomplete="numParticipantes" autofocus> <input id="numParticipantes" type="number" min="1" max="20" class="form-control @error('numParticipantes') is-invalid @enderror" name="numParticipantes" value="{{ old('numParticipantes') }}" required autocomplete="numParticipantes" autofocus>
@error('numParticipantes') @error('numParticipantes')
...@@ -65,6 +66,18 @@ ...@@ -65,6 +66,18 @@
</span> </span>
@enderror @enderror
</div> </div>
<div class="col-sm-3">
<label for="consu" class="col-form-label">{{ __('Consu obrigatório?*') }}</label>
<br>
<input type="checkbox" name="consu" id="consu">
{{-- <input id="consu" type="checkbox" class="form-control @error('consu') is-invalid @enderror" name="consu" @if(old('consu')) checked @endif required autocomplete="consu" autofocus> --}}
@error('consu')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>{{-- end nome | Participantes | Tipo--}} </div>{{-- end nome | Participantes | Tipo--}}
{{-- Descricao Edital --}} {{-- Descricao Edital --}}
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
</div> </div>
{{-- nome | Tipo--}} {{-- nome | Tipo--}}
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-sm-6">{{--Nome do evento--}} <div class="col-sm-12">{{--Nome do evento--}}
<label for="nome" class="col-form-label">{{ __('Nome*:') }}</label> <label for="nome" class="col-form-label">{{ __('Nome*:') }}</label>
<input value="{{$evento->nome}}" id="nome" type="text" class="form-control @error('nome') is-invalid @enderror" name="nome" value="{{ old('nome') }}" required autocomplete="nome" autofocus> <input value="{{$evento->nome}}" id="nome" type="text" class="form-control @error('nome') is-invalid @enderror" name="nome" value="{{ old('nome') }}" required autocomplete="nome" autofocus>
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
</div>{{--End Nome do evento--}} </div>{{--End Nome do evento--}}
{{-- Tipo do evento --}} {{-- Tipo do evento --}}
<div class="col-sm-2"> <div class="col-sm-5">
<label for="tipo" class="col-form-label">{{ __('Tipo*:') }}</label> <label for="tipo" class="col-form-label">{{ __('Tipo*:') }}</label>
<!-- <input value="{{$evento->tipo}}" id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" value="{{ old('tipo') }}" required autocomplete="tipo" autofocus> --> <!-- <input value="{{$evento->tipo}}" id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" value="{{ old('tipo') }}" required autocomplete="tipo" autofocus> -->
<select id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" required> <select id="tipo" type="text" class="form-control @error('tipo') is-invalid @enderror" name="tipo" required>
...@@ -70,6 +70,18 @@ ...@@ -70,6 +70,18 @@
</span> </span>
@enderror @enderror
</div> </div>
<div class="col-sm-3">
<label for="consu" class="col-form-label">{{ __('Consu obrigatório?*') }}</label>
<br>
<input type="checkbox" @if($evento->consu) checked @endif name="consu" id="consu">
{{-- <input id="consu" type="checkbox" class="form-control @error('consu') is-invalid @enderror" name="consu" @if(old('consu')) checked @endif required autocomplete="consu" autofocus> --}}
@error('consu')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>{{-- end nome | Participantes | Tipo--}} </div>{{-- end nome | Participantes | Tipo--}}
{{-- Descricao Evento --}} {{-- Descricao Evento --}}
......
...@@ -41,15 +41,28 @@ ...@@ -41,15 +41,28 @@
@enderror @enderror
@endcomponent @endcomponent
</div> </div>
<div class="form-group col-md-6"> @if($edital->consu)
<label class=" control-label" for="firstname">Decisão do CONSU (.pdf)</label> <div class="form-group col-md-6">
<input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" /> <label class=" control-label" for="firstname">Decisão do CONSU (.pdf)<span style="color: red; font-weight:bold">*</span></label>
@error('anexoDecisaoCONSU') <input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" />
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> @error('anexoDecisaoCONSU')
<strong>{{ $message }}</strong> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
</span> <strong>{{ $message }}</strong>
@enderror </span>
</div> @enderror
</div>
@else
<div class="form-group col-md-6">
<label class=" control-label" for="firstname">Decisão do CONSU (.pdf)</label>
<input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" />
@error('anexoDecisaoCONSU')
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
@endif
<div class="form-group col-md-6" style="margin-top: 10px"> <div class="form-group col-md-6" style="margin-top: 10px">
@component('componentes.input', ['label' => 'Grupo de Pesquisa (.pdf)']) @component('componentes.input', ['label' => 'Grupo de Pesquisa (.pdf)'])
......
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
<div class="col-md-12"><h5>Endereço</h5></div> <div class="col-md-12"><h5>Endereço</h5></div>
<div class="col-6"> <div class="col-6">
@component('componentes.input', ['label' => 'CEP']) @component('componentes.input', ['label' => 'CEP'])
<input type="text" class="form-control" value="{{old('cep')[$i] ?? "" }}" name="cep[{{$i}}]" placeholder="CEP" /> <input type="text" class="form-control cep" value="{{old('cep')[$i] ?? "" }}" name="cep[{{$i}}]" placeholder="CEP" />
@error('cep.'.$i) @error('cep.'.$i)
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
...@@ -167,14 +167,15 @@ ...@@ -167,14 +167,15 @@
@endcomponent @endcomponent
</div> </div>
<div class="col-12"> <div class="col-12">
@component('componentes.input', ['label' => 'Complemento',]) <div class="form-group">
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? "" }}" name="complemento[{{$i}}]" placeholder="Complemento" /> <label class=" control-label" for="firstname">Complemento</label>
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? "" }}" name="complemento[{{$i}}]" placeholder="Complemento" />
@error('complemento.'.$i) @error('complemento.'.$i)
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
</span> </span>
@enderror @enderror
@endcomponent </div>
</div> </div>
<div class="col-md-12"><h5>Dados do curso</h5></div> <div class="col-md-12"><h5>Dados do curso</h5></div>
<div class="col-6"> <div class="col-6">
......
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
</div> </div>
<div class="form-group col-md-6"> <div class="form-group col-md-6">
<label for="pontuacaoPlanilha">Valor da planilha de pontuação <span style="color: red; font-weight:bold">*</span></label> <label for="pontuacaoPlanilha">Valor da planilha de pontuação <span style="color: red; font-weight:bold">*</span></label>
<input class="form-control @error('pontuacaoPlanilha') is-invalid @enderror" type="number" min="0" name="pontuacaoPlanilha" <input class="form-control @error('pontuacaoPlanilha') is-invalid @enderror" type="number" min="0" step=".01" name="pontuacaoPlanilha"
value="{{old('pontuacaoPlanilha')}}" > value="{{old('pontuacaoPlanilha')}}" >
@error('pontuacaoPlanilha') @error('pontuacaoPlanilha')
......
...@@ -29,20 +29,20 @@ ...@@ -29,20 +29,20 @@
<div class="row justify-content-center"> <div class="row justify-content-center">
@component('evento.formulario.projeto', ['grandeAreas' => $grandeAreas]) @include('evento.formulario.projeto')
@endcomponent
@component('evento.formulario.proponente')
@endcomponent
@component('evento.formulario.anexos') @include('evento.formulario.proponente')
@endcomponent
@component('evento.formulario.participantes', ['estados' => $estados, 'enum_turno' => $enum_turno, 'edital'=>$edital])
@endcomponent
@component('evento.formulario.finalizar') @include('evento.formulario.anexos')
@endcomponent
@include('evento.formulario.participantes')
@include('evento.formulario.finalizar')
</div> </div>
</div> </div>
......
...@@ -13,10 +13,22 @@ ...@@ -13,10 +13,22 @@
O Submeta é um sistema de submissão de projetos acadêmicos, que pode ser adotado para os diferentes propósitos de Ensino, Pesquisa e Extensão. O sistema abrange todas as principais etapas relacionadas à submissão de projetos, permitindo o lançamento e configuração de editais, além de gerenciar a distribuição das avaliações e os pareceres técnicos dos avaliadores, como também, visualizar os projetos submetidos pelos proponentes. O Submeta é um sistema de submissão de projetos acadêmicos, que pode ser adotado para os diferentes propósitos de Ensino, Pesquisa e Extensão. O sistema abrange todas as principais etapas relacionadas à submissão de projetos, permitindo o lançamento e configuração de editais, além de gerenciar a distribuição das avaliações e os pareceres técnicos dos avaliadores, como também, visualizar os projetos submetidos pelos proponentes.
</p> </p>
</div> </div>
<br>
<div class="row position-text"> <div class="row position-text">
{{-- <button class="btn btn-opcoes-edital" style="margin-bottom: 20px;"> <div class="alert alert-danger" role="alert">
Leia mais <p>
</button> --}} <strong>INFORME</strong>
</p>
<p>
<strong>Comitês Internos do PIBIC e do PIBITI comunicam prorrogração do prazo de envio de propostas</strong>
</p>
<p>
Os Comitês Internos do PIBIC e do PIBITI da UFAPE informam que o prazo para envio das propostas referentes aos Editais PIBIC/PIC e PIBITI UFAPE 2021/2022 foi prorrogado para o dia 07/07/2021 até às 23h59min (horário de Brasília).
</p>
<p>
Não serão aceitas propostas submetidas após este prazo.
</p>
</div>
</div> </div>
</div> </div>
<br> <br>
......
...@@ -61,7 +61,7 @@ ...@@ -61,7 +61,7 @@
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-12"> <div class="col-12">
@component('componentes.input', ['label' => 'Planilha de Pontuação (.xlsx,.xls,.ods)']) @component('componentes.input', ['label' => 'Planilha de Pontuação (.xlsx,.xls,.ods)'])
<input type="file" class="input-group-text" name="anexoPlanilhaPontuacao" accept=".xlsx, .xls, .ods" /> <input type="file" class="input-group-text" name="anexoPlanilhaPontuacao" accept=".xlsx, .xls, .ods, .gnumeric" />
@error('anexoPlanilhaPontuacao') @error('anexoPlanilhaPontuacao')
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
...@@ -83,33 +83,65 @@ ...@@ -83,33 +83,65 @@
</div> </div>
{{-- Anexo da Decisão do CONSU --}} {{-- Anexo da Decisão do CONSU --}}
<div class="form-group col-md-6" style="margin-top: 10px"> @if($edital->consu)
<div class="row justify-content-center"> <div class="form-group col-md-6" style="margin-top: 10px">
<div class="col-12"> <div class="row justify-content-center">
<div class="form-group"> <div class="col-12">
<label class=" control-label" for="firstname">Decisão do CONSU (.pdf)</label> <div class="form-group">
<label class=" control-label" for="firstname">Decisão do CONSU (.pdf<span style="color: red; font-weight:bold">*</span>)</label>
<input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" />
@error('anexoDecisaoCONSU')
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
<input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" />
@error('anexoDecisaoCONSU')
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong>
</span>
@enderror
</div> </div>
@if($projeto->anexoDecisaoCONSU)
<div class="col-3 ">
<a href="{{ route('baixar.anexo.consu', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a>
</div>
@else
<div class="col-3 text-danger">
<p><i class="fas fa-times-circle fa-2x"></i></p>
</div>
@endif
</div> </div>
@if($projeto->anexoDecisaoCONSU) </div>
<div class="col-3 "> @else
<a href="{{ route('baixar.anexo.consu', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a> <div class="form-group col-md-6" style="margin-top: 10px">
</div> <div class="row justify-content-center">
@else <div class="col-12">
<div class="col-3 text-danger"> <div class="form-group">
<p><i class="fas fa-times-circle fa-2x"></i></p> <label class=" control-label" for="firstname">Decisão do CONSU (.pdf)</label>
<input type="file" class="input-group-text" name="anexoDecisaoCONSU" accept=".pdf" />
@error('anexoDecisaoCONSU')
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div> </div>
@endif @if($projeto->anexoDecisaoCONSU)
<div class="col-3 ">
<a href="{{ route('baixar.anexo.consu', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a>
</div>
@else
<div class="col-3 text-danger">
<p><i class="fas fa-times-circle fa-2x"></i></p>
</div>
@endif
</div>
</div> </div>
</div>
@endif
{{-- Anexo do Grupo de Pesquisa --}} {{-- Anexo do Grupo de Pesquisa --}}
<div class="form-group col-md-6" style="margin-top: 10px"> <div class="form-group col-md-6" style="margin-top: 10px">
...@@ -140,26 +172,26 @@ ...@@ -140,26 +172,26 @@
<div class="form-group col-md-6"> <div class="form-group col-md-6">
<label for="botao" class="col-form-label @error('botao') is-invalid @enderror" data-toggle="tooltip" data-placement="bottom" title="Se possuir, coloque todas em único arquivo pdf." style="margin-right: 15px;">{{ __('Possui autorizações especiais?') }} <span style="color: red; font-weight:bold">*</span></label> <label for="botao" class="col-form-label @error('botao') is-invalid @enderror" data-toggle="tooltip" data-placement="bottom" title="Se possuir, coloque todas em único arquivo pdf." style="margin-right: 15px;">{{ __('Possui autorizações especiais?') }} <span style="color: red; font-weight:bold">*</span></label>
<input type="radio" checked id="radioSim" name="sim" onchange="displayAutorizacoesEspeciais('sim')"> <input type="radio" id="radioSim" @if($projeto->anexoAutorizacaoComiteEtica) checked @endif name="sim" onchange="displayAutorizacoesEspeciais('sim')">
<label for="radioSim" style="margin-right: 5px">Sim</label> <label for="radioSim" style="margin-right: 5px">Sim</label>
<input type="radio" id="radioNao" name="nao" onchange="displayAutorizacoesEspeciais('nao')"> <input type="radio" id="radioNao" @if($projeto->justificativaAutorizacaoEtica) checked @endif name="nao" onchange="displayAutorizacoesEspeciais('nao')">
<label for="radioNao" style="margin-right: 5px">Não</label><br> <label for="radioNao" style="margin-right: 5px">Não</label><br>
<span id="idAvisoAutorizacaoEspecial" class="invalid-feedback" role="alert" style="overflow: visible; display:none"> <span id="idAvisoAutorizacaoEspecial" class="invalid-feedback" role="alert" style="overflow: visible; display:none">
<strong>Selecione a autorização e envie o arquivo!</strong> <strong>Selecione a autorização e envie o arquivo!</strong>
</span> </span>
<div class="form-group" id="displaySim" style="display: block; margin-top:-1rem"> <div class="form-group" id="displaySim" @if($projeto->anexoAutorizacaoComiteEtica) style="display: block; margin-top:-1rem" @else style="display: none; margin-top:-1rem" @endif >
@component('componentes.input', ['label' => 'Sim, declaro que necessito de autorizações especiais (.pdf)']) @component('componentes.input', ['label' => 'Sim, declaro que necessito de autorizações especiais (.pdf)'])
<input type="file" class="input-group-text" name="anexoAutorizacaoComiteEtica" accept=".pdf" /> <input type="file" class="input-group-text" name="anexoAutorizacaoComiteEtica" accept=".pdf" />
<div class="row justify-content-center"> <div class="row justify-content-center">
@if($projeto->justificativaAutorizacaoEtica || $projeto->anexoAutorizacaoComiteEtica ) @if($projeto->anexoAutorizacaoComiteEtica )
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-3 mt-2"> <div class="col-3 mt-2">
<a href="{{ route('baixar.anexo.comite', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a> <a href="{{ route('baixar.anexo.comite', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a>
</div> </div>
</div> </div>
@else @else
<div class="col-3 text-danger"> <div class="col-3 text-danger mt-2">
<p><i class="fas fa-times-circle fa-2x"></i></p> <p><i class="fas fa-times-circle fa-2x"></i></p>
</div> </div>
@endif @endif
...@@ -173,17 +205,17 @@ ...@@ -173,17 +205,17 @@
@endcomponent @endcomponent
</div> </div>
<div class="form-group" id="displayNao" style="display: none; margin-top:-1rem"> <div class="form-group" id="displayNao" @if($projeto->justificativaAutorizacaoEtica) style="display: block; margin-top:-1rem" @else style="display: none; margin-top:-1rem" @endif >
@component('componentes.input', ['label' => 'Declaração de que não necessito de autorização especiais (.pdf)']) @component('componentes.input', ['label' => 'Declaração de que não necessito de autorização especiais (.pdf)'])
<input type="file" class="input-group-text" name="justificativaAutorizacaoEtica" accept=".pdf" /> <input type="file" class="input-group-text" name="justificativaAutorizacaoEtica" accept=".pdf" />
@if($projeto->justificativaAutorizacaoEtica || $projeto->anexoAutorizacaoComiteEtica ) @if($projeto->justificativaAutorizacaoEtica)
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-3 mt-2"> <div class="col-3 mt-2">
<a href="{{ route('baixar.anexo.justificativa', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a> <a href="{{ route('baixar.anexo.justificativa', ['id' => $projeto->id]) }}"><i class="fas fa-file-pdf fa-2x"></i></a>
</div> </div>
</div> </div>
@else @else
<div class="col-3 text-danger"> <div class="col-3 text-danger mt-2">
<p><i class="fas fa-times-circle fa-2x"></i></p> <p><i class="fas fa-times-circle fa-2x"></i></p>
</div> </div>
@endif @endif
......
...@@ -177,14 +177,16 @@ ...@@ -177,14 +177,16 @@
@endcomponent @endcomponent
</div> </div>
<div class="col-12"> <div class="col-12">
@component('componentes.input', ['label' => 'Complemento',]) <div class="form-group">
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? $p->user->endereco->complemento }}" name="complemento[{{$i}}]" placeholder="Complemento" /> <label class=" control-label" for="firstname">Complemento</label>
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? $p->user->endereco->complemento }}" name="complemento[{{$i}}]" placeholder="Complemento" />
@error('complemento.'.$i) @error('complemento.'.$i)
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
</span> </span>
@enderror @enderror
@endcomponent </div>
</div> </div>
<div class="col-md-12"><h5>Dados do curso</h5></div> <div class="col-md-12"><h5>Dados do curso</h5></div>
<div class="col-6"> <div class="col-6">
...@@ -403,7 +405,7 @@ ...@@ -403,7 +405,7 @@
<div class="col-md-12"><h5>Endereço</h5></div> <div class="col-md-12"><h5>Endereço</h5></div>
<div class="col-6"> <div class="col-6">
@component('componentes.input', ['label' => 'CEP']) @component('componentes.input', ['label' => 'CEP'])
<input type="text" class="form-control" value="{{old('cep')[$i] ?? "" }}" name="cep[{{$i}}]" placeholder="CEP" /> <input type="text" class="form-control cep" value="{{old('cep')[$i] ?? "" }}" name="cep[{{$i}}]" placeholder="CEP" />
@error('cep.'.$i) @error('cep.'.$i)
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
...@@ -468,14 +470,15 @@ ...@@ -468,14 +470,15 @@
@endcomponent @endcomponent
</div> </div>
<div class="col-12"> <div class="col-12">
@component('componentes.input', ['label' => 'Complemento',]) <div class="form-group">
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? "" }}" name="complemento[{{$i}}]" placeholder="Complemento" /> <label class=" control-label" for="firstname">Complemento</label>
<input type="text" class="form-control" value="{{old('complemento')[$i] ?? "" }}" name="complemento[{{$i}}]" placeholder="Complemento" />
@error('complemento.'.$i) @error('complemento.'.$i)
<span class="invalid-feedback" role="alert" style="overflow: visible; display:block"> <span class="invalid-feedback" role="alert" style="overflow: visible; display:block">
<strong>{{ $message }}</strong> <strong>{{ $message }}</strong>
</span> </span>
@enderror @enderror
@endcomponent </div>
</div> </div>
<div class="col-md-12"><h5>Dados do curso</h5></div> <div class="col-md-12"><h5>Dados do curso</h5></div>
<div class="col-6"> <div class="col-6">
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment