Unverified Commit d2af7359 authored by Nicolas Widart's avatar Nicolas Widart Committed by GitHub

Merge pull request #544 from huydang284/2.0

fix route:cache and config:cache issue
parents 6a34661b d56e2291
...@@ -169,4 +169,11 @@ return [ ...@@ -169,4 +169,11 @@ return [
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
*/ */
'enable-theme-overrides' => false, 'enable-theme-overrides' => false,
/*
|--------------------------------------------------------------------------
| Check if asgard was installed
|--------------------------------------------------------------------------
*/
'is_installed' => env('INSTALLED', false)
]; ];
...@@ -69,7 +69,7 @@ class CoreServiceProvider extends ServiceProvider ...@@ -69,7 +69,7 @@ class CoreServiceProvider extends ServiceProvider
public function register() public function register()
{ {
$this->app->singleton('asgard.isInstalled', function () { $this->app->singleton('asgard.isInstalled', function () {
return true === env('INSTALLED', false); return true === config('asgard.core.core.is_installed');
}); });
$this->app->singleton('asgard.onBackend', function () { $this->app->singleton('asgard.onBackend', function () {
return $this->onBackend(); return $this->onBackend();
......
...@@ -52,15 +52,31 @@ abstract class RoutingServiceProvider extends ServiceProvider ...@@ -52,15 +52,31 @@ abstract class RoutingServiceProvider extends ServiceProvider
$this->loadApiRoutes($router); $this->loadApiRoutes($router);
}); });
$prefixes = $this->getPrefixes();
foreach ($prefixes as $prefix) {
$router->group([ $router->group([
'namespace' => $this->namespace, 'namespace' => $this->namespace,
'prefix' => LaravelLocalization::setLocale(), 'prefix' => $prefix,
'middleware' => ['localizationRedirect', 'web'], 'middleware' => ['localizationRedirect', 'web'],
], function (Router $router) { ], function (Router $router) {
$this->loadBackendRoutes($router); $this->loadBackendRoutes($router);
$this->loadFrontendRoutes($router); $this->loadFrontendRoutes($router);
}); });
} }
}
/**
* Get locale prefixes
* @return array
*/
private function getPrefixes()
{
if (app('asgard.isInstalled')) {
return array_merge(json_decode(setting('core::locales')), ['']);
}
return [LaravelLocalization::setLocale()];
}
/** /**
* @param Router $router * @param Router $router
......
...@@ -3,10 +3,6 @@ ...@@ -3,10 +3,6 @@
use Illuminate\Routing\Router; use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->bind('media', function ($id) {
return app(\Modules\Media\Repositories\FileRepository::class)->find($id);
});
$router->group(['prefix' => '/media'], function (Router $router) { $router->group(['prefix' => '/media'], function (Router $router) {
$router->get('media', [ $router->get('media', [
'as' => 'admin.media.media.index', 'as' => 'admin.media.media.index',
......
...@@ -58,6 +58,10 @@ class MediaServiceProvider extends ServiceProvider ...@@ -58,6 +58,10 @@ class MediaServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('media', RegisterMediaSidebar::class) $this->getSidebarClassForModule('media', RegisterMediaSidebar::class)
); );
app('router')->bind('media', function ($id) {
return app(FileRepository::class)->find($id);
});
} }
public function boot(DispatcherContract $events) public function boot(DispatcherContract $events)
......
...@@ -3,13 +3,6 @@ ...@@ -3,13 +3,6 @@
use Illuminate\Routing\Router; use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->bind('menu', function ($id) {
return app(\Modules\Menu\Repositories\MenuRepository::class)->find($id);
});
$router->bind('menuitem', function ($id) {
return app(\Modules\Menu\Repositories\MenuItemRepository::class)->find($id);
});
$router->group(['prefix' => '/menu'], function (Router $router) { $router->group(['prefix' => '/menu'], function (Router $router) {
$router->get('menus', [ $router->get('menus', [
'as' => 'admin.menu.menu.index', 'as' => 'admin.menu.menu.index',
......
...@@ -47,6 +47,13 @@ class MenuServiceProvider extends ServiceProvider ...@@ -47,6 +47,13 @@ class MenuServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('menu', RegisterMenuSidebar::class) $this->getSidebarClassForModule('menu', RegisterMenuSidebar::class)
); );
app('router')->bind('menu', function ($id) {
return app(MenuRepository::class)->find($id);
});
app('router')->bind('menuitem', function ($id) {
return app(MenuItemRepository::class)->find($id);
});
} }
/** /**
......
...@@ -3,10 +3,6 @@ ...@@ -3,10 +3,6 @@
use Illuminate\Routing\Router; use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->bind('page', function ($id) {
return app(\Modules\Page\Repositories\PageRepository::class)->find($id);
});
$router->group(['prefix' => '/page'], function (Router $router) { $router->group(['prefix' => '/page'], function (Router $router) {
$router->get('pages', [ $router->get('pages', [
'as' => 'admin.page.page.index', 'as' => 'admin.page.page.index',
......
...@@ -3,15 +3,13 @@ ...@@ -3,15 +3,13 @@
use Illuminate\Routing\Router; use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
if (! App::runningInConsole()) { $router->get('/', [
$router->get('/', [
'uses' => 'PublicController@homepage', 'uses' => 'PublicController@homepage',
'as' => 'homepage', 'as' => 'homepage',
'middleware' => config('asgard.page.config.middleware'), 'middleware' => config('asgard.page.config.middleware'),
]); ]);
$router->any('{uri}', [ $router->any('{uri}', [
'uses' => 'PublicController@uri', 'uses' => 'PublicController@uri',
'as' => 'page', 'as' => 'page',
'middleware' => config('asgard.page.config.middleware'), 'middleware' => config('asgard.page.config.middleware'),
])->where('uri', '.*'); ])->where('uri', '.*');
}
...@@ -39,6 +39,10 @@ class PageServiceProvider extends ServiceProvider ...@@ -39,6 +39,10 @@ class PageServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('page', RegisterPageSidebar::class) $this->getSidebarClassForModule('page', RegisterPageSidebar::class)
); );
app('router')->bind('page', function ($id) {
return app(PageRepository::class)->find($id);
});
} }
public function boot() public function boot()
......
...@@ -4,9 +4,6 @@ use Illuminate\Routing\Router; ...@@ -4,9 +4,6 @@ use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->group(['prefix' => 'tag'], function (Router $router) { $router->group(['prefix' => 'tag'], function (Router $router) {
$router->bind('tag__tag', function ($id) {
return app(\Modules\Tag\Repositories\TagRepository::class)->find($id);
});
$router->get('tags', [ $router->get('tags', [
'as' => 'admin.tag.tag.index', 'as' => 'admin.tag.tag.index',
'uses' => 'TagController@index', 'uses' => 'TagController@index',
......
...@@ -41,6 +41,10 @@ class TagServiceProvider extends ServiceProvider ...@@ -41,6 +41,10 @@ class TagServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('tag', RegisterTagSidebar::class) $this->getSidebarClassForModule('tag', RegisterTagSidebar::class)
); );
app('router')->bind('tag__tag', function ($id) {
return app(TagRepository::class)->find($id);
});
} }
public function boot() public function boot()
......
...@@ -4,9 +4,6 @@ use Illuminate\Routing\Router; ...@@ -4,9 +4,6 @@ use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->group(['prefix' =>'/translation'], function (Router $router) { $router->group(['prefix' =>'/translation'], function (Router $router) {
$router->bind('translations', function ($id) {
return \Modules\Translation\Entities\TranslationTranslation::find($id);
});
$router->get('translations', [ $router->get('translations', [
'uses' => 'TranslationController@index', 'uses' => 'TranslationController@index',
'as' => 'admin.translation.translation.index', 'as' => 'admin.translation.translation.index',
......
...@@ -11,6 +11,7 @@ use Modules\Core\Traits\CanGetSidebarClassForModule; ...@@ -11,6 +11,7 @@ use Modules\Core\Traits\CanGetSidebarClassForModule;
use Modules\Core\Traits\CanPublishConfiguration; use Modules\Core\Traits\CanPublishConfiguration;
use Modules\Translation\Console\BuildTranslationsCacheCommand; use Modules\Translation\Console\BuildTranslationsCacheCommand;
use Modules\Translation\Entities\Translation; use Modules\Translation\Entities\Translation;
use Modules\Translation\Entities\TranslationTranslation;
use Modules\Translation\Events\Handlers\RegisterTranslationSidebar; use Modules\Translation\Events\Handlers\RegisterTranslationSidebar;
use Modules\Translation\Repositories\Cache\CacheTranslationDecorator; use Modules\Translation\Repositories\Cache\CacheTranslationDecorator;
use Modules\Translation\Repositories\Eloquent\EloquentTranslationRepository; use Modules\Translation\Repositories\Eloquent\EloquentTranslationRepository;
...@@ -45,6 +46,10 @@ class TranslationServiceProvider extends ServiceProvider ...@@ -45,6 +46,10 @@ class TranslationServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('translation', RegisterTranslationSidebar::class) $this->getSidebarClassForModule('translation', RegisterTranslationSidebar::class)
); );
app('router')->bind('translations', function ($id) {
return TranslationTranslation::find($id);
});
} }
public function boot() public function boot()
......
...@@ -81,9 +81,6 @@ $router->group(['prefix' => '/account'], function (Router $router) { ...@@ -81,9 +81,6 @@ $router->group(['prefix' => '/account'], function (Router $router) {
'as' => 'admin.account.profile.update', 'as' => 'admin.account.profile.update',
'uses' => 'Account\ProfileController@update', 'uses' => 'Account\ProfileController@update',
]); ]);
$router->bind('userTokenId', function ($id) {
return app(\Modules\User\Repositories\UserTokenRepository::class)->find($id);
});
$router->get('api-keys', [ $router->get('api-keys', [
'as' => 'admin.account.api.index', 'as' => 'admin.account.api.index',
'uses' => 'Account\ApiKeysController@index', 'uses' => 'Account\ApiKeysController@index',
......
...@@ -66,6 +66,10 @@ class UserServiceProvider extends ServiceProvider ...@@ -66,6 +66,10 @@ class UserServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('user', RegisterUserSidebar::class) $this->getSidebarClassForModule('user', RegisterUserSidebar::class)
); );
app('router')->bind('userTokenId', function ($id) {
return app(UserTokenRepository::class)->find($id);
});
} }
/** /**
......
...@@ -3,13 +3,6 @@ ...@@ -3,13 +3,6 @@
use Illuminate\Routing\Router; use Illuminate\Routing\Router;
/** @var Router $router */ /** @var Router $router */
$router->bind('module', function ($module) {
return app(\Nwidart\Modules\Repository::class)->find($module);
});
$router->bind('theme', function ($theme) {
return app(\Modules\Workshop\Manager\ThemeManager::class)->find($theme);
});
$router->group(['prefix' => '/workshop'], $router->group(['prefix' => '/workshop'],
function (Router $router) { function (Router $router) {
$router->get('modules', [ $router->get('modules', [
......
...@@ -20,6 +20,7 @@ use Modules\Workshop\Scaffold\Module\Generators\ValueObjectGenerator; ...@@ -20,6 +20,7 @@ use Modules\Workshop\Scaffold\Module\Generators\ValueObjectGenerator;
use Modules\Workshop\Scaffold\Module\ModuleScaffold; use Modules\Workshop\Scaffold\Module\ModuleScaffold;
use Modules\Workshop\Scaffold\Theme\ThemeGeneratorFactory; use Modules\Workshop\Scaffold\Theme\ThemeGeneratorFactory;
use Modules\Workshop\Scaffold\Theme\ThemeScaffold; use Modules\Workshop\Scaffold\Theme\ThemeScaffold;
use Nwidart\Modules\Repository;
class WorkshopServiceProvider extends ServiceProvider class WorkshopServiceProvider extends ServiceProvider
{ {
...@@ -45,6 +46,13 @@ class WorkshopServiceProvider extends ServiceProvider ...@@ -45,6 +46,13 @@ class WorkshopServiceProvider extends ServiceProvider
BuildingSidebar::class, BuildingSidebar::class,
$this->getSidebarClassForModule('workshop', RegisterWorkshopSidebar::class) $this->getSidebarClassForModule('workshop', RegisterWorkshopSidebar::class)
); );
app('router')->bind('module', function ($module) {
return app(Repository::class)->find($module);
});
app('router')->bind('theme', function ($theme) {
return app(ThemeManager::class)->find($theme);
});
} }
public function boot() public function boot()
......
...@@ -169,4 +169,11 @@ return [ ...@@ -169,4 +169,11 @@ return [
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
*/ */
'enable-theme-overrides' => false, 'enable-theme-overrides' => false,
/*
|--------------------------------------------------------------------------
| Check if asgard was installed
|--------------------------------------------------------------------------
*/
'is_installed' => env('INSTALLED', false)
]; ];
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment