Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers\API;
- use App\Classes\ResponseAttributParameterClass;
- use Illuminate\Http\Request;
- use App\Http\Controllers\Controller;
- use JWTAuth;
- use App\BusinessLayer\LoginBusinessLayer;
- use App\Classes\LoginParameterClass;
- class ApplicationController extends Controller {
- private $loginBusinessLayer;
- public function __construct()
- {
- $this->loginBusinessLayer = new LoginBusinessLayer;
- }
- public function actionLogin(Request $request)
- {
- $username = $request->input('username');
- $password = $request->input('password');
- $params = new LoginParameterClass();
- $params->setUsername($username);
- $params->setPassword($password);
- $result = $this->loginBusinessLayer->createSession($params);
- if($result['code'] == 302){
- try{
- $token = JWTAuth::fromUser($result['data']);
- $response = new ResponseAttributParameterClass(200, 'Data successfully get', $token);
- }catch (\Exception $e){
- $data = null;
- $response = new ResponseAttributParameterClass(500, 'Something wrong with the server!', $data);
- }
- return response()->json($response->getResponse(), 200);
- }else{
- $data = null;
- $response = new ResponseAttributParameterClass(401, 'Unauthorized', $data);
- return response()->json($response->getResponse(), 401);
- }
- }
- public function getActiveUser(Request $request)
- {
- try{
- $user = JWTAuth::parseToken()->toUser();
- $response = new ResponseAttributParameterClass(200, 'Successfully get data', $user);
- return response()->json($response->getResponse(), 200);
- }catch(\Exception $e){
- $user = null;
- $response = new ResponseAttributParameterClass(500, 'Failed get data', $user);
- return response()->json($response->getResponse(), 401);
- }
- }
- public function refreshToken(Request $request)
- {
- return response()->json(['message' => 'Success']);
- }
- public function logout(Request $request)
- {
- try{
- JWTAuth::invalidate();
- $data = null;
- $response = new ResponseAttributParameterClass(200, 'Successfully logout', $data);
- return response()->json($response->getResponse(), 200);
- }catch(\Exception $e){
- $data = null;
- $response = new ResponseAttributParameterClass(500, 'Failed on logout', $data);
- return response()->json($response->getResponse(), 500);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement