fix: update profile editing
This commit is contained in:
@@ -4,6 +4,8 @@ namespace App\Http\Controllers\Account;
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Requests\EditProfilePostRequest;
|
use App\Http\Requests\EditProfilePostRequest;
|
||||||
|
use Illuminate\Support\Facades\Storage;
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
|
||||||
@@ -11,7 +13,8 @@ class EditProfileController extends Controller
|
|||||||
{
|
{
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
$user = Auth::user();
|
|
||||||
|
$user = Auth::user()->load(['comments.commentable', 'favorites.favoritable']);
|
||||||
|
|
||||||
return view('account.edit-profile.index', compact('user'));
|
return view('account.edit-profile.index', compact('user'));
|
||||||
}
|
}
|
||||||
@@ -20,12 +23,26 @@ class EditProfileController extends Controller
|
|||||||
{
|
{
|
||||||
$user = Auth::user();
|
$user = Auth::user();
|
||||||
|
|
||||||
$user->name = $request['name'];
|
// بهروزرسانی فیلدها
|
||||||
$user->username = $request['username'];
|
$user->first_name = $request->first_name;
|
||||||
$user->email = $request['email'];
|
$user->last_name = $request->last_name;
|
||||||
|
$user->email = $request->email;
|
||||||
|
$user->username = $request->username;
|
||||||
|
|
||||||
|
|
||||||
if ($request->filled('password')) {
|
if ($request->filled('password')) {
|
||||||
$user->password = Hash::make($request['password']);
|
$user->password = Hash::make($request->password);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($request->hasFile('image')) {
|
||||||
|
|
||||||
|
if ($user->image) {
|
||||||
|
Storage::disk('public')->delete($user->image);
|
||||||
|
}
|
||||||
|
|
||||||
|
$path = $request->file('image')->store('avatars', 'public');
|
||||||
|
$user->image = $path;
|
||||||
}
|
}
|
||||||
|
|
||||||
$user->save();
|
$user->save();
|
||||||
|
|||||||
@@ -22,35 +22,44 @@ class EditProfilePostRequest extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
{
|
{
|
||||||
|
// دریافت آیدی کاربر از طریق سشن لاگین
|
||||||
|
$userId = auth()->id();
|
||||||
|
|
||||||
return [
|
return [
|
||||||
|
|
||||||
'name' =>
|
'first_name' =>
|
||||||
[
|
[
|
||||||
'required',
|
|
||||||
'string',
|
|
||||||
'max:255'
|
|
||||||
],
|
|
||||||
'username' =>
|
|
||||||
[
|
|
||||||
'required',
|
'required',
|
||||||
'string',
|
'string',
|
||||||
'max:255',
|
'max:100'
|
||||||
'unique:users,username,' . $user->id,
|
|
||||||
],
|
],
|
||||||
'email' => [
|
'last_name' =>
|
||||||
|
[
|
||||||
'required',
|
'required',
|
||||||
'email',
|
'string',
|
||||||
'max:255',
|
'max:100'
|
||||||
'unique:users,email,' . $user->id,
|
|
||||||
],
|
],
|
||||||
'password' =>
|
'username' =>
|
||||||
|
[
|
||||||
|
'required',
|
||||||
|
'string',
|
||||||
|
'max:50',
|
||||||
|
'unique:users,username,' . $userId,
|
||||||
|
],
|
||||||
|
'email' => [
|
||||||
|
'required',
|
||||||
|
'email',
|
||||||
|
'max:150',
|
||||||
|
'unique:users,email,' . $userId,
|
||||||
|
],
|
||||||
|
'password' =>
|
||||||
|
|
||||||
[
|
[
|
||||||
'nullable',
|
'nullable',
|
||||||
'string',
|
'string',
|
||||||
'min:8',
|
'min:8',
|
||||||
'confirmed'
|
'confirmed'
|
||||||
],
|
],
|
||||||
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user