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
pad-upe
Commits
fe9bcfda
Commit
fe9bcfda
authored
Dec 16, 2022
by
alissonalbuquerque
Browse files
add correções de impl
parent
f7ba4896
Changes
6
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/PadController.php
View file @
fe9bcfda
...
@@ -93,6 +93,8 @@ class PadController extends Controller
...
@@ -93,6 +93,8 @@ class PadController extends Controller
if
(
$validated
)
if
(
$validated
)
{
{
$model
=
new
Pad
(
$request
->
all
());
$model
=
new
Pad
(
$request
->
all
());
$users
=
User
::
initQuery
()
->
whereType
(
UserType
::
TEACHER
)
->
get
();
if
(
$model
->
save
())
if
(
$model
->
save
())
{
{
...
@@ -100,14 +102,17 @@ class PadController extends Controller
...
@@ -100,14 +102,17 @@ class PadController extends Controller
foreach
(
$users
as
$user
)
foreach
(
$users
as
$user
)
{
{
$profile
=
$user
->
profile
(
UserType
::
TEACHER
);
$userType
=
$user
->
profile
(
UserType
::
TEACHER
);
$userPad
=
new
UserPad
();
if
(
$userType
)
$userPad
->
pad_id
=
$model
->
id
;
{
$userPad
->
user_type_id
=
$profile
->
id
;
$userPad
=
new
UserPad
();
$userPad
->
status
=
Status
::
ATIVO
;
$userPad
->
pad_id
=
$model
->
id
;
$userPad
->
user_type_id
=
$userType
->
id
;
$userPad
->
save
();
$userPad
->
status
=
Status
::
ATIVO
;
$userPad
->
save
();
}
}
}
return
redirect
()
->
route
(
'pad_index'
)
->
with
(
'success'
,
'PAD cadastrado com sucesso!'
);
return
redirect
()
->
route
(
'pad_index'
)
->
with
(
'success'
,
'PAD cadastrado com sucesso!'
);
...
...
app/Http/Controllers/UserController.php
View file @
fe9bcfda
...
@@ -17,12 +17,13 @@ use NunoMaduro\Collision\Adapters\Phpunit\State;
...
@@ -17,12 +17,13 @@ use NunoMaduro\Collision\Adapters\Phpunit\State;
class
UserController
extends
Controller
class
UserController
extends
Controller
{
{
public
function
editPerfil
()
{
public
function
editPerfil
()
{
return
view
(
'user.update_perfil'
,
[
'menu'
=>
Menu
::
USER
]);
return
view
(
'user.update_perfil'
,
[
'menu'
=>
Menu
::
USER
]);
}
}
public
function
updatePerfil
(
Request
$request
)
{
public
function
updatePerfil
(
Request
$request
)
{
$validator
=
User
::
validator
(
$request
->
all
());
$validator
=
User
::
validator
(
$request
->
all
());
if
(
$validator
->
fails
())
{
if
(
$validator
->
fails
())
{
...
@@ -34,12 +35,11 @@ class UserController extends Controller
...
@@ -34,12 +35,11 @@ class UserController extends Controller
$user
->
save
();
$user
->
save
();
return
redirect
()
->
route
(
'edit_perfil'
)
->
with
(
'success'
,
'Salvo com sucesso!'
);
return
redirect
()
->
route
(
'edit_perfil'
)
->
with
(
'success'
,
'Salvo com sucesso!'
);
}
}
public
function
updatePassword
(
Request
$request
)
{
public
function
updatePassword
(
Request
$request
)
{
$validator
=
User
::
validator
(
$request
->
all
()
,
true
);
$validator
=
User
::
validator
Password
(
$request
->
all
());
// if($validator->fails()) {
// if($validator->fails()) {
// return redirect()->back()->withErrors($validator->errors());
// return redirect()->back()->withErrors($validator->errors());
...
...
app/Models/User.php
View file @
fe9bcfda
...
@@ -41,75 +41,78 @@ class User extends Authenticatable
...
@@ -41,75 +41,78 @@ class User extends Authenticatable
];
];
// Validate User General: name, email and password
public
static
function
validator
(
array
$attributes
)
public
static
function
ruleDefault
()
{
{
return
[
$rules
=
[
'name'
=>
[
'required'
,
'min:4'
],
'name'
=>
[
'required'
,
'min:4'
],
'email'
=>
[
'required'
,
'email'
]
'email'
=>
[
'required'
,
'email'
]
];
];
}
public
static
function
validatePassword
()
$messages
=
[
{
//name
return
[
'name.min'
=>
'O campo "Nome" dever ter no mínimo 4 caracteres.'
,
'name.required'
=>
'O campo "Nome" é obrigatório.'
,
//email
'email.required'
=>
'O campo "E-Mail" é obrigatório.'
,
'email.email'
=>
'O campo "E-Mail" deve conter um e-mail valido.'
];
];
}
// Validate User from Type Admin
try
{
public
static
function
ruleAdmin
()
return
Validator
::
make
(
$attributes
,
$rules
,
$messages
);
{
}
catch
(
ValidationException
$exception
)
{
return
[
];
}
}
}
// Validate User from Type Teacher
public
static
function
validatorPassword
(
array
$attributes
)
public
static
function
ruleTeacher
()
{
{
$rules
=
[
'password'
=>
[
'required'
,
'min:8'
],
'password_confirmation'
=>
[],
];
return
[];
$messages
=
[
}
public
static
function
messages
()
{
return
[
'name.required'
=>
'O campo "Nome" é obrigatório!'
,
'email.required'
=>
'O "E-Mail" é obrigatório'
,
];
];
try
{
return
Validator
::
make
(
$attributes
,
$rules
,
$messages
);
}
catch
(
ValidationException
$exception
)
{
}
}
}
/**
/**
* Validar os campos de acordo com as regras implementadas
* Validar os campos de acordo com as regras implementadas
*
*
*/
*/
public
static
function
validator
(
$attributes
,
$rule_password
=
false
)
{
//
public static function validator($attributes, $rule_password = false) {
$rules
=
[
//
$rules = [
'name'
=>
[
'required'
],
//
'name' => ['required'],
'email'
=>
[
'required'
,
'email'
],
//
'email' => ['required', 'email'],
];
//
];
if
(
$rule_password
)
{
//
if($rule_password) {
$rules
=
[
//
$rules = [
'password'
=>
[
'required'
,
'min:8'
],
//
'password' => ['required', 'min:8'],
'password_confirmation'
=>
[],
//
'password_confirmation' => [],
];
//
];
}
//
}
$messages
=
[
//
$messages = [
// 'unique' => "O :attribute já está registrado no sistema",
//
// 'unique' => "O :attribute já está registrado no sistema",
'required'
=>
"O :attribute precisa ser preenchido"
,
//
'required' => "O :attribute precisa ser preenchido",
];
//
];
try
{
//
try {
return
Validator
::
make
(
$attributes
,
$rules
,
$messages
);
//
return Validator::make($attributes, $rules, $messages);
}
catch
(
ValidationException
$exception
)
{
//
} catch(ValidationException $exception) {
}
//
}
}
//
}
/**
/**
* Get Curso with curso.id = user.curso_id
* Get Curso with curso.id = user.curso_id
...
@@ -133,10 +136,7 @@ class User extends Authenticatable
...
@@ -133,10 +136,7 @@ class User extends Authenticatable
public
function
profile
(
$type_profile
)
public
function
profile
(
$type_profile
)
{
{
return
UserType
::
initQuery
()
return
UserType
::
initQuery
()
->
whereUser
(
$this
->
id
)
->
whereType
(
$type_profile
)
->
first
();
->
whereUser
(
$this
->
id
)
->
whereType
(
$type_profile
)
->
first
();
}
}
/** @return UserType[]|null */
/** @return UserType[]|null */
...
...
app/Models/UserPad.php
View file @
fe9bcfda
...
@@ -16,7 +16,7 @@ class UserPad extends Model
...
@@ -16,7 +16,7 @@ class UserPad extends Model
protected
$table
=
'user_pad'
;
protected
$table
=
'user_pad'
;
protected
$fillable
=
[
'user_type_id'
,
'pad_id'
,
'status'
];
protected
$fillable
=
[
'id'
,
'user_type_id'
,
'pad_id'
,
'status'
];
public
function
user
()
{
public
function
user
()
{
return
$this
->
belongsTo
(
UserType
::
class
);
return
$this
->
belongsTo
(
UserType
::
class
);
...
...
resources/views/pad/teacher/view.blade.php
View file @
fe9bcfda
...
@@ -59,19 +59,19 @@
...
@@ -59,19 +59,19 @@
<
div
class
=
"mx-2"
>
<
div
class
=
"mx-2"
>
<
div
class
=
"mb-3"
>
<
div
class
=
"mb-3"
>
<
h3
class
=
"h3"
>
ANEXOS
</
h3
>
<!--
<
h3
class
=
"h3"
>
ANEXOS
</
h3
>
-->
</
div
>
</
div
>
</
div
>
</
div
>
<
div
class
=
"d-flex my-2"
>
<
div
class
=
"d-flex my-2"
>
<
div
class
=
"card mx-2"
style
=
"width: 10rem;"
>
<!--
<
div
class
=
"card mx-2"
style
=
"width: 10rem;"
>
<
div
class
=
"card-body"
>
<
div
class
=
"card-body"
>
<
h2
class
=
"text-center"
>
<
i
class
=
"bi bi-file-earmark-text-fill"
></
i
>
</
h2
>
<
h2
class
=
"text-center"
>
<
i
class
=
"bi bi-file-earmark-text-fill"
></
i
>
</
h2
>
<
h3
class
=
"text-center"
>
Anexo
B
</
h3
>
<
h3
class
=
"text-center"
>
Anexo
B
</
h3
>
<
a
class
=
"stretched-link"
href
=
"{{-- route('') --}}"
class
=
"btn-pad-dimensao"
></
a
>
<
a
class
=
"stretched-link"
href
=
"{{-- route('') --}}"
class
=
"btn-pad-dimensao"
></
a
>
</
div
>
</
div
>
</
div
>
</
div
>
-->
</
div
>
</
div
>
@
endsection
@
endsection
resources/views/user/update_perfil.blade.php
View file @
fe9bcfda
@
extends
(
'layouts.main'
)
@
extends
(
'layouts.main'
)
@
section
(
'title'
,
'Atulizar Perfil'
)
@
section
(
'title'
,
'Atu
a
lizar Perfil'
)
@
section
(
'header'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
@
include
(
'layouts.header'
,
[
...
@@ -14,100 +14,118 @@
...
@@ -14,100 +14,118 @@
])
])
@
endsection
@
endsection
@
php
$user
=
Auth
::
user
();
@
endphp
@
section
(
'body'
)
@
section
(
'body'
)
<
div
class
=
"container"
>
@
include
(
'components.alerts'
)
@
include
(
'components.alerts'
)
<
div
class
=
"
d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom
"
>
<
div
class
=
"
mb-3
"
>
<
h
1
class
=
"h
2
"
>
Atualiz
ar
Perfil
</
h
1
>
<
h
3
class
=
"h
4
"
>
Edit
ar
Perfil
</
h
3
>
</
div
>
</
div
>
<
div
class
=
"content"
>
<!--
Tabs
-->
<!--
Tab
Panel
-->
<
div
>
<
div
class
=
"mb-4"
>
<
ul
class
=
"nav nav-tabs"
>
<
ul
class
=
"nav nav-tabs"
id
=
"tab-link"
role
=
"tablist"
>
<
li
class
=
"nav-item"
role
=
"presentation"
>
<
li
class
=
"nav-item"
>
<
button
class
=
"nav-link active"
id
=
"user-tab"
data
-
bs
-
toggle
=
"tab"
data
-
bs
-
target
=
"#user-container"
type
=
"button"
role
=
"tab"
aria
-
controls
=
"user-container"
arial
-
selected
=
"true"
>
Usuário
</
button
>
<
a
class
=
"nav-link active"
id
=
"perfil-tab"
data
-
toggle
=
"tab"
href
=
"#perfil"
role
=
"tab"
aria
-
controls
=
"perfil"
aria
-
selected
=
"true"
>
Perfil
</
a
>
</
li
>
<
li
class
=
"nav-item"
>
<
a
class
=
"nav-link"
id
=
"senha-tab"
data
-
toggle
=
"tab"
href
=
"#senha"
role
=
"tab"
aria
-
controls
=
"senha"
aria
-
selected
=
"false"
>
Senha
</
a
>
</
li
>
</
li
>
<!--
<
li
class
=
"nav-item"
role
=
"presentation"
>
<
button
class
=
"nav-link"
id
=
"paper-tab"
data
-
bs
-
toggle
=
"tab"
data
-
bs
-
target
=
"#paper-container"
type
=
"button"
role
=
"tab"
aria
-
controls
=
"paper-container"
arial
-
selected
=
"false"
>
Papeis
</
button
>
</
li
>
-->
</
ul
>
</
ul
>
</
div
>
</
div
>
<!--
Tab
Content
-->
<!--
Panels
-->
<
div
class
=
"tab-content"
id
=
"tab-content"
>
<
div
id
=
"tab-containers"
class
=
"tab-content"
>
<!--
Perfil
-->
<
div
class
=
"tab-pane fade show active"
id
=
"perfil"
role
=
"tabpanel"
aria
-
labelledby
=
"perfil-tab"
>
<
div
id
=
"user-container"
class
=
"tab-pane fade show active"
role
=
"tabpanel"
aria
-
labelledby
=
"user-tab"
>
<
form
class
=
""
method
=
"post"
action
=
"{{ route('update_perfil') }}"
>
<
form
class
=
""
method
=
"post"
action
=
"{{ route('update_perfil') }}"
>
@
csrf
@
csrf
@
method
(
'POST'
)
@
method
(
'POST'
)
<
div
class
=
"form-group"
>
<
div
class
=
"border border-rounded mt-2 p-2"
>
<
label
for
=
"email"
>
E
-
mail
</
label
>
<
input
type
=
"email"
class
=
"form-control"
name
=
"email"
id
=
"email"
placeholder
=
"example@email.com"
value
=
"{{ Auth::user()->email }}"
>
<
div
class
=
"row"
>
<
small
id
=
"email_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
<
div
class
=
"mb-4 col-12"
>
@
error
(
'email'
)
<
div
class
=
"form-group"
>
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
<
label
class
=
"form-label"
for
=
"name"
>
Nome
</
label
>
@
enderror
<
input
type
=
"text"
name
=
"name"
id
=
"name"
class
=
"form-control @error('name') is-invalid @enderror"
placeholder
=
"Nome"
value
=
"{{
$user->name
}}"
>
</
div
>
@
include
(
'components.divs.errors'
,
[
'field'
=>
'name'
])
<
div
class
=
"form-group"
>
</
div
>
<
label
for
=
"name"
>
Nome
</
label
>
</
div
>
<
input
type
=
"name"
class
=
"form-control"
name
=
"name"
id
=
"name"
placeholder
=
"Nome Completo"
value
=
"{{ Auth::user()->name }}"
>
<
small
id
=
"name_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
<
div
class
=
"mb-4 col-12"
>
@
error
(
'name'
)
<
div
class
=
"form-group"
>
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
<
label
class
=
"form-label"
for
=
"email"
>
E
-
Mail
</
label
>
@
enderror
<
input
type
=
"text"
name
=
"email"
id
=
"email"
class
=
"form-control @error('email') is-invalid @enderror"
placeholder
=
"E-Mail"
value
=
"{{
$user->email
}}"
>
</
div
>
@
include
(
'components.divs.errors'
,
[
'field'
=>
'email'
])
<
div
class
=
"form-group"
>
</
div
>
<
label
for
=
"document"
>
CPF
</
label
>
</
div
>
<
input
type
=
"document"
class
=
"form-control"
name
=
"document"
id
=
"document"
placeholder
=
"Senha"
value
=
"{{ Auth::user()->document }}"
>
</
div
>
<
small
id
=
"document_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
@
error
(
'document'
)
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
@
enderror
</
div
>
</
div
>
<
div
class
=
"d-flex justify-content-end"
>
<
div
class
=
"mt-1 text-end"
>
<
button
class
=
"btn btn-success"
type
=
"submit"
>
Atualizar
</
button
>
<
div
class
=
"modal-footer"
>
@
include
(
'components.buttons.btn-save'
,
[
'content'
=>
'Atualizar'
])
@
include
(
'components.buttons.btn-cancel'
,
[
'content'
=>
'Cancelar'
,
'route'
=>
route
(
'dashboard'
)])
</
div
>
</
div
>
</
div
>
</
form
>
</
form
>
</
div
>
</
div
>
<!--
Senha
-->
<
div
class
=
"tab-pane fade"
id
=
"senha"
role
=
"tabpanel"
aria
-
labelledby
=
"
senha
-tab"
>
<
div
id
=
"paper-container"
class
=
"tab-pane fade"
role
=
"tabpanel"
aria
-
labelledby
=
"
paper
-tab"
>
<
form
method
=
"post"
action
=
"{{ route('update_password') }}"
>
<
form
method
=
"post"
action
=
"{{ route('update_password') }}"
>
@
csrf
@
csrf
@
method
(
'POST'
)
@
method
(
'POST'
)
<
div
class
=
"row"
>
<
div
class
=
"border border-rounded mt-2 p-2"
>
<
div
class
=
"col-6"
>
<
div
class
=
"row"
>
<
div
class
=
"form-group"
>
<
div
class
=
"row"
>
<
label
for
=
"password"
>
Senha
</
label
>
<
div
class
=
"col-6"
>
<
input
type
=
"password"
class
=
"form-control"
name
=
"password"
id
=
"password"
placeholder
=
"Senha"
>
<
div
class
=
"form-group"
>
<
small
id
=
"password_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
<
label
for
=
"password"
>
Senha
</
label
>
@
error
(
'password'
)
<
input
type
=
"password"
class
=
"form-control"
name
=
"password"
id
=
"password"
placeholder
=
"Senha"
>
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
<
small
id
=
"password_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
@
enderror
@
error
(
'password'
)
</
div
>
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
</
div
>
@
enderror
<
div
class
=
"col-6"
>
</
div
>
<
div
class
=
"form-group"
>
</
div
>
<
label
for
=
"password_confirmation"
>
Confirmar
Senha
</
label
>
<
div
class
=
"col-6"
>
<
input
type
=
"password_confirmation"
class
=
"form-control"
name
=
"password_confirmation"
id
=
"password_confirmation"
placeholder
=
"Senha"
>
<
div
class
=
"form-group"
>
<
small
id
=
"password_confirmation_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
<
label
for
=
"password_confirmation"
>
Confirmar
Senha
</
label
>
@
error
(
'password_confirmation'
)
<
input
type
=
"password_confirmation"
class
=
"form-control"
name
=
"password_confirmation"
id
=
"password_confirmation"
placeholder
=
"Senha"
>
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
<
small
id
=
"password_confirmation_information"
class
=
"form-text text-muted"
>
{{
--
--
}}
</
small
>
@
enderror
@
error
(
'password_confirmation'
)
<
span
class
=
"text-danger"
>
{{
$message
}}
</
span
>
@
enderror
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
<
div
class
=
"d-flex justify-content-end"
>
<
div
class
=
"mt-1 text-end"
>
<
button
class
=
"btn btn-success"
type
=
"submit"
>
Atualizar
</
button
>
<
div
class
=
"modal-footer"
>
@
include
(
'components.buttons.btn-save'
,
[
'content'
=>
'Atualizar'
])
@
include
(
'components.buttons.btn-cancel'
,
[
'content'
=>
'Cancelar'
,
'route'
=>
route
(
'dashboard'
)])
</
div
>
</
div
>
</
div
>
</
form
>
</
form
>
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
</
div
>
@
endsection
@
endsection
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