diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 7ffca0c73d06..853049d20568 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -77,7 +77,16 @@ class Handler extends ExceptionHandler { return response()->json(['message'=>'Fatal error', 500]); } - +/* else if ($exception instanceof \Illuminate\Session\TokenMismatchException) + { + return redirect() + ->back() + ->withInput($request->except('password')) + ->with([ + 'message' => ctrans('texts.token_expired'), + 'message-type' => 'danger']); + } +*/ return parent::render($request, $exception); } diff --git a/app/Http/Controllers/ClientPortal/ProfileController.php b/app/Http/Controllers/ClientPortal/ProfileController.php index 85db14345032..2f2cb45bc5d9 100644 --- a/app/Http/Controllers/ClientPortal/ProfileController.php +++ b/app/Http/Controllers/ClientPortal/ProfileController.php @@ -13,6 +13,7 @@ namespace App\Http\Controllers\ClientPortal; use App\Http\Controllers\Controller; use App\Http\Requests\ClientPortal\UpdateContactRequest; +use App\Http\Requests\ClientPortal\UpdateSettingsRequest; use App\Jobs\Util\UploadAvatar; use App\Models\ClientContact; use Illuminate\Http\Request; @@ -89,4 +90,14 @@ class ProfileController extends Controller return back(); } + public function settings() + { + return view('portal.default.settings.index'); + } + + public function updateSettings(UpdateSettingsRequest $request) + { + + return back(); + } } diff --git a/app/Http/Requests/ClientPortal/UpdateContactRequest.php b/app/Http/Requests/ClientPortal/UpdateContactRequest.php index ef6b783fe033..686a665aeffe 100644 --- a/app/Http/Requests/ClientPortal/UpdateContactRequest.php +++ b/app/Http/Requests/ClientPortal/UpdateContactRequest.php @@ -12,10 +12,13 @@ namespace App\Http\Requests\ClientPortal; use App\Http\Requests\Request; +use App\Utils\Traits\MakesHash; use Zend\Diactoros\Response\JsonResponse; class UpdateContactRequest extends Request { + use MakesHash; + /** * Determine if the user is authorized to make this request. * @@ -24,7 +27,7 @@ class UpdateContactRequest extends Request public function authorize() : bool { - return true; + return $this->encodePrimaryKey(auth()->user()->id) === request()->segment(3); } public function rules() @@ -33,7 +36,8 @@ class UpdateContactRequest extends Request return [ 'first_name' => 'required', 'last_name' => 'required', - 'email' => 'required|email', + //'email' => 'required|email', + 'email' => 'required|email|unique:client_contacts,email,' . auth()->user()->id, 'password' => 'sometimes|nullable|min:6|confirmed', 'file' => 'sometimes|nullable|max:100000|mimes:png,svg,jpeg,gif,jpg,bmp' ]; diff --git a/app/Http/Requests/ClientPortal/UpdateSettingsRequest.php b/app/Http/Requests/ClientPortal/UpdateSettingsRequest.php new file mode 100644 index 000000000000..5f2f156aad9d --- /dev/null +++ b/app/Http/Requests/ClientPortal/UpdateSettingsRequest.php @@ -0,0 +1,43 @@ +encodePrimaryKey(auth()->user()->id) === request()->segment(3); + } + + public function rules() + { + + return [ + ]; + + } + + + +} + diff --git a/resources/views/portal/default/header.blade.php b/resources/views/portal/default/header.blade.php index 7507f5bf8772..5fa6ce425d48 100644 --- a/resources/views/portal/default/header.blade.php +++ b/resources/views/portal/default/header.blade.php @@ -51,7 +51,7 @@ @lang('texts.profile') - + @lang('texts.settings')
diff --git a/resources/views/portal/default/settings/index.blade.php b/resources/views/portal/default/settings/index.blade.php new file mode 100644 index 000000000000..727d27b59745 --- /dev/null +++ b/resources/views/portal/default/settings/index.blade.php @@ -0,0 +1,110 @@ +@extends('portal.default.layouts.master') +@push('css') + + + +@endpush +@section('body') +