package('camil-staps/botleagues-api', null, __DIR__.'/../..'); #$this->loadAutoloader(base_path('vendor')); $this->loadViewsFrom(__DIR__ . '/../../views', 'botleagues-api'); $this->publishes([ __DIR__ . '/../../views' => base_path('resources/view/vendor/botleagues-api')], 'views'); $this->publishes([ __DIR__ . '/../../config/botleaguesapi.php' => config_path('botleaguesapi.php')], 'config'); include __DIR__ . '/../../filters.php'; $api = app('api.router'); include __DIR__ . '/../../routes.php'; // To allow loading API requests from the specified domain $allowed_origin = config('botleaguesapi.allowed_origin'); if (is_array($allowed_origin)) { $origin = Request::header('Origin'); if (in_array($origin, $allowed_origin)) { header('Access-Control-Allow-Origin: ' . $origin); } else { header('Access-Control-Allow-Origin: ' . $allowed_origin[0]); } } else { header('Access-Control-Allow-Origin: ' . $allowed_origin); } header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE'); header('Access-Control-Allow-Headers: Authorization'); var_dump(true); $this->setupErrorHandlers(); } /** * Register the service provider. * * @return void */ public function register() { } /** * Get the services provided by the provider. * * @return array */ public function provides() { return array('CamilStaps\BotleaguesApi\BotleaguesApiServiceProvider'); } /** * Setup nice error handlers for exceptions and fatal errors */ private function setupErrorHandlers() { // App::fatal(function($e) { // return Response::make( // ['error' => config('app.debug') ? $e->getMessage() : "Internal error"], // 500); // }); // API::error(function(\Illuminate\Database\Eloquent\ModelNotFoundException $e) { // return Response::make( // ['error' => 'Resource not found'], // 404); // }); // API::error(function(\Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException $e) { // return Response::make( // ['error' => !config('app.debug') || empty($e->getMessage()) ? 'Access denied' : $e->getMessage()], // 404); // }); // API::error(function(Exception\ValidationException $e) { // return Response::make( // [ // 'error' => $e->getMessage(), // 'errors' => $e->errors // ], // 500); // }); // // API::error(function(\Exception $e) { // return Response::make( // ['error' => Config::get('app.debug') ? $e->getMessage() : "Internal error"], // 500); // }); } }