diff --git a/app/Http/Controllers/API/AppController.php b/app/Http/Controllers/API/AppController.php index 5ef7c69..b1c6f42 100644 --- a/app/Http/Controllers/API/AppController.php +++ b/app/Http/Controllers/API/AppController.php @@ -83,15 +83,17 @@ class AppController extends BaseController } public function findApp(Response $response, \Illuminate\Http\Request $request) { - if(!Auth::check()) { - throw new NotLoggedInException(); - } - $this->validate($request, [ 'apiKey' => '', - 'startpage' => '' + 'webpage' => '' ]); + if(!$request->input("webpage", false) || !empty($request->input("apiKey"))) { + if(!Auth::check()) { + throw new NotLoggedInException(); + } + } + $query = \App\Models\App::query(); if($request->input("apiKey", false)) { diff --git a/app/Http/Controllers/API/UserController.php b/app/Http/Controllers/API/UserController.php index 29bed74..3cf2e90 100644 --- a/app/Http/Controllers/API/UserController.php +++ b/app/Http/Controllers/API/UserController.php @@ -182,4 +182,14 @@ class UserController extends BaseController return $response->withData($data); } + + public function listMails(Response $response) { + if(!Auth::check()) { + throw new NotLoggedInException(); + } + + $mails = Mail::query()->where("user_id", "=", Auth::id())->get(); + + return $response->withData(\App\Http\Resources\API\Mail::collection(collect($mails))); + } } diff --git a/app/Http/Resources/API/Mail.php b/app/Http/Resources/API/Mail.php new file mode 100644 index 0000000..2b84966 --- /dev/null +++ b/app/Http/Resources/API/Mail.php @@ -0,0 +1,26 @@ + (int)$this->id, + 'created_at' => $this->created_at, + 'updated_at' => $this->created_at, + 'status' => $this->status, + 'primary' => $this->primary, + 'mail' => $this->mail + ]; + } +} \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index 6e47f05..e079869 100644 --- a/routes/web.php +++ b/routes/web.php @@ -45,6 +45,7 @@ $router->group(['prefix' => 'api'], function () use ($router) { $router->get("/captcha", ['uses' => 'API\UserController@reCAPTCHA']); $router->get("/invites", ['uses' => 'API\UserController@getInviteCodeInfo']); $router->get("/me", ['uses' => 'API\UserController@me']); + $router->get("/me/mails", ['uses' => 'API\UserController@listMails']); }); $router->group(['prefix' => 'app'], function () use ($router) { $router->get("/", ['uses' => 'API\AppController@listApps']); @@ -66,15 +67,13 @@ $router->group(['prefix' => 'api'], function () use ($router) { $router->get("/authorize", ['middleware' => 'gui', 'uses' => 'oAuthController@authorizeView']); $router->post("/token", ['uses' => 'oAuthController@token']); }); + $router->group(['prefix' => 'server'], function () use ($router) { + $router->get("/settings", ["uses" => "API\ServerController@getSettings"]); + }); }); }); -//Public Routes -/*$router->post("api/v1/user/login", ['uses' => 'API\UserController@passwordLogin']); -$router->post("api/v1/user/register", ['uses' => 'API\UserController@register']); -$router->get("api/v1/user/captcha", ['uses' => 'API\UserController@reCAPTCHA']); -$router->get("api/v1/user/invites", ['uses' => 'API\UserController@getInviteCodeInfo']);*/ -$router->get("api/v1/server/settings", ["uses" => "API\ServerController@getSettings"]); + $router->get("status/check", ["uses" => "StatusController@check"]); $router->group(['prefix' => 'gui', 'middleware' => 'gui'], function () use ($router) { @@ -116,9 +115,6 @@ $router->group(['prefix' => 'gui', 'middleware' => 'gui'], function () use ($rou $router->get("/admin/resendInviteMail", ["uses" => 'GUI\AdminController@resendValidationMail']); - - - $router->get('/profile', ['uses' => 'GUI\AccountController@profileView']); $router->post('/profile/addMail', ['uses' => 'GUI\AccountController@addMail']); $router->get('/profile/changePrimaryMail', ['uses' => 'GUI\AccountController@changePrimaryMail']); @@ -127,14 +123,4 @@ $router->group(['prefix' => 'gui', 'middleware' => 'gui'], function () use ($rou $router->get('/access', ['uses' => 'GUI\AccessController@listAccess']); $router->get('/access/rm', ['uses' => 'GUI\AccessController@removeAccess']); - - -}); - -/*$router->group(['prefix' => 'api'], function () use ($router) { - $router->group(['prefix' => 'auth'], function () use ($router) { - $router->post('/register', ['uses' => 'GUI\AccountController@register']); - }); -});*/ - - +}); \ No newline at end of file