| Current Path : /home/users/unlimited/www/admin.priyotama.com/app/Http/Controllers/Vendor/ |
| Current File : /home/users/unlimited/www/admin.priyotama.com/app/Http/Controllers/Vendor/ProfileController.php |
<?php
namespace App\Http\Controllers\Vendor;
use App\CentralLogics\Helpers;
use App\Http\Controllers\Controller;
use App\Models\Vendor;
use Brian2694\Toastr\Facades\Toastr;
use Illuminate\Http\Request;
use Illuminate\Validation\Rules\Password;
class ProfileController extends Controller
{
public function view()
{
return view('vendor-views.profile.index');
}
public function update(Request $request)
{
$table=auth('vendor')->check()?'vendors':'vendor_employees';
$seller = auth('vendor')->check()?auth('vendor')->user():auth('vendor_employee')->user();
$request->validate([
'f_name' => 'required|max:100',
'l_name' => 'nullable|max:100',
'email' => 'required|email|unique:'.$table.',email,'.$seller->id,
'phone' => 'required|regex:/^([0-9\s\-\+\(\)]*)$/|min:10|max:20|unique:'.$table.',phone,'.$seller->id,
], [
'f_name.required' => translate('messages.first_name_is_required'),
]);
$seller = auth('vendor')->check()?auth('vendor')->user():auth('vendor_employee')->user();
$seller->f_name = $request->f_name;
$seller->l_name = $request->l_name;
$seller->phone = $request->phone;
$seller->email = $request->email;
if($table == 'vendors' ){
$seller->store()->update(['email' =>$request->email]);
}
if ($request->image) {
$seller->image = Helpers::update('vendor/', $seller->image, 'png', $request->file('image'));
}
$seller->save();
Toastr::success(translate('messages.profile_updated_successfully'));
return back();
}
public function settings_password_update(Request $request)
{
$request->validate([
'password' => ['required', 'same:confirm_password', Password::min(8)->mixedCase()->letters()->numbers()->symbols()->uncompromised()],
'confirm_password' => 'required',
]);
$seller = auth('vendor')->check()?Helpers::get_vendor_data():auth('vendor_employee')->user();
$seller->password = bcrypt($request['password']);
$seller->save();
Toastr::success(translate('messages.vendor_pasword_updated_successfully'));
return back();
}
}