diff options
author | Camil Staps | 2015-05-10 19:11:07 +0300 |
---|---|---|
committer | Camil Staps | 2015-05-10 19:11:07 +0300 |
commit | bdf893e87b3fa6b34b08c78b060553e3e88f2c82 (patch) | |
tree | fad3716da90ef4cd503cffd7ffb081b506979a7d /src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php | |
parent | UserTokens (diff) |
Cleanup; show user_token-token field on store request (POST)
Diffstat (limited to 'src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php')
-rw-r--r-- | src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php | 52 |
1 files changed, 30 insertions, 22 deletions
diff --git a/src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php b/src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php index 65fd737..ef88f47 100644 --- a/src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php +++ b/src/CamilStaps/BotleaguesApi/BotleaguesApiServiceProvider.php @@ -29,8 +29,36 @@ class BotleaguesApiServiceProvider extends ServiceProvider { include __DIR__ . '/../../filters.php'; include __DIR__ . '/../../routes.php'; + // To allow loading API requests from the specified domain header('Access-Control-Allow-Origin: ' . Config::get('config.allowed_origin')); + $this->setupErrorHandlers(); + } + + /** + * Register the service provider. + * + * @return void + */ + public function register() + { + $this->app->register('Dingo\Api\Provider\ApiServiceProvider'); + } + + /** + * Get the services provided by the provider. + * + * @return array + */ + public function provides() + { + return array(); + } + + /** + * Setup nice error handlers for exceptions and fatal errors + */ + private function setupErrorHandlers() { App::fatal(function($e) { return Response::make( ['error' => Config::get('app.debug') ? $e->getMessage() : "Internal error"], @@ -55,6 +83,7 @@ class BotleaguesApiServiceProvider extends ServiceProvider { ], 500); }); + API::error(function(Exception\LoginException $e) { $response = Response::make("Please login", 401); $response->header('WWW-Authenticate', 'Basic realm="Please login"'); @@ -63,6 +92,7 @@ class BotleaguesApiServiceProvider extends ServiceProvider { API::error(function(Exception\RedirectException $e) { return Redirect::to($e->getMessage()); }); + API::error(function(\Exception $e) { return Response::make( ['error' => Config::get('app.debug') ? $e->getMessage() : "Internal error"], @@ -70,26 +100,4 @@ class BotleaguesApiServiceProvider extends ServiceProvider { }); } - /** - * Register the service provider. - * - * @return void - */ - public function register() - { - - $this->app->register('Dingo\Api\Provider\ApiServiceProvider'); - - } - - /** - * Get the services provided by the provider. - * - * @return array - */ - public function provides() - { - return array(); - } - } |