Файловый менеджер - Редактировать - /home/clickysoft/public_html/somni.clickysoft.net/app/Http/Controllers/TenantRegistrationController.php
Назад
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Session; use App\Http\Requests\Front\WebLoginRequest; use App\Http\Requests\Tenant\TenantRegistrationRequest; use App\Repositories\TenantRepository; use App\Interfaces\TenantRepositoryInterface; use App\Rules\PasswordValidation; use App\Rules\TenantInvitationCodeRule; use Illuminate\Support\Facades\Validator; class TenantRegistrationController extends Controller { private TenantRepositoryInterface $tenantInterfaceObj; //User Interface Object public function __construct(TenantRepository $tenantRepo) { //Constructor $this->tenantInterfaceObj = $tenantRepo; } public function index() { return view('tenant.register'); } public function ajaxValidation(Request $request) { $rules = []; $step = $request->input('step', 1); $email = session('email', $request->email) ? session('email', $request->email) : $request->email; switch ($step) { case 1: $rules = [ 'email' => 'required|email|email:rfc,dns|unique:users', 'password' => ['required', 'confirmed', new PasswordValidation], ]; break; case 2: $rules = [ 'firstname' => 'required', 'lastname' => 'required', 'phone_number' => 'nullable|min:6', ]; $niceNames = ['phone_number' => 'Company Phone']; break; case 3: $rules = [ 'invitationCode' => ['nullable', new TenantInvitationCodeRule($email)], 'languages' => 'nullable', 'bio' => 'nullable|min:6', ]; $niceNames = ['address' => 'Property Address']; break; } $validator = Validator::make($request->all(), $rules); if (isset($niceNames)) { $validator->setAttributeNames($niceNames); } if ($validator->fails()) { return response()->json(['errors' => $validator->errors()], 200); } return response()->json(['status' => 'success']); } public function registerTenant(TenantRegistrationRequest $request) { try { $tenant = $this->tenantInterfaceObj->createTenant($request); if ($tenant) { $userCredential = $request->only('email', 'password'); if (Auth::attempt($userCredential)) { $request->session()->regenerate(); return redirect()->route('tenant.dashboard'); } }else{ return back()->with('error','Unit already occupied'); } } catch (\Throwable $th) { throw $th; } } public function assignUnit(Request $request){ $user = auth()->user(); $flag = $this->tenantInterfaceObj->acceptInvitation($request->invitation_code, $user->email,$user->id); if(!$flag){ return back()->with('error','Inavlid Invitation Code Or Unit already Occupied'); } return back()->with('success','Accepted Invitation Code'); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка