diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 2f02ec9a7b9de3b1f67e0a95a01d323239e61bd4..79da5d2b8a047edff693fe860919a8fa1959e360 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -41,7 +41,7 @@ class UserController extends Controller $user = User::find($user_id); $user->fill($request->all()); - $user->document = MaskHelper::documentOnlyNumber($user->document); + $user->document = $user->document !== null ? MaskHelper::documentOnlyNumber($user->document) : ''; $user->save(); return redirect()->route('edit_perfil')->with('success', 'Salvo com sucesso!'); diff --git a/app/Models/User.php b/app/Models/User.php index b64fa0df67d3ba503da5b222bdf5d8188d130e05..2e7d792f2a09979338eba4131e5ebecf0c382e40 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -52,8 +52,8 @@ class User extends Authenticatable $rules = [ 'name' => ['required', 'min:4'], 'email' => ['required', 'email', Rule::unique('users')->ignore($id)], - 'curso_id' => ['integer'], - 'campus_id' => ['integer'], + 'curso_id' => ['required', 'integer'], + 'campus_id' => ['required', 'integer'], 'status' => [ Rule::requiredIf ( function() use($ignoreStatus) { @@ -81,9 +81,11 @@ class User extends Authenticatable 'status.integer' => 'O campo "Status" deve cónter um inteiro!', //curso_id + 'curso_id.required' => 'O campo "Curso" é obrigatório.', 'curso_id.integer' => 'O campo "Curso" deve cónter um inteiro!', //campus_id + 'campus_id.required' => 'O campo "Campus" é obrigatório.', 'campus_id.integer' => 'O campo "Campus" deve cónter um inteiro!', ]; diff --git a/app/Models/Util/MaskHelper.php b/app/Models/Util/MaskHelper.php index 38703672376d1e10bbd37d4758e126e7918d46fb..6f057fe273a80a327f78e74d5ae1b6598429a1f5 100644 --- a/app/Models/Util/MaskHelper.php +++ b/app/Models/Util/MaskHelper.php @@ -10,7 +10,7 @@ class MaskHelper * @return string * */ public static function documentOnlyNumber(string $document, array $clean = ['.', '-']) - { + { return str_replace($clean, '', $document); } diff --git a/resources/views/layouts/user-dashboard/dashboard_teacher.blade.php b/resources/views/layouts/user-dashboard/dashboard_teacher.blade.php index 9326d44c7d0db1a1b84709ae9bed7311c2997266..c7e7e5e926cb90d99da3f79ef29bca24457a1d2f 100644 --- a/resources/views/layouts/user-dashboard/dashboard_teacher.blade.php +++ b/resources/views/layouts/user-dashboard/dashboard_teacher.blade.php @@ -7,10 +7,10 @@ <h1 class="h2">Bem Vindo ao PAD</h1> </div> <div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3"> - <h3> + {{-- <h3> <i class="bi bi-exclamation-octagon-fill"></i> Atividades pendentes - </h3> + </h3> --}} </div> <div class="d-flex"> @foreach($userPads as $userPad) diff --git a/resources/views/user/update_perfil.blade.php b/resources/views/user/update_perfil.blade.php index 15774cd6e77c0b61d30b944ac9ae1cf9ae34ee19..de7c3ea41c9bc8dec58c724272e6651f3d9d9b21 100644 --- a/resources/views/user/update_perfil.blade.php +++ b/resources/views/user/update_perfil.blade.php @@ -92,6 +92,36 @@ @include('components.divs.errors', ['field' => 'email']) </div> </div> + + <div class="mb-4 col-6"> + <div class="form-group"> + <label class="form-label" for="campus_id"> Campus </label> + <select class="form-control" name="campus_id" id="campus_id"> + @if($user->campus_id) + <option value="{{$user->campus_id}}" selected> {{$user->campus}} </option> + @endif + </select> + @error('campus_id') + <span class="text-danger"> {{ $message }} </span> + @enderror + </div> + </div> + + + <div class="mb-4 col-6"> + <div class="form-group"> + <label class="form-label" for="curso_id"> Curso </label> + <select class="form-control" name="curso_id" id="curso_id"> + @if($user->curso_id) + <option value="{{$user->curso_id}}" selected> {{$user->curso}} </option> + @endif + </select> + @error('curso_id') + <span class="text-danger"> {{ $message }} </span> + @enderror + </div> + </div> + </div> </div> @@ -158,9 +188,43 @@ @section('scripts') <script type="text/javascript"> + + //document $('#document').mask('000.000.000-00') $('#document').keypress(function() { $(this).mask('000.000.000-00') }) + + //campus_id + $('#campus_id').select2( + { + placeholder: "Selecione um Campus", + allowClear: true, + ajax: { + url: '{{ route("campus_search") }}', + dataType: 'json' + } + }); + + $('#campus_id').on('change', function (e) { + $('#curso_id').empty() + }); + + //curso_id + $('#curso_id').select2( + { + placeholder: "Selecione um Curso", + allowClear: true, + ajax: { + url: '{{ route("curso_search") }}', + data: function(params) { + return { + q: params.term, + campus_id: $('#campus_id').val() + } + }, + dataType: 'json' + }, + }); </script> @endsection \ No newline at end of file