profile update
This commit is contained in:
@@ -12,11 +12,14 @@ class ProfileController extends Controller
|
||||
*/
|
||||
public function index(): JsonResponse
|
||||
{
|
||||
/** @var \App\Models\User */
|
||||
$user = auth()->user();
|
||||
|
||||
return response()->json([
|
||||
'name' => $user->name,
|
||||
'phone' => $user->phone,
|
||||
'passport_serie' => $user->getOption('passport_serie'),
|
||||
'passport_id' => $user->getOption('passport_id'),
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -25,7 +28,21 @@ class ProfileController extends Controller
|
||||
*/
|
||||
public function store(UpdateUserProfileRequest $request): JsonResponse
|
||||
{
|
||||
auth()->user()->update($request->validated());
|
||||
/** @var \App\Models\User */
|
||||
$user = auth()->user();
|
||||
|
||||
$data = [
|
||||
'name' => $request->name,
|
||||
'phone' => $request->phone,
|
||||
'options->passport_serie' => $request->passport_serie,
|
||||
'options->passport_id' => $request->passport_id,
|
||||
];
|
||||
|
||||
if ($request->password) {
|
||||
$data['password'] = $request->password;
|
||||
}
|
||||
|
||||
$user->update($data);
|
||||
|
||||
return response()->json([
|
||||
'message' => __('Successfully updated profile'),
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use App\Repos\System\Settings\Legal\PassportRepo;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
@@ -27,14 +28,33 @@ class UpdateUserProfileRequest extends FormRequest
|
||||
*
|
||||
* @example 65707012
|
||||
*/
|
||||
'phone' => ['required', 'int', 'between:61000000,71999999', Rule::unique('users', 'phone')->ignore(auth()->id())],
|
||||
'phone' => [
|
||||
'required',
|
||||
'int',
|
||||
'between:61000000,71999999',
|
||||
Rule::unique('users', 'phone')->ignore(auth()->id()),
|
||||
],
|
||||
|
||||
/**
|
||||
* Password (leave empty to save it same)
|
||||
*
|
||||
* @example Mpassword
|
||||
* @example MyFcpassword
|
||||
*/
|
||||
'password' => ['nullable', 'string'],
|
||||
|
||||
/**
|
||||
* Passport serie
|
||||
*
|
||||
* @example I-AS
|
||||
*/
|
||||
'passport_serie' => ['nullable', 'string', Rule::in(array_keys(PassportRepo::values()))],
|
||||
|
||||
/**
|
||||
* Passport id
|
||||
*
|
||||
* @example 100999
|
||||
*/
|
||||
'passport_id' => ['nullable', 'numeric', 'digits:6'],
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user