app->make('Lavalite\Plan\Interfaces\PlanRepositoryInterface'); return $planrepo->findorNew($plan); }); } if (Request::is('*/plan/feature/*')) { Route::bind('feature', function ($feature) { $featurerepo = $this->app->make('Lavalite\Plan\Interfaces\FeatureRepositoryInterface'); return $featurerepo->findorNew($feature); }); } if (Request::is('*/plan/subscription_usage/*')) { Route::bind('subscription_usage', function ($subscription_usage) { $subscription_usagerepo = $this->app->make('Lavalite\Plan\Interfaces\SubscriptionUsageRepositoryInterface'); return $subscription_usagerepo->findorNew($subscription_usage); }); } if (Request::is('*/plan/subscription/*')) { Route::bind('subscription', function ($subscription) { $subscriptionrepo = $this->app->make('Lavalite\Plan\Interfaces\SubscriptionRepositoryInterface'); return $subscriptionrepo->findorNew($subscription); }); } } /** * Define the routes for the package. * * @return void */ public function map() { $this->mapWebRoutes(); $this->mapApiRoutes(); } /** * Define the "web" routes for the package. * * These routes all receive session state, CSRF protection, etc. * * @return void */ protected function mapWebRoutes() { if (request()->segment(1) == 'api' || request()->segment(2) == 'api') { return; } Route::group([ 'middleware' => 'web', 'namespace' => $this->namespace, 'prefix' => trans_setlocale(), ], function ($router) { require (__DIR__ . '/../../routes/web.php'); }); } /** * Define the "api" routes for the package. * * These routes are typically stateless. * * @return void */ protected function mapApiRoutes() { if(request()->segment(1) != 'api' && request()->segment(2) != 'api') { return; } Route::group([ 'middleware' => 'api', 'namespace' => $this->namespace, 'prefix' => trans_setlocale() . '/api', ], function ($router) { require (__DIR__ . '/../../routes/api.php'); }); } }