Файловый менеджер - Редактировать - /home/clickysoft/public_html/assets.clickysoft.net/app/Http/Controllers/ApiController.php
Назад
<?php namespace App\Http\Controllers; use App\Http\Requests\OrganizationSignupRequest; use App\Http\Resources\Api\UserProfileResource; use App\Models\Company; use App\Models\Currency; use App\Models\Organization; use App\Models\User; use App\Models\Role; use App\Models\Permission; use Illuminate\Http\Request; use Symfony\Component\HttpFoundation\Response; use Illuminate\Support\Facades\Validator; use App\Http\Requests\ForgotPasswordRequest; use App\Http\Requests\ResetPasswordRequest; use App\Notifications\ForgotPasswordNotification; use Illuminate\Auth\Events\Registered; use Carbon\Carbon; use DB; use Hash; class ApiController extends Controller { public function login(Request $request) { $credentials = $request->only('email', 'password'); //Validate credential $validator = Validator::make($credentials, [ 'email' => 'required|email', 'password' => 'required' ]); //Send failed response if request is not valid if ($validator->fails()) { return response()->json(['errors' => $validator->messages()], 422); } if (!auth()->attempt($credentials)) { return response()->json([ 'message' => 'The given data was invalid.', 'errors' => [ 'password' => [ 'Invalid credentials' ], ] ], 422); } $user = User::where('email', $request->email)->first(); if ($user->organization->status == 0) { return response()->json([ 'message' => 'Organization disabled.', 'errors' => [ 'email' => [ 'Your organization is disabled, please contact administrator.' ], ] ], 422); } if ($user->status == 0) { return response()->json([ 'message' => 'Account disabled.', 'errors' => [ 'email' => [ 'Your account is disabled, please contact administrator.' ], ] ], 422); } if (!$user->hasVerifiedEmail()) { return (new UserProfileResource($user)) ->response() ->setStatusCode(406); } return (new UserProfileResource($user)) ->response() ->setStatusCode(Response::HTTP_ACCEPTED); } public function organizationSignup(OrganizationSignupRequest $request) { try { DB::beginTransaction(); $organization = Organization::create([ 'name' => $request->organization_name, 'email' => $request->organization_email, // 'contact_number' => $request->organization_contact_number, // 'address_line_1' => $request->organization_address_line1, // 'address_line_2' => $request->organization_address_line2, // 'city' => $request->city, // 'state' => $request->state, // 'zip' => $request->zip, // 'country_id' => $request->country_id, 'date_expiration' => Carbon::now()->addYear()->format(config('panel.date_format')), 'status' => 1, ]); // if ($request->file('logo')) { // $organization->addMediaFromRequest('logo')->toMediaCollection('logo', 'organization'); // } $user = User::create([ 'first_name' => $request->organization_name, 'email' => $request->organization_email, 'password' => $request->user_password, 'status' => 1, "is_org_admin" => 1, 'organization_id' => $organization->id, ]); $role = Role::create([ 'title' => 'Admin', 'organization_id' => $organization->id, ]); $permissions = Permission::all()->pluck("id"); $role->permissions()->attach($permissions); $user->roles()->attach($role->id); Currency::insert([ [ 'code' => 'USD', 'name' => 'US Dollar', 'symbol' => '$', 'organization_id' => $organization->id, 'created_at' => now(), ], [ 'code' => 'PKR', 'name' => 'Pakistan Rupee', 'symbol' => 'Rs.', 'organization_id' => $organization->id, 'created_at' => now(), ] ]); Company::create([ 'organization_id' => $organization->id, 'name' => $request->organization_name, 'contact_number' => $request->organization_contact_number, ]); try { event(new Registered($user)); } catch (\Exception $e) { \Log::info(__FILE__ . "(" . __LINE__ . ")" . $e->getMessage()); } DB::commit(); return (new UserProfileResource($user)) ->response() ->setStatusCode(Response::HTTP_CREATED); } catch (\Exception $e) { DB::rollBack(); return response()->json([ 'message' => 'Something went wrong. ' . $e->getMessage(), ], Response::HTTP_INTERNAL_SERVER_ERROR); } } public function logout(Request $request) { $request->user()->tokens()->delete(); return response()->json(['success' => true, "message" => "User has been logged out successfully."]); } public function forgot_password(ForgotPasswordRequest $request) { $resetCode = substr(number_format(time() * rand(), 0, '', ''), 0, 6); $user = User::whereEmail($request->input("email"))->first(); $user->password_reset_code = $resetCode; $user->save(); try { $user->notify(new ForgotPasswordNotification($resetCode)); } catch (\Exception $e) { \Log::info(__FILE__ . "(" . __LINE__ . ")" . $e->getMessage()); } return response()->json(['success' => true, "message" => "A password reset code has been sent to your email address."], Response::HTTP_OK); } public function reset_password(ResetPasswordRequest $request) { $user = User::whereEmail($request->input("email")) ->wherePasswordResetCode($request->input("password_reset_code")) ->first(); if (empty($user)) { return response()->json([ "message" => "The given data was invalid.", "errors" => ["password_reset_code" => ["The password reset code is invalid or user does not exists."]] ], 422); } $user->password = Hash::make($request->input("password")); $user->password_reset_code = null; $user->save(); return response()->json(['success' => true, "message" => "Password has been changed successfully."]); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка