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
05878ad5
Commit
05878ad5
authored
Feb 07, 2023
by
Yuri Resende
Browse files
Possibilitando que admin crie novos cursos no sistema
parent
51c0c25c
Changes
6
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/CursoController.php
View file @
05878ad5
...
@@ -3,8 +3,44 @@
...
@@ -3,8 +3,44 @@
namespace
App\Http\Controllers
;
namespace
App\Http\Controllers
;
use
Illuminate\Http\Request
;
use
Illuminate\Http\Request
;
use
App\Curso
;
class
CursoController
extends
Controller
class
CursoController
extends
Controller
{
{
//
public
function
index
(){
$cursos
=
Curso
::
orderby
(
'nome'
)
->
get
();
return
view
(
'cursos.index'
)
->
with
([
'cursos'
=>
$cursos
]);
}
public
function
create
(){
$cursos
=
Curso
::
orderby
(
'nome'
)
->
get
();
return
view
(
'cursos.create'
)
->
with
([
'cursos'
=>
$cursos
]);
}
public
function
store
(
Request
$request
){
$curso
=
new
Curso
();
$curso
->
nome
=
$request
->
curso
;
$curso
->
save
();
return
redirect
(
route
(
'cursos.index'
))
->
with
([
'mensagem'
=>
"Curso criado com sucesso"
]);
}
public
function
edit
(
$id
){
$curso
=
Curso
::
find
(
$id
);
return
view
(
'cursos.edit'
)
->
with
([
'curso'
=>
$curso
]);
}
public
function
update
(
Request
$request
,
$id
){
$curso
=
Curso
::
find
(
$id
);
$curso
->
nome
=
$request
->
curso
;
$curso
->
update
();
return
redirect
(
route
(
'cursos.index'
))
->
with
([
'mensagem'
=>
"Curso editado com sucesso"
]);
}
public
function
destroy
(
$id
){
Curso
::
destroy
(
$id
);
return
redirect
(
route
(
'cursos.index'
))
->
with
([
'mensagem'
=>
"Curso excluido com sucesso"
]);
}
}
}
resources/views/administrador/index.blade.php
View file @
05878ad5
...
@@ -11,24 +11,30 @@
...
@@ -11,24 +11,30 @@
</
div
>
</
div
>
</
div
>
</
div
>
<
div
class
=
"row justify-content-around mt-5 mb-5 row-cols-1 row-cols-sm-2 row-cols-md-3 "
>
<
div
class
=
"row justify-content-around mt-5 mb-5 row-cols-1 row-cols-sm-2 row-cols-md-3 "
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
4
align-self-center mt-2 text-center "
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
3
align-self-center mt-2 text-center "
>
<
a
href
=
"{{ route('admin.editais') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
a
href
=
"{{ route('admin.editais') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
i
class
=
"fas fa-folder-open fa-5x"
></
i
>
<
i
class
=
"fas fa-folder-open fa-5x"
></
i
>
</
a
>
</
a
>
<
p
class
=
"mt-2"
>
Editais
</
p
>
<
p
class
=
"mt-2"
>
Editais
</
p
>
</
div
>
</
div
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
4
align-self-center mt-2 text-center"
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
3
align-self-center mt-2 text-center"
>
<
a
href
=
"{{ route('admin.usuarios') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
a
href
=
"{{ route('admin.usuarios') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
i
class
=
"fas fa-user-circle fa-5x"
></
i
>
<
i
class
=
"fas fa-user-circle fa-5x"
></
i
>
</
a
>
</
a
>
<
p
class
=
"mt-2"
>
Usuários
</
p
>
<
p
class
=
"mt-2"
>
Usuários
</
p
>
</
div
>
</
div
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
4
align-self-center mt-2 text-center"
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-
3
align-self-center mt-2 text-center"
>
<
a
href
=
"{{ route('grandearea.index') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
a
href
=
"{{ route('grandearea.index') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
i
class
=
"fas fa-project-diagram fa-5x"
></
i
>
<
i
class
=
"fas fa-project-diagram fa-5x"
></
i
>
</
a
>
</
a
>
<
p
class
=
"mt-2"
>
Áreas
</
p
>
<
p
class
=
"mt-2"
>
Áreas
</
p
>
</
div
>
</
div
>
<
div
class
=
"col-sm-4 col-md-4 col-lg-4 col-xl-3 align-self-center mt-2 text-center"
>
<
a
href
=
"{{ route('cursos.index') }}"
style
=
"text-decoration:none; color: inherit;"
>
<
i
class
=
"fas fa-graduation-cap fa-5x"
></
i
>
</
a
>
<
p
class
=
"mt-2"
>
Cursos
</
p
>
</
div
>
</
div
>
</
div
>
...
...
resources/views/cursos/create.blade.php
0 → 100644
View file @
05878ad5
@
extends
(
'layouts.app'
)
@
section
(
'content'
)
<
div
class
=
"container"
style
=
"margin-top: 100px;"
>
<
div
class
=
"container"
>
<
div
class
=
"row"
>
<
div
class
=
"col-sm-5"
>
<
a
href
=
"{{ route('cursos.index') }}"
class
=
"btn btn-secondary"
>
Voltar
</
a
>
</
div
>
<
div
class
=
"col-sm-3"
style
=
"float: center;"
>
<
div
class
=
"titulo-table"
><
h4
>
Criar
um
novo
curso
</
h4
></
div
>
</
div
>
</
div
>
<
hr
>
<
form
action
=
"
{
{route('cursos.salvar')}
}
"
method
=
"POST"
>
@
csrf
<
div
class
=
'row justify-content-center'
>
<
div
class
=
'col-sm-5'
>
<
label
for
=
"curso"
class
=
"col-form-label"
style
=
"color: rgb(0, 140, 255);"
>
Nome
do
curso
:
<
span
style
=
"color: red;"
>*</
span
>
</
label
>
<
input
class
=
"form-control @error('curso') is-invalid @enderror"
type
=
"text"
id
=
'curso'
name
=
'curso'
value
=
"
{
{old('curso')}
}
"
required
autocomplete
=
'curso'
autofocus
>
</
div
>
@
error
(
'curso'
)
<
span
class
=
"invalid-feedback"
role
=
"alert"
>
<
strong
>
{{
$message
}}
</
strong
>
</
span
>
@
enderror
<
div
>
<
button
type
=
'submit'
class
=
'btn btn-info'
style
=
"position:relative;top:37px;"
>
Salvar
</
button
>
</
div
>
</
div
>
</
form
>
</
div
>
@
endsection
\ No newline at end of file
resources/views/cursos/edit.blade.php
0 → 100644
View file @
05878ad5
@
extends
(
'layouts.app'
)
@
section
(
'content'
)
<
div
class
=
"container"
style
=
"margin-top: 100px;"
>
<
div
class
=
"container"
>
<
div
class
=
"row"
>
<
div
class
=
"col-sm-5"
>
<
a
href
=
"{{ route('cursos.index') }}"
class
=
"btn btn-secondary"
>
Voltar
</
a
>
</
div
>
<
div
class
=
"col-sm-3"
style
=
"float: center;"
>
<
div
class
=
"titulo-table"
><
h4
>
Criar
um
novo
curso
</
h4
></
div
>
</
div
>
</
div
>
<
hr
>
<
form
action
=
"{{route('cursos.update', ['id' =>
$curso->id
])}}"
method
=
"POST"
>
@
csrf
<
div
class
=
'row justify-content-center'
>
<
div
class
=
'col-sm-5'
>
<
label
for
=
"curso"
class
=
"col-form-label"
style
=
"color: rgb(0, 140, 255);"
>
Nome
do
curso
:
<
span
style
=
"color: red;"
>*</
span
>
</
label
>
<
input
class
=
"form-control @error('curso') is-invalid @enderror"
type
=
"text"
id
=
'curso'
name
=
'curso'
value
=
"
{
{$curso->nome}
}
"
required
autocomplete
=
'curso'
autofocus
>
</
div
>
@
error
(
'curso'
)
<
span
class
=
"invalid-feedback"
role
=
"alert"
>
<
strong
>
{{
$message
}}
</
strong
>
</
span
>
@
enderror
<
div
>
<
button
type
=
'submit'
class
=
'btn btn-info'
style
=
"position:relative;top:37px;"
>
Salvar
</
button
>
</
div
>
</
div
>
</
form
>
</
div
>
@
endsection
\ No newline at end of file
resources/views/cursos/index.blade.php
0 → 100644
View file @
05878ad5
@
extends
(
'layouts.app'
)
@
section
(
'content'
)
<
div
class
=
"container"
style
=
"margin-top: 100px;"
>
<
div
class
=
"row"
>
@
if
(
session
(
'error'
))
<
div
class
=
"col-md-12"
style
=
"margin-top: 30px;"
>
<
div
class
=
"alert alert-danger"
>
<
p
>
{{
session
(
'error'
)}}
</
p
>
</
div
>
</
div
>
@
endif
</
div
>
<
div
class
=
"row"
>
@
if
(
session
(
'mensagem'
))
<
div
class
=
"col-md-12"
style
=
"margin-top: 30px;"
>
<
div
class
=
"alert alert-success"
>
<
p
>
{{
session
(
'mensagem'
)}}
</
p
>
</
div
>
</
div
>
@
endif
</
div
>
<
div
class
=
"container"
>
<
div
class
=
"row"
>
<
div
class
=
"col-sm-5"
>
<
a
href
=
"{{ route('admin.index') }}"
class
=
"btn btn-secondary"
>
Voltar
</
a
>
</
div
>
<
div
class
=
"col-sm-3"
style
=
"float: center;"
>
<
h4
class
=
"titulo-table"
>
Cursos
</
h4
>
</
div
>
<
div
class
=
"col-sm-4"
>
<
a
href
=
"
{
{route('cursos.criar')}
}
"
class
=
"btn btn-info"
style
=
"float: right;"
>
Criar
Curso
</
a
>
</
div
>
</
div
>
<
hr
>
<
div
class
=
"row"
>
<
div
class
=
"col-md-12"
>
<
table
class
=
"table table-bordered"
>
<
thead
>
<
tr
>
<
th
scope
=
"col"
>
Cursos
</
th
>
<
th
scope
=
"col"
>
Opção
</
th
>
</
tr
>
</
thead
>
<
tbody
id
=
"cursos"
>
@
foreach
(
$cursos
as
$curso
)
<
tr
>
<
td
>
{{
$curso
->
nome
}}
</
td
>
<
td
>
<
div
class
=
"btn-group dropright dropdown-options"
>
<
a
id
=
"options"
class
=
"dropdown-toggle "
data
-
toggle
=
"dropdown"
aria
-
haspopup
=
"true"
aria
-
expanded
=
"false"
>
<
img
src
=
"
{
{asset('img/icons/ellipsis-v-solid.svg')}
}
"
style
=
"width:8px"
>
</
a
>
<
div
class
=
"dropdown-menu"
>
<
a
href
=
"{{ route('cursos.editar', ['id' =>
$curso->id
]) }}"
class
=
"dropdown-item text-center"
>
Editar
curso
</
a
>
<
hr
class
=
"dropdown-hr"
>
<!--
Button
trigger
modal
-->
<
button
type
=
"button"
class
=
"dropdown-item dropdown-item-delete text-center"
data
-
toggle
=
"modal"
data
-
target
=
"#exampleModal{{
$curso->id
}}"
>
<
img
src
=
"
{
{asset('img/icons/logo_lixeira.png')}
}
"
alt
=
""
>
Deletar
</
button
>
</
div
>
</
div
>
</
td
>
</
tr
>
<!--
Modal
-->
<
div
class
=
"modal fade"
id
=
"exampleModal{{
$curso->id
}}"
tabindex
=
"-1"
role
=
"dialog"
aria
-
labelledby
=
"exampleModalLabel"
aria
-
hidden
=
"true"
>
<
div
class
=
"modal-dialog"
>
<
div
class
=
"modal-content"
>
<
div
class
=
"modal-header"
>
<
h5
class
=
"modal-title"
id
=
"exampleModalLabel"
>
Deletar
curso
</
h5
>
<
button
type
=
"button"
class
=
"close"
data
-
dismiss
=
"modal"
aria
-
label
=
"Close"
>
<
span
aria
-
hidden
=
"true"
>&
times
;
</
span
>
</
button
>
</
div
>
<
div
class
=
"modal-body"
>
<
p
>
Você
tem
certeza
que
deseja
deletar
o
curso
:
{{
$curso
->
nome
}}
?</
p
>
</
div
>
<
div
class
=
"modal-footer"
>
<
button
type
=
"button"
class
=
"btn btn-secondary"
data
-
dismiss
=
"modal"
>
Cancelar
</
button
>
<
form
method
=
"POST"
action
=
"
{
{route('cursos.excluir',$curso->id)}
}
"
class
=
"text-center"
>
{{
csrf_field
()
}}
{{
method_field
(
'DELETE'
)
}}
<
button
type
=
"submit"
class
=
"btn btn-primary"
>
Deletar
</
button
>
</
form
>
</
div
>
</
div
>
</
div
>
</
div
>
@
endforeach
</
tbody
>
</
table
>
</
div
>
</
div
>
</
div
>
@
endsection
\ No newline at end of file
routes/web.php
View file @
05878ad5
...
@@ -297,6 +297,17 @@ Route::prefix('naturezas')->group(function () {
...
@@ -297,6 +297,17 @@ Route::prefix('naturezas')->group(function () {
Route
::
get
(
'/funcao-participante/{id}/destroy'
,
'ParticipanteController@destroyFuncao'
)
->
name
(
'funcao_participante.destroy'
);
Route
::
get
(
'/funcao-participante/{id}/destroy'
,
'ParticipanteController@destroyFuncao'
)
->
name
(
'funcao_participante.destroy'
);
});
});
Route
::
prefix
(
'cursos'
)
->
name
(
'cursos.'
)
->
group
(
function
(){
//#################### Rotas de cursos #########################
Route
::
get
(
'index'
,
'CursoController@index'
)
->
name
(
'index'
)
->
middleware
(
'checkAdministrador'
);
Route
::
get
(
'nova'
,
'CursoController@create'
)
->
name
(
'criar'
)
->
middleware
(
'checkAdministrador'
);
Route
::
post
(
'salvar'
,
'CursoController@store'
)
->
name
(
'salvar'
)
->
middleware
(
'checkAdministrador'
);
Route
::
get
(
'editar/{id}'
,
'CursoController@edit'
)
->
name
(
'editar'
)
->
middleware
(
'checkAdministrador'
);
Route
::
post
(
'editar/{id}'
,
'CursoController@update'
)
->
name
(
'update'
)
->
middleware
(
'checkAdministrador'
);
Route
::
delete
(
'exluir/{id}'
,
'CursoController@destroy'
)
->
name
(
'excluir'
)
->
middleware
(
'checkAdministrador'
);
//Route::get('novo')->name('novo');
});
//############ Evento ##############################################
//############ Evento ##############################################
Route
::
prefix
(
'evento'
)
->
name
(
'evento.'
)
->
group
(
function
()
{
Route
::
prefix
(
'evento'
)
->
name
(
'evento.'
)
->
group
(
function
()
{
Route
::
get
(
'/criar'
,
'EventoController@create'
)
->
name
(
'criar'
)
->
middleware
(
'checkAdministrador'
);
Route
::
get
(
'/criar'
,
'EventoController@create'
)
->
name
(
'criar'
)
->
middleware
(
'checkAdministrador'
);
...
...
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