Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Walter Felipe
submeta
Commits
72f53e8f
Commit
72f53e8f
authored
May 20, 2021
by
Carlos André
Browse files
editar projeto
parent
44278c29
Changes
7
Show whitespace changes
Inline
Side-by-side
app/Arquivo.php
View file @
72f53e8f
...
...
@@ -12,10 +12,14 @@ class Arquivo extends Model
* @var array
*/
protected
$fillable
=
[
'nome'
,
'versao'
,
'versaoFinal'
,
'data'
,
'trabalhoId'
,
'nome'
,
'versao'
,
'versaoFinal'
,
'data'
,
'trabalhoId'
,
'participanteId'
];
public
function
trabalho
(){
return
$this
->
belongsTo
(
'App\Trabalho'
,
'trabalhoId'
);
}
public
function
participante
()
{
return
$this
->
belongsTo
(
'App\Participante'
,
'participanteId'
);
}
}
app/Http/Controllers/TrabalhoController.php
View file @
72f53e8f
...
...
@@ -397,42 +397,102 @@ class TrabalhoController extends Controller
public
function
armazenarAnexosFinais
(
$request
,
$pasta
,
$trabalho
,
$evento
){
// Checando se é um novo trabalho ou uma edição
if
(
$trabalho
->
anexoProjeto
!=
null
)
{
// Anexo Projeto
if
(
isset
(
$request
->
anexoProjeto
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoProjeto
))
{
Storage
::
delete
(
$trabalho
->
anexoProjeto
);
}
$trabalho
->
anexoProjeto
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoProjeto
,
'Projeto.pdf'
);
}
//Anexo Decisão CONSU
if
(
$evento
->
tipo
==
'PIBIC'
||
$evento
->
tipo
==
'PIBIC-EM'
)
{
if
(
isset
(
$request
->
anexoCONSU
)){
if
(
isset
(
$request
->
anexoCONSU
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoDecisaoCONSU
))
{
Storage
::
delete
(
$trabalho
->
anexoDecisaoCONSU
);
}
$trabalho
->
anexoDecisaoCONSU
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoCONSU
,
'CONSU.pdf'
);
}
}
//Autorização ou Justificativa
if
(
isset
(
$request
->
anexoComiteEtica
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoAutorizacaoComiteEtica
))
{
Storage
::
delete
(
$trabalho
->
anexoAutorizacaoComiteEtica
);
}
$trabalho
->
anexoAutorizacaoComiteEtica
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoComiteEtica
,
'Comite_de_etica.pdf'
);
}
elseif
(
isset
(
$request
->
justificativaAutorizacaoEtica
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
justificativaAutorizacaoEtica
))
{
Storage
::
delete
(
$trabalho
->
justificativaAutorizacaoEtica
);
}
$trabalho
->
justificativaAutorizacaoEtica
=
Storage
::
putFileAs
(
$pasta
,
$request
->
justificativaAutorizacaoEtica
,
'Justificativa.pdf'
);
}
//Anexo Lattes
if
(
isset
(
$request
->
anexoLattesCoordenador
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoLattesCoordenador
))
{
Storage
::
delete
(
$trabalho
->
anexoLattesCoordenador
);
}
$trabalho
->
anexoLattesCoordenador
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoLattesCoordenador
,
'Lattes_Coordenador.pdf'
);
}
//Anexo Planilha
if
(
isset
(
$request
->
anexoPlanilha
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoPlanilhaPontuacao
))
{
Storage
::
delete
(
$trabalho
->
anexoPlanilhaPontuacao
);
}
$trabalho
->
anexoPlanilhaPontuacao
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoPlanilha
,
"Planilha."
.
$request
->
file
(
'anexoPlanilha'
)
->
extension
());
}
// Anexo grupo pesquisa
if
(
isset
(
$request
->
grupoPesquisa
)){
if
(
Storage
::
disk
()
->
exists
(
$trabalho
->
anexoGrupoPesquisa
))
{
Storage
::
delete
(
$trabalho
->
anexoGrupoPesquisa
);
}
$trabalho
->
anexoGrupoPesquisa
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoPlanilha
,
"Grupo_de_pesquisa."
.
$request
->
file
(
'grupoPesquisa'
)
->
extension
());
}
$trabalho
->
update
();
return
$trabalho
;
}
// Anexo Projeto
if
(
isset
(
$request
->
anexoProjeto
)){
$trabalho
->
anexoProjeto
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoProjeto
,
'Projeto.pdf'
);
}
//Anexo Decisão CONSU
if
(
$evento
->
tipo
==
'PIBIC'
||
$evento
->
tipo
==
'PIBIC-EM'
)
{
if
(
isset
(
$request
->
anexoCONSU
)){
$trabalho
->
anexoDecisaoCONSU
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoCONSU
,
'CONSU.pdf'
);
}
}
//Autorização ou Justificativa
if
(
isset
(
$request
->
anexoComiteEtica
)){
$trabalho
->
anexoAutorizacaoComiteEtica
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoComiteEtica
,
'Comite_de_etica.pdf'
);
}
elseif
(
isset
(
$request
->
justificativaAutorizacaoEtica
)){
$trabalho
->
justificativaAutorizacaoEtica
=
Storage
::
putFileAs
(
$pasta
,
$request
->
justificativaAutorizacaoEtica
,
'Justificativa.pdf'
);
}
//Anexo Lattes
if
(
isset
(
$request
->
anexoLattesCoordenador
)){
$trabalho
->
anexoLattesCoordenador
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoLattesCoordenador
,
'Lattes_Coordenador.pdf'
);
}
//Anexo Planilha
if
(
isset
(
$request
->
anexoPlanilha
)){
$trabalho
->
anexoPlanilhaPontuacao
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoPlanilha
,
"Planilha."
.
$request
->
file
(
'anexoPlanilha'
)
->
extension
());
}
// Anexo grupo pesquisa
if
(
isset
(
$request
->
grupoPesquisa
)){
$trabalho
->
anexoGrupoPesquisa
=
Storage
::
putFileAs
(
$pasta
,
$request
->
anexoPlanilha
,
"Grupo_de_pesquisa."
.
$request
->
file
(
'grupoPesquisa'
)
->
extension
());
}
return
$trabalho
;
}
...
...
@@ -495,7 +555,9 @@ class TrabalhoController extends Controller
'users'
=>
$users
,
'funcaoParticipantes'
=>
$funcaoParticipantes
,
'participantes'
=>
$participantes
,
'arquivos'
=>
$arquivos
,]);
'arquivos'
=>
$arquivos
,
'enum_turno'
=>
Participante
::
ENUM_TURNO
,
]);
}
/**
...
...
@@ -989,11 +1051,7 @@ class TrabalhoController extends Controller
$projeto
=
$this
->
atribuirDados
(
$request
,
$edital
);
$projeto
->
save
();
// Salvando anexos no storage
$pasta
=
'trabalhos/'
.
$edital
->
id
.
'/'
.
$projeto
->
id
;
$projeto
=
$this
->
armazenarAnexosFinais
(
$request
,
$pasta
,
$projeto
,
$edital
);
// Email de submissão
$subject
=
"Submissão de Trabalho"
;
$proponente
=
Auth
()
->
user
();
Mail
::
to
(
$proponente
->
email
)
->
send
(
new
SubmissaoTrabalho
(
$proponente
,
$subject
,
$edital
,
$projeto
));
...
...
@@ -1004,8 +1062,11 @@ class TrabalhoController extends Controller
dd
(
"foi"
);
}
public
function
atribuirDados
(
Request
$request
,
$edital
)
{
public
function
atribuirDados
(
Request
$request
,
$edital
,
Trabalho
$projeto
=
null
)
{
if
(
$projeto
==
null
)
{
$projeto
=
new
Trabalho
();
}
$proponente
=
User
::
find
(
auth
()
->
user
()
->
id
)
->
proponentes
;
$hoje
=
now
();
...
...
@@ -1021,21 +1082,182 @@ class TrabalhoController extends Controller
$projeto
->
evento_id
=
$request
->
editalId
;
$projeto
->
status
=
'Submetido'
;
$projeto
->
proponente_id
=
$proponente
->
id
;
//Anexos
$projeto
->
anexoProjeto
=
$request
->
anexoProjeto
;
$projeto
->
anexoAutorizacaoComiteEtica
=
$request
->
anexoComiteEtica
;
$projeto
->
justificativaAutorizacaoEtica
=
$request
->
justificativaAutorizacaoEtica
;
$projeto
->
anexoLattesCoordenador
=
$request
->
anexoLattesCoordenador
;
$projeto
->
anexoPlanilhaPontuacao
=
$request
->
anexoPlanilha
;
if
(
$edital
->
tipo
==
'PIBIC'
||
$edital
->
tipo
==
'PIBIC-EM'
){
$projeto
->
anexoDecisaoCONSU
=
$request
->
anexoCONSU
;
}
// Salvando anexos no storage
$pasta
=
'trabalhos/'
.
$edital
->
id
.
'/'
.
$projeto
->
id
;
$projeto
=
$this
->
armazenarAnexosFinais
(
$request
,
$pasta
,
$projeto
,
$edital
);
return
$projeto
;
}
public
function
salvarParticipantes
(
Request
$request
,
$edital
,
$projeto
)
{
public
function
salvarParticipantes
(
Request
$request
,
$edital
,
$projeto
,
$edicao
=
false
)
{
if
(
$edicao
)
{
$participantes
=
$projeto
->
participantes
;
$participantesPermanecem
=
collect
();
foreach
(
$request
->
participante_id
as
$key
=>
$id
)
{
// Novo participante
if
(
$id
==
0
)
{
$userParticipante
=
User
::
where
(
'email'
,
$request
->
emailParticipante
[
$key
])
->
first
();
$participante
=
new
Participante
();
if
(
$userParticipante
==
null
){
$passwordTemporario
=
Str
::
random
(
8
);
$usuario
=
new
User
();
$usuario
->
email
=
$request
->
emailParticipante
[
$key
];
$usuario
->
password
=
bcrypt
(
$passwordTemporario
);
$usuario
->
usuarioTemp
=
false
;
$usuario
->
name
=
$request
->
nomeParticipante
[
$key
];
$usuario
->
tipo
=
'participante'
;
$usuario
->
instituicao
=
$request
->
universidade
[
$key
];
$usuario
->
cpf
=
$request
->
cpf
[
$key
];
$usuario
->
celular
=
$request
->
celular
[
$key
];
$endereco
=
new
Endereco
();
$endereco
->
rua
=
$request
->
rua
[
$key
];
$endereco
->
numero
=
$request
->
numero
[
$key
];
$endereco
->
bairro
=
$request
->
bairro
[
$key
];
$endereco
->
cidade
=
$request
->
cidade
[
$key
];
$endereco
->
uf
=
$request
->
uf
[
$key
];
$endereco
->
cep
=
$request
->
cep
[
$key
];
$endereco
->
complemento
=
$request
->
complemento
[
$key
];
$endereco
->
save
();
$usuario
->
enderecoId
=
$endereco
->
id
;
$usuario
->
save
();
$participante
->
user_id
=
$usuario
->
id
;
$participante
->
trabalho_id
=
$projeto
->
id
;
$participante
->
funcao_participante_id
=
$request
->
funcaoParticipante
[
$key
];
$participante
->
confirmacao_convite
=
true
;
$participante
->
rg
=
$request
->
rg
[
$key
];
$participante
->
data_de_nascimento
=
$request
->
data_de_nascimento
[
$key
];
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_cursado
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
$subject
=
"Participante de Projeto"
;
Mail
::
to
(
$request
->
emailParticipante
[
$key
])
->
send
(
new
EmailParaUsuarioNaoCadastrado
(
Auth
()
->
user
()
->
name
,
$projeto
->
titulo
,
'Participante'
,
$edital
->
nome
,
$passwordTemporario
,
$subject
));
}
else
{
$participante
->
user_id
=
$userParticipante
->
id
;
$participante
->
trabalho_id
=
$projeto
->
id
;
$participante
->
funcao_participante_id
=
$request
->
funcaoParticipante
[
$key
];
$participante
->
confirmacao_convite
=
true
;
$participante
->
rg
=
$request
->
rg
[
$key
];
$participante
->
data_de_nascimento
=
$request
->
data_de_nascimento
[
$key
];
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_cursado
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
$subject
=
"Participante de Projeto"
;
Mail
::
to
(
$request
->
emailParticipante
[
$key
])
->
send
(
new
SubmissaoTrabalho
(
$userParticipante
,
$subject
,
$edital
,
$projeto
));
}
if
(
$request
->
nomePlanoTrabalho
[
$key
]
!=
null
){
$usuario
=
User
::
where
(
'email'
,
$request
->
emailParticipante
[
$key
])
->
first
();
$participante
=
Participante
::
where
([[
'user_id'
,
'='
,
$usuario
->
id
],
[
'trabalho_id'
,
'='
,
$projeto
->
id
]])
->
first
();
$path
=
'trabalhos/'
.
$edital
->
id
.
'/'
.
$projeto
->
id
.
'/'
;
$nome
=
$request
->
nomePlanoTrabalho
[
$key
]
.
".pdf"
;
$file
=
$request
->
anexoPlanoTrabalho
[
$key
];
Storage
::
putFileAs
(
$path
,
$file
,
$nome
);
$agora
=
now
();
$arquivo
=
new
Arquivo
();
$arquivo
->
titulo
=
$request
->
nomePlanoTrabalho
[
$key
];
$arquivo
->
nome
=
$path
.
$nome
;
$arquivo
->
trabalhoId
=
$projeto
->
id
;
$arquivo
->
data
=
$agora
;
$arquivo
->
participanteId
=
$participante
->
id
;
$arquivo
->
versaoFinal
=
true
;
$arquivo
->
save
();
}
// Editado
}
elseif
(
$id
>
0
)
{
// Removo dos cantidatos excluidos
$participante
=
Participante
::
find
(
$id
);
$participantesPermanecem
->
push
(
$participante
);
$usuario
=
$participante
->
user
;
$endereco
=
$usuario
->
endereco
;
$usuario
->
usuarioTemp
=
false
;
$usuario
->
name
=
$request
->
nomeParticipante
[
$key
];
$usuario
->
tipo
=
'participante'
;
$usuario
->
instituicao
=
$request
->
universidade
[
$key
];
$usuario
->
cpf
=
$request
->
cpf
[
$key
];
$usuario
->
celular
=
$request
->
celular
[
$key
];
$usuario
->
update
();
$endereco
->
rua
=
$request
->
rua
[
$key
];
$endereco
->
numero
=
$request
->
numero
[
$key
];
$endereco
->
bairro
=
$request
->
bairro
[
$key
];
$endereco
->
cidade
=
$request
->
cidade
[
$key
];
$endereco
->
uf
=
$request
->
uf
[
$key
];
$endereco
->
cep
=
$request
->
cep
[
$key
];
$endereco
->
complemento
=
$request
->
complemento
[
$key
];
$endereco
->
update
();
$participante
->
rg
=
$request
->
rg
[
$key
];
$participante
->
data_de_nascimento
=
$request
->
data_de_nascimento
[
$key
];
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_cursado
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
update
();
if
(
$request
->
anexoPlanoTrabalho
!=
null
&&
array_key_exists
(
$key
,
$request
->
anexoPlanoTrabalho
)
&&
$request
->
anexoPlanoTrabalho
[
$key
]
!=
null
){
$planoAtual
=
$participante
->
planoTrabalho
;
if
(
Storage
::
disk
()
->
exists
(
$planoAtual
->
nome
))
{
Storage
::
delete
(
$planoAtual
->
nome
);
}
$planoAtual
->
delete
();
$path
=
'trabalhos/'
.
$edital
->
id
.
'/'
.
$projeto
->
id
.
'/'
;
$nome
=
$request
->
nomePlanoTrabalho
[
$key
]
.
".pdf"
;
$file
=
$request
->
anexoPlanoTrabalho
[
$key
];
Storage
::
putFileAs
(
$path
,
$file
,
$nome
);
$agora
=
now
();
$arquivo
=
new
Arquivo
();
$arquivo
->
titulo
=
$request
->
nomePlanoTrabalho
[
$key
];
$arquivo
->
nome
=
$path
.
$nome
;
$arquivo
->
trabalhoId
=
$projeto
->
id
;
$arquivo
->
data
=
$agora
;
$arquivo
->
participanteId
=
$participante
->
id
;
$arquivo
->
versaoFinal
=
true
;
$arquivo
->
save
();
}
}
}
// Excluidos
$participantesExcluidos
=
$participantes
->
diff
(
$participantesPermanecem
);
foreach
(
$participantesExcluidos
as
$participante
)
{
$participante
->
delete
();
}
}
if
(
$request
->
emailParticipante
!=
null
)
{
foreach
(
$request
->
emailParticipante
as
$key
=>
$email
)
{
$userParticipante
=
User
::
where
(
'email'
,
$email
)
->
first
();
...
...
@@ -1130,4 +1352,23 @@ class TrabalhoController extends Controller
}
}
}
public
function
atualizar
(
Request
$request
,
$id
)
{
$edital
=
Evento
::
find
(
$request
->
editalId
);
$hoje
=
now
();
$projeto
=
Trabalho
::
find
(
$id
);
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
);
$projeto
->
update
();
// Salvando participantes
$this
->
salvarParticipantes
(
$request
,
$edital
,
$projeto
,
true
);
dd
(
"foi"
);
}
}
\ No newline at end of file
app/Participante.php
View file @
72f53e8f
...
...
@@ -18,4 +18,8 @@ class Participante extends Model
public
function
trabalhos
(){
return
$this
->
belongsToMany
(
'App\Trabalho'
,
'trabalho_participante'
);
}
public
function
planoTrabalho
()
{
return
$this
->
hasOne
(
'App\Arquivo'
,
'participanteId'
);
}
}
app/Trabalho.php
View file @
72f53e8f
...
...
@@ -83,7 +83,7 @@ class Trabalho extends Model
return
$this
->
hasMany
(
'App\PlanoTrabalho'
);
}
public
function
participantes
(){
return
$this
->
belongsTo
Many
(
'App\Participante'
,
'trabalho_
participante
'
);
return
$this
->
has
Many
(
'App\Participante'
,
'trabalho_
id
'
);
}
public
function
proponente
(){
return
$this
->
belongsTo
(
'App\Proponente'
);
...
...
database/migrations/2020_02_05_123048_create_trabalhos_table.php
View file @
72f53e8f
...
...
@@ -23,11 +23,11 @@ class CreateTrabalhosTable extends Migration
$table
->
string
(
'pontuacaoPlanilha'
);
$table
->
date
(
'data'
)
->
nullable
();
//Anexos
$table
->
string
(
'anexoProjeto'
);
$table
->
string
(
'anexoProjeto'
)
->
nullable
()
;
$table
->
string
(
'anexoDecisaoCONSU'
)
->
nullable
();
$table
->
string
(
'anexoPlanilhaPontuacao'
);
$table
->
string
(
'anexoLattesCoordenador'
);
$table
->
string
(
'anexoGrupoPesquisa'
);
$table
->
string
(
'anexoPlanilhaPontuacao'
)
->
nullable
()
;
$table
->
string
(
'anexoLattesCoordenador'
)
->
nullable
()
;
$table
->
string
(
'anexoGrupoPesquisa'
)
->
nullable
()
;
$table
->
string
(
'anexoAutorizacaoComiteEtica'
)
->
nullable
();
$table
->
string
(
'justificativaAutorizacaoEtica'
)
->
nullable
();
//chaves estrangeiras
...
...
resources/views/projeto/editar.blade.php
View file @
72f53e8f
...
...
@@ -262,88 +262,238 @@
@enderror
</div>
@endif
</div>
<hr>
<h3>Participantes</h3>
<input type="
hidden
" value="
{{
sizeof
(
$participantes
)}}
" id="
qtd
Participante
s
">
<input type="
hidden
" value="
{{
sizeof
(
$participantes
)}}
" id="
count
Participante
">
{{-- Participantes --}}
<div class="
row
" style="
margin
-
top
:
20
px
">
<div class="
col
-
sm
-
12
">
<div id="
participantes
">
@foreach(
$participantes
as
$participante
)
@foreach(
$users
as
$user
)
@if(
$participante->user_id
===
$user->id
)
<div id="
novoParticipante
">
<div id="
novoParticipante
" style="
display
:
block
;
">
<br>
<h4>Dados do participante</h4>
<h6>Dados pessoais</h6>
<input type="
hidden
" name="
participante_id
[]
" value="
{{
$participante
->
id
}}
">
<div class="
row
">
<div class="
col
-
sm
-
5
">
<label>Nome Completo</label>
<input
value="
{{
$user
->
name
}}
"
type="
text
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'nomeParticipante'
)
is
-
invalid
@
enderror
" name="
nomeParticipante
[]
" placeholder="
Nome
" required>
@error('nomeParticipante
'
)
<label>Nome Completo
*
</label>
<input type="
text
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'nomeParticipante'
)
is
-
invalid
@
enderror
" name="
nomeParticipante
[]
" placeholder="
Nome
"
value="
{{
$participante
->
user
->
name
}}
"
required>
@error('nomeParticipante
.'.
$projeto->id
)
<span class="
invalid
-
feedback
" role="
alert
" style="
overflow
:
visible
;
display
:
block
">
<strong>{{
$message
}}</strong>
</span>
@enderror
</div>
<div class="
col
-
sm
-
4
">
<label>E-mail</label>
<input
value="
{{
$user
->
email
}}
"
type="
email
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'emailParticipante'
)
is
-
invalid
@
enderror
" name="
emailParticipante
[]
" placeholder="
email
" required>
@error('emailParticipante
'
)
<label>E-mail
*
</label>
<input type="
email
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'emailParticipante'
)
is
-
invalid
@
enderror
" name="
emailParticipante
[]
" placeholder="
email
"
value="
{{
$participante
->
user
->
email
}}
"
required>
@error('emailParticipante
.'.
$projeto->id
)
<span class="
invalid
-
feedback
" role="
alert
" style="
overflow
:
visible
;
display
:
block
">
<strong>{{
$message
}}</strong>
</span>
@enderror
</div>
<div class="
col
-
sm
-
3
">
<label>Função:</label>
<select class="
form
-
control
@
error
(
'funcaoParticipante'
)
is
-
invalid
@
enderror
" name="
funcaoParticipante
[]
" id="
funcaoParticipante
">
<label>Função
*
:</label>
<select class="
form
-
control
@
error
(
'funcaoParticipante'
)
is
-
invalid
@
enderror
" name="
funcaoParticipante
[]
" id="
funcaoParticipante
"
required
>
<option value="" disabled selected hidden>-- Função --</option>
@foreach(
$funcaoParticipantes
as
$funcaoParticipante
)
@if(
$funcaoParticipante->id
===
$participante->funcao_participante_id
)
<option value="
{{
$funcaoParticipante
->
id
}}
" selected>
{
{$funcaoParticipante->nome}
}
</option>
@else
<option value="
{{
$funcaoParticipante
->
id
}}
">
{
{$funcaoParticipante->nome}
}
</option>
@endif
<option @if(
$participante->funcao_participante_id
==
$funcaoParticipante->id
) selected @endif value="
{{
$funcaoParticipante
->
id
}}
">
{
{$funcaoParticipante->nome}
}
</option>
@endforeach
</select>
@error('funcaoParticipante')
<span class="
invalid
-
feedback
" role="
alert
" style="
overflow
:
visible
;
display
:
block
">
<strong>{{
$message
}}</strong>
</span>
@enderror
</div>
</div>
<div id="
dados_complemento_1
">
<div class="
form
-
group
">
<div class="
row
">
<div class="
col
-
sm
-
4
">
<label for="">{{ __('CPF*') }}</label>
<input type="
text
" class="
form
-
control
cpf
" name="
cpf
[]
" required value="
{{
$participante
->
user
->
cpf
}}
">
</div>
<div class="
col
-
sm
-
4
">
<label for="">{{ __('RG*') }}</label>
<input type="
text
" class="
form
-
control
rg
" name="
rg
[]
" required value="
{{
$participante
->
rg
}}
">
</div>
<div class="
col
-
sm
-
4
">
<label for="">{{ __('Celular*') }}</label>
<input type="
text
" class="
form
-
control
celular
" name="
celular
[]
" required value="
{{
$participante
->
user
->
celular
}}
">
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class="
col
-
sm
-
4
">
<label for="">{{ __('Data de nascimento*') }}</label>
<input type="
date
" class="
form
-
control
" name="
data_de_nascimento
[]
" required value="
{{
$participante
->
data_de_nascimento
}}
">
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class="
container
">
<h6>Endereço do participante</h6>
</div>
</div>
<div class="
row
">
<div class="
col
-
sm
-
3
">
<label for="">{{ __('CEP*') }}</label>
<input type="
text
" class="
form
-
control
" name="
cep
[]
" required value="
{{
$participante
->
user
->
endereco
->
cep
}}
">
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class="
col
-
sm
-
6
">
<label for="">{{ __('Rua*') }}</label>
<input type="
text
" class="
form
-
control
" name="
rua
[]
" required value="
{{
$participante
->
user
->
endereco
->
rua
}}
">
</div>
<div class="
col
-
sm
-
3
">
<label for="">{{ __('Número*') }}</label>
<input type="
text
" class="
form
-
control
" name="
numero
[]
" required value="
{{
$participante
->
user
->
endereco
->
numero
}}
">
</div>
<div class="
col
-
sm
-
3
">
<label for="">{{ __('Bairro*') }}</label>
<input type="
text
" class="
form
-
control
" name="
bairro
[]
" required value="
{{
$participante
->
user
->
endereco
->
bairro
}}
">
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class="
col
-
sm
-
4
">
<label for="">{{ __('Cidade*') }}</label>
<input type="
text
" class="
form
-
control
" name="
cidade
[]
" required value="
{{
$participante
->
user
->
endereco
->
cidade
}}
">
</div>
<div class="
col
-
sm
-
4
">
<label for="">{{ __('Complemento*') }}</label>
<input type="
text
" class="
form
-
control
" name="
complemento
[]
" required value="
{{
$participante
->
user
->
endereco
->
complemento
}}
">
</div>
<div class="
col
-
sm
-
4
">
<label for="">{{ __('Estado*') }}</label>
<select name="
uf
[]
" id="" class="
form
-
control
" required>
<option value="" disabled selected>-- UF --</option>
<option @if(
$participante->user
->endereco->uf == 'AC') selected @endif value="
AC
">Acre</option>
<option @if(
$participante->user
->endereco->uf == 'AL') selected @endif value="
AL
">Alagoas</option>
<option @if(
$participante->user
->endereco->uf == 'AP') selected @endif value="
AP
">Amapá</option>
<option @if(
$participante->user
->endereco->uf == 'AM') selected @endif value="
AM
">Amazonas</option>
<option @if(
$participante->user
->endereco->uf == 'BA') selected @endif value="
BA
">Bahia</option>
<option @if(
$participante->user
->endereco->uf == 'CE') selected @endif value="
CE
">Ceará</option>
<option @if(
$participante->user
->endereco->uf == 'DF') selected @endif value="
DF
">Distrito Federal</option>
<option @if(
$participante->user
->endereco->uf == 'ES') selected @endif value="
ES
">Espírito Santo</option>
<option @if(
$participante->user
->endereco->uf == 'GO') selected @endif value="
GO
">Goiás</option>
<option @if(
$participante->user
->endereco->uf == 'MA') selected @endif value="
MA
">Maranhão</option>
<option @if(
$participante->user
->endereco->uf == 'MT') selected @endif value="
MT
">Mato Grosso</option>
<option @if(
$participante->user
->endereco->uf == 'MS') selected @endif value="
MS
">Mato Grosso do Sul</option>
<option @if(
$participante->user
->endereco->uf == 'MG') selected @endif value="
MG
">Minas Gerais</option>
<option @if(
$participante->user
->endereco->uf == 'PA') selected @endif value="
PA
">Pará</option>
<option @if(
$participante->user
->endereco->uf == 'PB') selected @endif value="
PB
">Paraíba</option>
<option @if(
$participante->user
->endereco->uf == 'PR') selected @endif value="
PR
">Paraná</option>
<option @if(
$participante->user
->endereco->uf == 'PE') selected @endif value="
PE
">Pernambuco</option>
<option @if(
$participante->user
->endereco->uf == 'PI') selected @endif value="
PI
">Piauí</option>
<option @if(
$participante->user
->endereco->uf == 'RJ') selected @endif value="
RJ
">Rio de Janeiro</option>
<option @if(
$participante->user
->endereco->uf == 'RN') selected @endif value="
RN
">Rio Grande do Norte</option>
<option @if(
$participante->user
->endereco->uf == 'RS') selected @endif value="
RS
">Rio Grande do Sul</option>
<option @if(
$participante->user
->endereco->uf == 'RO') selected @endif value="
RO
">Rondônia</option>
<option @if(
$participante->user
->endereco->uf == 'RR') selected @endif value="
RR
">Roraima</option>
<option @if(
$participante->user
->endereco->uf == 'SC') selected @endif value="
SC
">Santa Catarina</option>
<option @if(
$participante->user
->endereco->uf == 'SP') selected @endif value="
SP
">São Paulo</option>
<option @if(
$participante->user
->endereco->uf == 'SE') selected @endif value="
SE
">Sergipe</option>
<option @if(
$participante->user
->endereco->uf == 'TO') selected @endif value="
TO
">Tocantins</option>
</select>
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class='col-sm-11'>
<h6 class="
mb
-
1
">Possui plano de trabalho?</h6>
<button class="
btn
btn
-
primary
mt
-
2
mb
-
2
simPlano
" id="
simPlano
">Sim</button>
<button class="
btn
btn
-
primary
mt
-
2
mb
-
2
naoPlano
">Não</button>
<input type="
hidden
" name="
semPlano
[]
" value="">
<div class="
container
">
<h6>Dados do curso do participante</h6>
</div>
<div class="
col
-
sm
-
1
deletarSemPlano
" >
<a class="
delete
">
<img src="
/
img
/
icons
/
user
-
times
-
solid
.
svg
" style="
width
:
25
px
;
margin
-
top
:
35
px
">
</a>
</div>
<div class="
row
">
<div class="
col
-
sm
-
6
">
<label for="">{{ __('Universidade*') }}</label>
<input type="
text
" class="
form
-
control
" name="
universidade
[]
" required value="
{{
$participante
->
user
->
instituicao
}}
">
</div>
<div id="
planoHabilitado
" >
@foreach (
$arquivos
as
$arquivo
)
@if(
$arquivo->participanteId
===
$participante->id
)
<input type="
hidden
" class="
exibirPlano
">
<div class="
col
-
sm
-
6
">
<label for="">{{ __('Curso*') }}</label>
<input type="
text
" class="
form
-
control
" name="
curso
[]
" required value="
{{
$participante
->
curso
}}
">
</div>
</div>
</div>
<div class="
form
-
group
">
<div class="
row
">
<div class="
col
-
sm
-
2
">
<label for="">{{ __('Turno*') }}</label>
<select id="" class="
form
-
control
" name="
turno
[]
" required>
<option value="" disabled selected>-- TURNO --</option>
@foreach (
$enum_turno
as
$turno
)
<option @if(
$participante->turno
==
$turno
) selected @endif value="
{{
$turno
}}
">
{
{$turno}
}
</option>
@endforeach
</select>
</div>
<div class="
col
-
sm
-
3
">
<label for="">{{ __('Total de periodos do curso*') }}</label>
<select name="
total_periodos
[]
" id="" class="
form
-
control
" onchange="
gerarPeriodos
(
this
)
" required>
<option value="" disabled selected>-- TOTAL DE PERIODOS --</option>
<option @if(
$participante->total_periodos
== "
6
") selected @endif value="
6
">6</option>
<option @if(
$participante->total_periodos
== "
7
") selected @endif value="
7
">7</option>
<option @if(
$participante->total_periodos
== "
8
") selected @endif value="
8
">8</option>
<option @if(
$participante->total_periodos
== "
9
") selected @endif value="
9
">9</option>
<option @if(
$participante->total_periodos
== "
10
") selected @endif value="
10
">10</option>
<option @if(
$participante->total_periodos
== "
11
") selected @endif value="
11
">11</option>
<option @if(
$participante->total_periodos
== "
12
") selected @endif value="
12
">12</option>
</select>
</div>
<div class="
col
-
sm
-
2
">
<label for="">{{ __('Periodo atual*') }}</label>
<select name="
periodo_cursado
[]
" id="" class="
form
-
control
" required>
<option value="" disabled selected>-- PERÍODO ATUAL --</option>
@for(
$i
= 1;
$i
<=
$participante->total_periodos
;
$i
++)
<option @if(
$participante->periodo_atual
==
$i
) selected @endif value="
{{
$i
}}
">
{
{$i}
}
</option>
@endfor
</select>
</div>
<div class="
col
-
sm
-
2
">
<label for="">{{ __('Ordem de prioridade*') }}</label>
<select name="
ordem_prioridade
[]
" id="" class="
form
-
control
" required>
<option value="" disabled selected>-- ORDEM --</option>
<option @if(
$participante->ordem_prioridade
== "
1
") selected @endif value="
1
">1º</option>
<option @if(
$participante->ordem_prioridade
== "
2
") selected @endif value="
2
">2º</option>
<option @if(
$participante->ordem_prioridade
== "
3
") selected @endif value="
3
">3º</option>
<option @if(
$participante->ordem_prioridade
== "
4
") selected @endif value="
4
">4º</option>
</select>
</div>
<div class="
col
-
sm
-
3
">
<label for="">{{ __('Média geral do curso*') }}</label>
<input type="
number
" class="
form
-
control
media
" min="
0
" max="
10
" step="
0.01
" value="
{{
$participante
->
media_do_curso
}}
" name="
media_geral_curso
[]
" required>
</div>
</div>
</div>
</div>
<h6 class="
mb
-
1
">Possui plano de trabalho?</h6>
{
{dd($participantes[1]->user->email)}
}
<button class="
btn
btn
-
primary
mt
-
2
mb
-
2
simPlano
">Sim</button>
<button class="
btn
btn
-
primary
mt
-
2
mb
-
2
naoPlano
">Não</button>
<div id="
planoHabilitado
" style="
display
:@
if
(
$participante
->
planoTrabalho
!=
null
)
block
;
@
else
none
;
@
endif
">
<h5>Dados do plano de trabalho</h5>
<a href="
{{
route
(
'baixar.plano'
,
[
'id'
=>
$arquivo
->
id
])
}}
">Plano de trabalho atual</a>
<div class="
row
">
<div class="
col
-
sm
-
12
">
<div id="
planoTrabalho
">
<div class="
row
">
<div class="
col
-
sm
-
4
">
<label>Titulo </label>
<input type="
text
" value="
{{
$arquivo
->
titulo
}}
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'nomePlanoTrabalho'
)
is
-
invalid
@
enderror
" name="
nomePlanoTrabalho
[]
" placeholder="
Nome
">
<label>Titulo* </label>
<input type="
text
" style="
margin
-
bottom
:
10
px
" class="
form
-
control
@
error
(
'nomePlanoTrabalho'
)
is
-
invalid
@
enderror
" name="
nomePlanoTrabalho
[]
" placeholder="
Nome
" value="
{{
$participante
->
planoTrabalho
->
titulo
}}
">
@error('nomePlanoTrabalho')
<span class="
invalid
-
feedback
" role="
alert
" style="
overflow
:
visible
;
display
:
block
">
...
...
@@ -353,14 +503,14 @@
</div>
{{-- Arquivo --}}
<div class="
col
-
sm
-
7
">
<label for="
nomeTrabalho
">Anexo</label>
<label for="
nomeTrabalho
">Anexo
*
</label>
<a href="
{{
route
(
'baixar.plano'
,
[
'id'
=>
$participante
->
planoTrabalho
->
id
])
}}
">plano de trabalho atual</a>
<div class="
input
-
group
">
<div class="
input
-
group
-
prepend
">
<span class="
input
-
group
-
text
" id="
anexoPlanoTrabalho
">Selecione um arquivo:</span>
</div>
<div class="
custom
-
file
">
<input type="
file
" class="
custom
-
file
-
input
@
error
(
'anexoPlanoTrabalho'
)
is
-
invalid
@
enderror
" id="
anexoPlanoTrabalho
" aria-describedby="
anexoPlanoTrabalho
" name="
anexoPlanoTrabalho
[]
">
<label class="
custom
-
file
-
label
" id="
custom
-
file
-
label
" for="
inputGroupFile01
">O arquivo deve ser no formato PDF de até 2
mb
.</label>
<label class="
custom
-
file
-
label
" id="
custom
-
file
-
label
" for="
inputGroupFile01
">O arquivo deve ser no formato PDF de até 2
MB
.</label>
</div>
</div>
@error('anexoPlanoTrabalho')
...
...
@@ -369,24 +519,18 @@
</span>
@enderror
</div>
<div class="
col
-
sm
-
1
">
<a class="
delete
">
<img src="
/
img
/
icons
/
user
-
times
-
solid
.
svg
" style="
width
:
25
px
;
margin
-
top
:
35
px
">
</a>
</div>
</div>
</div>
</div>
</div>
@endif
@endforeach
</div>
<button class="
btn
btn
-
danger
mt
-
2
mb
-
2
delete
" style='width:100%;margin-top:10px' @if(sizeof(
$participantes
) == 1) disabled @endif>@if(sizeof(
$participantes
) == 1)Limite minimo de participantes @else Remover @endif</button>
</div>
@endif
@endforeach
@endforeach
</div>
<
a href="
#"
class="btn btn-primary" id="addCoautor" style="width:100%;margin-top:10px">Participantes +</
a
>
<
button
class="
btn
btn
-
primary
" id="
addCoautor
" style="
width
:
100
%
;
margin
-
top
:
10
px
">Participantes +</
button
>
</div>
</div>
...
...
@@ -418,18 +562,38 @@
<script type="
text
/
javascript
">
$(function() {
var qtdLinhas = 1;
var
qtdParticipantes
=
$
(
'#qtdParticipantes'
)
.
val
();
const limiteMaxParticipantes = 3;
const limiteMinParticipantes = 1;
// Coautores
$('#addCoautor').click(function(e) {
if
(
qtdParticipantes
<
100
)
{
var countParticipante = document.getElementById('countParticipante');
if (countParticipante.value < limiteMaxParticipantes) {
e.preventDefault();
linha = montarLinhaInput();
$('#participantes').append(linha);
qtdParticipantes
++
setParticipanteDiv(parseInt(countParticipante.value) + 1);
var btnsDeletar = document.getElementsByClassName("
delete
");
for(var i = 0; i < btnsDeletar.length; i++) {
btnsDeletar[i].disabled = "";
$(btnsDeletar[i]).text("
Remover
participantes
");
}
if (countParticipante.value >= limiteMaxParticipantes) {
var btn = document.getElementById('addCoautor');
btn.disabled = "
true
";
$('#addCoautor').text("
Limite
de
participantes
atingido
");
}
// aplicarMascaras();
}
});
function setParticipanteDiv(qtdParticipante) {
var countParticipante = document.getElementById('countParticipante');
countParticipante.value = qtdParticipante;
}
// $('#addPlanoTrabalho').click(function(e) {
// e.preventDefault();
// if (qtdLinhas < 4) {
...
...
@@ -446,9 +610,19 @@
// });
$
(
document
)
.
on
(
'click'
,
'.delete'
,
function
()
{
if
(
qtdParticipantes
>
1
)
{
qtdParticipantes
--
;
var
countParticipante
=
document
.
getElementById
(
'countParticipante'
);
if
(
countParticipante
.
value
>=
limiteMinParticipantes
)
{
setParticipanteDiv
(
parseInt
(
countParticipante
.
value
)
-
1
);
$
(
this
)
.
closest
(
'#novoParticipante'
)
.
remove
();
document
.
getElementById
(
"addCoautor"
)
.
disabled
=
""
;
$
(
'#addCoautor'
)
.
text
(
"Adicionar participante"
);
if
(
countParticipante
.
value
==
limiteMinParticipantes
)
{
var
btnsDeletar
=
document
.
getElementsByClassName
(
"delete"
);
for
(
var
i
=
0
;
i
<
btnsDeletar
.
length
;
i
++
)
{
btnsDeletar
[
i
]
.
disabled
=
true
;
$
(
btnsDeletar
)
.
text
(
"Limite minimo de participantes"
);
}
}
return
false
;
}
});
...
...
@@ -515,93 +689,230 @@
function
montarLinhaInput
()
{
return
"<div id="
+
"novoParticipante"
+
">"
+
"<div class='row'>"
+
"<div class='col-sm-9'>"
+
"<br><h4>Dados do participante</h4>"
+
"</div>"
+
"<div class='col-sm-3'>"
+
return
`<div id="novoParticipante" style="display: block;">
<br>
<h4>Dados do participante</h4>
<h6>Dados pessoais</h6>
<input type="hidden" name="participante_id[]" value="0">
<div class="row">
<div class="col-sm-5">
<label>Nome Completo*</label>
<input type="text" style="margin-bottom:10px" class="form-control @error('nomeParticipante') is-invalid @enderror" name="nomeParticipante[]" placeholder="Nome" value="" required>
</div>
<div class="col-sm-4">
<label>E-mail*</label>
<input type="email" style="margin-bottom:10px" class="form-control @error('emailParticipante') is-invalid @enderror" name="emailParticipante[]" placeholder="email" value="" required>
</div>
<div class="col-sm-3">
<label>Função*:</label>
<select class="form-control @error('funcaoParticipante') is-invalid @enderror" name="funcaoParticipante[]" id="funcaoParticipante" required>
<option value="" disabled selected hidden>-- Função --</option>
@foreach($funcaoParticipantes as $funcaoParticipante)
<option value="{{$funcaoParticipante->id}}">{{$funcaoParticipante->nome}}</option>
@endforeach
</select>
</div>
</div>
<div id="dados_complemento_1">
<div class="form-group">
<div class="row">
<div class="col-sm-4">
<label for="">{{ __('CPF*') }}</label>
<input type="text" class="form-control cpf" name="cpf[]" required>
</div>
<div class="col-sm-4">
<label for="">{{ __('RG*') }}</label>
<input type="text" class="form-control rg" name="rg[]" required>
</div>
<div class="col-sm-4">
<label for="">{{ __('Celular*') }}</label>
<input type="text" class="form-control celular" name="celular[]" required>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="col-sm-4">
<label for="">{{ __('Data de nascimento*') }}</label>
<input type="date" class="form-control" name="data_de_nascimento[]" required>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="container">
<h6>Endereço do participante</h6>
</div>
</div>
<div class="row">
<div class="col-sm-3">
<label for="">{{ __('CEP*') }}</label>
<input type="text" class="form-control" name="cep[]" required>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="col-sm-6">
<label for="">{{ __('Rua*') }}</label>
<input type="text" class="form-control" name="rua[]" required>
</div>
<div class="col-sm-3">
<label for="">{{ __('Número*') }}</label>
<input type="text" class="form-control" name="numero[]" required>
</div>
<div class="col-sm-3">
<label for="">{{ __('Bairro*') }}</label>
<input type="text" class="form-control" name="bairro[]" required>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="col-sm-4">
<label for="">{{ __('Cidade*') }}</label>
<input type="text" class="form-control " name="cidade[]" required>
</div>
<div class="col-sm-4">
<label for="">{{ __('Complemento*') }}</label>
<input type="text" class="form-control" name="complemento[]" required>
</div>
<div class="col-sm-4">
<label for="">{{ __('Estado*') }}</label>
<select name="uf[]" id="" class="form-control" required>
<option value="" disabled selected>-- UF --</option>
<option @if(old('uf') == 'AC') selected @endif value="AC">Acre</option>
<option @if(old('uf') == 'AL') selected @endif value="AL">Alagoas</option>
<option @if(old('uf') == 'AP') selected @endif value="AP">Amapá</option>
<option @if(old('uf') == 'AM') selected @endif value="AM">Amazonas</option>
<option @if(old('uf') == 'BA') selected @endif value="BA">Bahia</option>
<option @if(old('uf') == 'CE') selected @endif value="CE">Ceará</option>
<option @if(old('uf') == 'DF') selected @endif value="DF">Distrito Federal</option>
<option @if(old('uf') == 'ES') selected @endif value="ES">Espírito Santo</option>
<option @if(old('uf') == 'GO') selected @endif value="GO">Goiás</option>
<option @if(old('uf') == 'MA') selected @endif value="MA">Maranhão</option>
<option @if(old('uf') == 'MT') selected @endif value="MT">Mato Grosso</option>
<option @if(old('uf') == 'MS') selected @endif value="MS">Mato Grosso do Sul</option>
<option @if(old('uf') == 'MG') selected @endif value="MG">Minas Gerais</option>
<option @if(old('uf') == 'PA') selected @endif value="PA">Pará</option>
<option @if(old('uf') == 'PB') selected @endif value="PB">Paraíba</option>
<option @if(old('uf') == 'PR') selected @endif value="PR">Paraná</option>
<option @if(old('uf') == 'PE') selected @endif value="PE">Pernambuco</option>
<option @if(old('uf') == 'PI') selected @endif value="PI">Piauí</option>
<option @if(old('uf') == 'RJ') selected @endif value="RJ">Rio de Janeiro</option>
<option @if(old('uf') == 'RN') selected @endif value="RN">Rio Grande do Norte</option>
<option @if(old('uf') == 'RS') selected @endif value="RS">Rio Grande do Sul</option>
<option @if(old('uf') == 'RO') selected @endif value="RO">Rondônia</option>
<option @if(old('uf') == 'RR') selected @endif value="RR">Roraima</option>
<option @if(old('uf') == 'SC') selected @endif value="SC">Santa Catarina</option>
<option @if(old('uf') == 'SP') selected @endif value="SP">São Paulo</option>
<option @if(old('uf') == 'SE') selected @endif value="SE">Sergipe</option>
<option @if(old('uf') == 'TO') selected @endif value="TO">Tocantins</option>
</select>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="container">
<h6>Dados do curso do participante</h6>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<label for="">{{ __('Universidade*') }}</label>
<input type="text" class="form-control" name="universidade[]" required>
</div>
<div class="col-sm-6">
<label for="">{{ __('Curso*') }}</label>
<input type="text" class="form-control" name="curso[]" required>
</div>
</div>
</div>
<div class="form-group">
<div class="row">
<div class="col-sm-2">
<label for="">{{ __('Turno*') }}</label>
<select id="" class="form-control" name="turno[]" required>
<option value="" disabled selected>-- TURNO --</option>
@foreach ($enum_turno as $turno)
<option value="{{$turno}}">{{$turno}}</option>
@endforeach
</select>
</div>
<div class="col-sm-3">
<label for="">{{ __('Total de periodos do curso*') }}</label>
<select name="total_periodos[]" id="" class="form-control" onchange="gerarPeriodos(this)" required>
<option value="" disabled selected>-- TOTAL DE PERIODOS --</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
</div>
<div class="col-sm-2">
<label for="">{{ __('Periodo atual*') }}</label>
<select name="periodo_cursado[]" id="" class="form-control" required>
<option value="" disabled selected>-- PERÍODO ATUAL --</option>
</select>
</div>
<div class="col-sm-2">
<label for="">{{ __('Ordem de prioridade*') }}</label>
<select name="ordem_prioridade[]" id="" class="form-control" required>
<option value="" disabled selected>-- ORDEM --</option>
<option value="1">1º</option>
<option value="2">2º</option>
<option value="3">3º</option>
<option value="4">4º</option>
</select>
</div>
<div class="col-sm-3">
<label for="">{{ __('Média geral do curso*') }}</label>
<input type="number" class="form-control media" min="0" max="10" step="0.01" value="00.00" name="media_geral_curso[]" required>
</div>
</div>
</div>
</div>
"</div>"
+
"</div>"
+
"<div class="
+
"row"
+
">"
+
"<div class="
+
"col-sm-5"
+
">"
+
"<label>Nome Completo*</label>"
+
"<input"
+
" type="
+
'text'
+
" style="
+
"margin-bottom:10px"
+
" class="
+
'form-control'
+
" @error('nomeParticipante') is-invalid @enderror"
+
"name="
+
'nomeParticipante[]'
+
" placeholder="
+
"Nome"
+
">"
+
"@error('nomeParticipante')"
+
"<span class='invalid-feedback'"
+
"role='alert'"
+
"style='overflow: visible; display:block'>"
+
"<strong>{{
$message
}}</strong>"
+
"</span>"
+
"@enderror"
+
"</div>"
+
"<div class="
+
"col-sm-4"
+
">"
+
"<label>E-mail*</label>"
+
"<input type='email'"
+
"style='margin-bottom:10px'"
+
"class="
+
"form-control @error('emailParticipante') is-invalid @enderror"
+
"name='emailParticipante[]'"
+
"placeholder='email' >"
+
"@error('emailParticipante')"
+
"<span class='invalid-feedback'"
+
"role='alert'"
+
"style='overflow: visible; display:block'>"
+
"<strong>{{
$message
}}</strong>"
+
"</span>"
+
"@enderror"
+
"</div>"
+
"<div class='col-sm-3'>"
+
"<label>Função*:</label>"
+
"<select class="
+
"form-control @error('funcaoParticipante') is-invalid @enderror"
+
"name='funcaoParticipante[]'"
+
"id='funcaoParticipante'> "
+
"<option value='' disabled selected hidden> Função </option>"
+
"@foreach(
$funcaoParticipantes
as
$funcaoParticipante
)"
+
"<option value='
{
{$funcaoParticipante->id}}'>{{$funcaoParticipante->nome}
}
</option>"
+
"@endforeach"
+
"@error('funcaoParticipante')"
+
"<span class='invalid-feedback'"
+
"role='alert'"
+
"style='overflow: visible; display:block'>"
+
"<strong>{{
$message
}}</strong>"
+
"</span>"
+
"@enderror"
+
"</select>"
+
"</div>"
+
"</div>"
+
"<h6 class='mb-1'>Possui plano de trabalho?</h6>"
+
"<button class="
+
"'btn btn-primary mt-2 mb-2 mr-1 simPlano'"
+
">Sim</button>"
+
"<button class="
+
"'btn btn-primary mt-2 mb-2 mr-1 naoPlano'"
+
">Não</button>"
+
"<div id="
+
"planoHabilitado"
+
" style="
+
"'display:none;'"
+
">"
+
"<h5>Dados do plano de trabalho</h5>"
+
"<div class="
+
"row"
+
">"
+
"<div class="
+
"col-sm-4"
+
">"
+
"<label>Titulo*</label>"
+
"<input"
+
" type="
+
'text'
+
" style="
+
"margin-bottom:10px"
+
" class="
+
"form-control @error('nomePlanoTrabalho') is-invalid @enderror"
+
" name="
+
'nomePlanoTrabalho[]'
+
" placeholder="
+
"Nome"
+
">"
+
"@error('nomePlanoTrabalho')"
+
"<span class='invalid-feedback'"
+
"role='alert'"
+
"style='overflow: visible; display:block'>"
+
"<strong>{{
$message
}}</strong>"
+
"</span>"
+
"@enderror"
+
"</div>"
+
"<div class="
+
"col-sm-7"
+
">"
+
"<label for="
+
"nomeTrabalho"
+
">Anexo* </label>"
+
<h6 class="mb-1">Possui plano de trabalho?</h6>
<button class="btn btn-primary mt-2 mb-2 simPlano">Sim</button>
<button class="btn btn-primary mt-2 mb-2 naoPlano">Não</button>
"<div class="
+
"input-group"
+
">"
+
"<div class='input-group-prepend'>"
+
"<span class='input-group-text' id='anexoPlanoTrabalho'>Selecione um arquivo:</span>"
+
"</div>"
+
"<div class='custom-file'>"
+
"<input type='file' class='custom-file-input @error('anexoPlanoTrabalho') is-invalid @enderror"
+
"id='anexoPlanoTrabalho'"
+
" aria-describedby='anexoPlanoTrabalho' name='anexoPlanoTrabalho[]'>"
+
"<label class='custom-file-label' id='custom-file-label' for='inputGroupFile01'>O arquivo deve ser no formato PDF de até 2mb.</label>"
+
"</div>"
+
"</div>"
+
"@error('anexoPlanoTrabalho')"
+
"<span class='invalid-feedback' role='alert' style='overflow: visible; display:block'>"
+
"<strong>{{
$message
}}</strong>"
+
"</span>"
+
"@enderror"
+
"</div>"
+
"<div class="
+
"col-sm-1"
+
">"
+
"<a class="
+
"delete"
+
">"
+
"<img src="
+
"{{ asset('/img/icons/user-times-solid.svg') }}"
+
" style="
+
"width:25px;margin-top:35px"
+
">"
+
"</a>"
+
"</div>"
+
"</div>"
+
"</div>"
+
<div id="planoHabilitado" style="display:none;">
<h5>Dados do plano de trabalho</h5>
<div class="row">
<div class="col-sm-12">
<div id="planoTrabalho">
<div class="row">
<div class="col-sm-4">
<label>Titulo* </label>
<input type="text" style="margin-bottom:10px" class="form-control" name="nomePlanoTrabalho[]" placeholder="Nome" value="">
</div>
{{-- Arquivo --}}
<div class="col-sm-7">
<label for="nomeTrabalho">Anexo*</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text" id="anexoPlanoTrabalho">Selecione um arquivo:</span>
</div>
<div class="custom-file">
<input type="file" class="custom-file-input" id="anexoPlanoTrabalho" aria-describedby="anexoPlanoTrabalho" name="anexoPlanoTrabalho[]">
<label class="custom-file-label" id="custom-file-label" for="inputGroupFile01">O arquivo deve ser no formato PDF de até 2MB.</label>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
"<a href='#' class="
+
"'btn btn-danger mt-2 mb-2 delete'"
+
" style='width:100%;margin-top:10px'"
+
">Remover participante</a>"
+
"</div>"
;
</div>
<button class="btn btn-danger mt-2 mb-2 delete" style='width:100%;margin-top:10px' disabled>Limite minimo de participantes</button>
</div>`
;
}
// function montarLinhaInputPlanoTrabalho(){
...
...
@@ -747,5 +1058,35 @@
})
}
$
(
document
)
.
ready
(
aplicarMascaras
());
function
aplicarMascaras
()
{
$
(
'.cpf'
)
.
mask
(
'000.000.000-00'
);
var
SPMaskBehavior
=
function
(
val
)
{
return
val
.
replace
(
/
\
D
/
g
,
''
)
.
length
===
11
?
'(00) 00000-0000'
:
'(00) 0000-00009'
;
},
spOptions
=
{
onKeyPress
:
function
(
val
,
e
,
field
,
options
)
{
field
.
mask
(
SPMaskBehavior
.
apply
({},
arguments
),
options
);
}
};
$
(
'.celular'
)
.
mask
(
SPMaskBehavior
,
spOptions
);
$
(
'.rg'
)
.
mask
(
'99.999.999-9'
);
$
(
'.media'
)
.
mask
(
'00.00'
);
}
function
gerarPeriodos
(
select
)
{
var
div
=
select
.
parentElement
.
parentElement
;
var
selectPeriodos
=
div
.
children
[
2
]
.
children
[
1
];
var
html
=
`<option value="" disabled selected>-- TOTAL DE PERIODOS --</option>`
;
for
(
var
i
=
0
;
i
<
parseInt
(
select
.
value
);
i
++
)
{
html
+=
`<option value="${i+1}">${i+1}º</option>`
;
}
$
(
selectPeriodos
)
.
html
(
''
);
$
(
selectPeriodos
)
.
append
(
html
);
}
</
script
>
@
endsection
routes/web.php
View file @
72f53e8f
...
...
@@ -102,7 +102,7 @@ Route::prefix('avaliador')->name('avaliador.')->group(function(){
Route
::
get
(
'/edital/{id}/projetos'
,
'TrabalhoController@projetosDoEdital'
)
->
name
(
'projetos.edital'
);
Route
::
get
(
'/projeto/{id}/visualizar'
,
'TrabalhoController@show'
)
->
name
(
'trabalho.show'
);
Route
::
get
(
'/projeto/{id}/editar'
,
'TrabalhoController@edit'
)
->
name
(
'trabalho.editar'
);
Route
::
post
(
'/projeto/{id}/atualizar'
,
'TrabalhoController@
update
'
)
->
name
(
'trabalho.update'
);
Route
::
post
(
'/projeto/{id}/atualizar'
,
'TrabalhoController@
atualizar
'
)
->
name
(
'trabalho.update'
);
Route
::
get
(
'/projeto/{id}/excluir'
,
'TrabalhoController@destroy'
)
->
name
(
'trabalho.destroy'
);
Route
::
get
(
'/projeto/{id}/excluirParticipante'
,
'TrabalhoController@excluirParticipante'
)
->
name
(
'trabalho.excluirParticipante'
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment