<?php

/*use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use \App\Laravue\Faker;
use \App\Laravue\JsonResponse;*/

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/

Route::post( 'auth/login', 'AuthController@login');

Route::get(  'area',                                [ 'as' => 'area.front.index',                 'uses' => 'AreaController@index' ]);
Route::get(  'area/top',                            [ 'as' => 'area.front.top',                   'uses' => 'AreaController@top' ])->middleware('etag');
Route::get(  'area/search',                         [ 'as' => 'area.front.search',                'uses' => 'AreaController@search' ])->middleware('etag');
Route::get(  'area/child',                          [ 'as' => 'area.front.child',                 'uses' => 'AreaController@childList' ])->middleware('etag');
Route::get(  'area/selection',                      [ 'as' => 'area.front.selection',             'uses' => 'AreaController@selectionList' ])->middleware('etag');
Route::get(  'area/root',                           [ 'as' => 'area.front.root',                  'uses' => 'AreaController@rootArea' ])->middleware('etag');
Route::get(  'area/slug/{slug}',                    [ 'as' => 'area.front.slug',                  'uses' => 'AreaController@getBySlug' ]);
Route::get(  'area/statistic',                      [ 'as' => 'area.front.statistic',             'uses' => 'AreaController@statistic' ])->middleware('etag');

Route::get(  'fortunemethod',                       [ 'as' => 'fortunemethod.front.index',        'uses' => 'FortuneMethodController@index' ]);
Route::get(  'fortunemethod/all',                   [ 'as' => 'fortunemethod.front.all',          'uses' => 'FortuneMethodController@all' ]);
Route::get(  'fortunemethod/selection',             [ 'as' => 'fortunemethod.front.selection',    'uses' => 'FortuneMethodController@selection' ])->middleware('etag');
Route::get(  'fortunemethod/top',                   [ 'as' => 'fortunemethod.front.top',          'uses' => 'FortuneMethodController@top' ])->middleware('etag');
Route::get(  'fortunemethod/most',                  [ 'as' => 'fortunemethod.front.most',         'uses' => 'FortuneMethodController@topMost' ])->middleware('etag');
Route::get(  'fortunemethod/slug/{slug}',           [ 'as' => 'fortunemethod.front.slug',         'uses' => 'FortuneMethodController@getBySlug' ]);

Route::get(  'fortuneteller',                       [ 'as' => 'fortuneteller.front.index',        'uses' => 'FortunetellerController@index' ]);
Route::get(  'fortuneteller/address',               [ 'as' => 'fortuneteller.front.address',      'uses' => 'FortunetellerController@address' ]);
Route::get(  'fortuneteller/filterName',            [ 'as' => 'fortuneteller.front.filterName',   'uses' => 'FortunetellerController@filterName' ]);
Route::get(  'fortuneteller/filterName/{id}',       [ 'as' => 'fortuneteller.front.filterNameId', 'uses' => 'FortunetellerController@filterNameById' ]);
Route::get(  'fortuneteller/code/{code}',           [ 'as' => 'fortuneteller.front.show',         'uses' => 'FortunetellerController@show' ]);
Route::get(  'fortuneteller/relate/{code}',         [ 'as' => 'fortuneteller.front.relate',       'uses' => 'FortunetellerController@showRelate' ]);
Route::get(  'fortuneteller/top',                   [ 'as' => 'fortuneteller.front.top',          'uses' => 'FortunetellerController@top' ]);
Route::get(  'fortuneteller/latest',                [ 'as' => 'fortuneteller.front.latest',       'uses' => 'FortunetellerController@latest' ])->middleware('etag');
Route::get(  'fortuneteller/popular',               [ 'as' => 'fortuneteller.front.popular',      'uses' => 'FortunetellerController@latestPopular' ]);
Route::get(  'fortuneteller/searching',             [ 'as' => 'fortuneteller.front.searching',    'uses' => 'FortunetellerController@searching' ]);

Route::get(  'menu',                                [ 'as' => 'menu.front.index',                 'uses' => 'MenuController@index' ]);
Route::get(  'menu/header',                         [ 'as' => 'menu.front.header',                'uses' => 'MenuController@header' ])->middleware('etag');
Route::get(  'menu/footer',                         [ 'as' => 'menu.front.footer',                'uses' => 'MenuController@footer' ])->middleware('etag');

Route::get(  'category',                            [ 'as' => 'category.front.index',             'uses' => 'CategoryController@index' ]);
Route::get(  'category/top',                        [ 'as' => 'category.front.top',               'uses' => 'CategoryController@topCategory' ]);
Route::get(  'category/slug/{slug}',                [ 'as' => 'category.front.slug',              'uses' => 'CategoryController@slugCategory' ]);

Route::get(  'consultation',                        [ 'as' => 'consultation.front.index',         'uses' => 'ConsultationController@index' ])->middleware('etag');
Route::get(  'consultation/{id}',                   [ 'as' => 'consultation.front.show',          'uses' => 'ConsultationController@show' ])->middleware('etag');

Route::get(  'keyword',                             [ 'as' => 'keyword.front.index',              'uses' => 'KeywordController@index' ]);
Route::get(  'keyword/top',                         [ 'as' => 'keyword.front.top',                'uses' => 'KeywordController@topKeyword' ])->middleware('etag');
Route::get(  'keyword/relate',                      [ 'as' => 'keyword.front.relate',             'uses' => 'KeywordController@relateKeyword' ]);
Route::get(  'keyword/note',                        [ 'as' => 'keyword.front.note',               'uses' => 'KeywordController@noteKeyword' ]);

Route::post( 'seo/uri',                             [ 'as' => 'seo.front.uri',                    'uses' => 'SeoController@index' ])->middleware('etag');

Route::post( 'header/uri',                          [ 'as' => 'header.front.uri',                 'uses' => 'HeaderController@index' ]);

Route::get(  'slider/top/page',                     [ 'as' => 'slider.front.topPage',             'uses' => 'SliderController@topPage' ]);
Route::get(  'slider/position/{position}',          [ 'as' => 'slider.front.position',            'uses' => 'SliderController@position' ]);
Route::get(  'slider/show/position/{position}',     [ 'as' => 'slider.front.show.position',       'uses' => 'SliderController@showPosition' ])->middleware('etag');

Route::get(  'shop',                                [ 'as' => 'shop.front.index',                 'uses' => 'ShopController@index' ]);
Route::get(  'shop/all/search',                     [ 'as' => 'shop.front.search',                'uses' => 'ShopController@search' ]);
Route::get(  'shop/teller/{id}',                    [ 'as' => 'shop.front.teller',                'uses' => 'ShopController@topTeller' ]);
Route::get(  'shop/area/{area}',                    [ 'as' => 'shop.front.area',                  'uses' => 'ShopController@getByArea' ]);
Route::get(  'shop/{id}',                           [ 'as' => 'shop.front.show',                  'uses' => 'ShopController@show' ]);

Route::get(  'article',                             [ 'as' => 'article.front.index',              'uses' => 'ArticleController@index' ]);
Route::get(  'article/top/hot',                     [ 'as' => 'article.front.hot',                'uses' => 'ArticleController@hot' ]);
Route::get(  'article/top/recent',                  [ 'as' => 'article.front.recent',             'uses' => 'ArticleController@recent' ]);
Route::get(  'article/top/ranking',                 [ 'as' => 'article.front.ranking',            'uses' => 'ArticleController@ranking' ]);
Route::get(  'article/ranking/list',                [ 'as' => 'article.front.list',               'uses' => 'ArticleController@rankingList' ]);
Route::get(  'article/feature/recent',              [ 'as' => 'article.front.feature',            'uses' => 'ArticleController@featureRecent' ]);
Route::get(  'article/teller/list',                 [ 'as' => 'article.front.teller',             'uses' => 'ArticleController@tellerList' ]);
Route::get(  'article/{slug}',                      [ 'as' => 'article.front.show',               'uses' => 'ArticleController@show' ]);

Route::get(  'feature',                             [ 'as' => 'feature.front.index',              'uses' => 'FeatureController@index' ])->middleware('etag');
Route::get(  'feature/hot',                         [ 'as' => 'feature.front.hot',                'uses' => 'FeatureController@hot' ])->middleware('etag');
Route::get(  'feature/{slug}',                      [ 'as' => 'feature.front.show',               'uses' => 'FeatureController@show' ])->middleware('etag');




Route::get(  'wpposts',                             [ 'as' => 'wpposts.front.index',              'uses' => 'WpPostController@index' ]);
Route::get(  'wpposts/all',                         [ 'as' => 'wpposts.front.all',                'uses' => 'WpPostController@all' ]);
Route::get(  'wpposts/fortuneteller/{code}',        [ 'as' => 'wpposts.front.fortuneteller',      'uses' => 'WpPostController@fortuneteller' ])->middleware('cors');

Route::post( 'contact',                             [ 'as' => 'contact.front.store',              'uses' => 'ContactController@store' ]);

Route::get(  'setting/all',                         [ 'as' => 'setting.front.all',                'uses' => 'SettingController@all' ])->middleware('etag');
Route::post( 'setting/upload/image',                [ 'as' => 'setting.front.upload',             'uses' => 'SettingController@uploadImage' ]);


//Indexer
Route::group(['prefix' => 'index'], function() {
    Route::get(  'shop',                            [ 'as' => 'shop.front.indexer.index',         'uses' => 'ShopIndexController@index' ]);
});


// Fake APIs
/*Route::get(  'table/list', 'FakeDataController@tableList');
Route::get(  'orders', 'FakeDataController@orders');
Route::get(  'articles', 'FakeDataController@articles');
Route::get(  'articles/{id}', 'FakeDataController@articlesDetail');
Route::get(  'articles/{id}/pageviews', 'FakeDataController@articlesPageviews');*/

/*Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});*/

Route::group(['middleware' => 'auth:api'], function () {
    Route::get(         'user',                     'AuthController@getUser');
    Route::get(         'auth/user',                'AuthController@user');
    Route::post(        'auth/logout',              'AuthController@logout');

    Route::get(         'users',                    'UserController@index')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_ONLY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::get(         'users/assigned/list',      'UserController@assigned')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_ONLY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::get(         'users/{user}',             'UserController@show')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_EDIT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::post(        'users',                    'UserController@store')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::put(         'users/{user}',             'UserController@update')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_EDIT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::delete(      'users/{user}',             'UserController@destroy')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_DELETE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::get(         'users/{user}/permissions', 'UserController@permissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_EDIT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);
    Route::put(         'users/{user}/permissions', 'UserController@updatePermissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_USER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_EDIT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_USER_SHOP_MANAGE);

    Route::apiResource( 'roles',                    'RoleController')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::get(         'roles/list/only',          'RoleController@roleList')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::get(         'roles/permission/all',     'RoleController@permissionsAll')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::get(         'roles/{role}/permissions', 'RoleController@permissions')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);
    Route::apiResource( 'permissions',              'PermissionController')->middleware('permission:' . \App\Laravue\Acl::PERMISSION_PERMISSION_MANAGE);

    Route::group(['prefix' => 'admin'], function() {
        Route::get(         'dashboard/statistic',          [ 'as' => 'dashboard.statistic',            'uses' => 'Admin\DashboardController@statistic' ]);

        Route::get(         'topics',                       [ 'as' => 'topics.index',                   'uses' => 'Admin\TopicController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_ONLY_MANAGE);
        Route::get(         'topics/deleted',               [ 'as' => 'topics.deleted',                 'uses' => 'Admin\TopicController@showDeleted' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::get(         'topics/{id}',                  [ 'as' => 'topics.show',                    'uses' => 'Admin\TopicController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::put(         'topics/{id}',                  [ 'as' => 'topics.update',                  'uses' => 'Admin\TopicController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::post(        'topics',                       [ 'as' => 'topics.publish.store',           'uses' => 'Admin\TopicController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_CREATE_MANAGE);
        Route::post(        'topics/restore/multiple',      [ 'as' => 'topics.restore.multiple',        'uses' => 'Admin\TopicController@multipleRestore' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::post(        'topics/restore/{id}',          [ 'as' => 'topics.restore',                 'uses' => 'Admin\TopicController@restore' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::post(        'topics/publish/multiple',      [ 'as' => 'topics.publish.multiple',        'uses' => 'Admin\TopicController@multiplePublish' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::post(        'topics/un-publish/multiple',   [ 'as' => 'topics.publish.unmultiple',      'uses' => 'Admin\TopicController@multipleUnPublish' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_EDIT_MANAGE);
        Route::delete(      'topics/{id}',                  [ 'as' => 'topics.destroy',                 'uses' => 'Admin\TopicController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_DELETE_MANAGE);
        Route::delete(      'topics/actual/multiple',       [ 'as' => 'topics.actual.multiple',         'uses' => 'Admin\TopicController@actualDestroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_DELETE_MANAGE);
        Route::delete(      'topics/actual/{id}',           [ 'as' => 'topics.actual.destroy',          'uses' => 'Admin\TopicController@actualDestroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_DELETE_MANAGE);
        Route::delete(      'topics/destroy/multiple',      [ 'as' => 'topics.destroy.multiple',        'uses' => 'Admin\TopicController@multipleDestroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_TOPIC_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_TOPIC_DELETE_MANAGE);

        Route::get(         'keyword',                     [ 'as' => 'keyword.index',                 'uses' => 'Admin\KeywordController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_ONLY_MANAGE);
        Route::get(         'keyword/all',                 [ 'as' => 'keyword.all',                   'uses' => 'Admin\KeywordController@all' ]);
        Route::get(         'keyword/tags',                [ 'as' => 'keyword.tags',                  'uses' => 'Admin\KeywordController@tags' ]);
        Route::get(         'keyword/{id}',                [ 'as' => 'keyword.show',                  'uses' => 'Admin\KeywordController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_EDIT_MANAGE);
        Route::post(        'keyword',                     [ 'as' => 'keyword.store',                 'uses' => 'Admin\KeywordController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_CREATE_MANAGE);
        Route::put(         'keyword/{id}',                [ 'as' => 'keyword.update',                'uses' => 'Admin\KeywordController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_EDIT_MANAGE);
        Route::delete(      'keyword/{id}',                [ 'as' => 'keyword.destroy',               'uses' => 'Admin\KeywordController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_DELETE_MANAGE);
        Route::delete(      'keyword/multiple/destroy',    [ 'as' => 'keyword.multiple.destroy',      'uses' => 'Admin\KeywordController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_DELETE_MANAGE);
        Route::post(        'keyword/multiple/activate',   [ 'as' => 'keyword.multiple.activate',     'uses' => 'Admin\KeywordController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_EDIT_MANAGE);
        Route::post(        'keyword/multiple/deactivate', [ 'as' => 'keyword.multiple.deactivate',   'uses' => 'Admin\KeywordController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_KEYWORD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_KEYWORD_EDIT_MANAGE);

        Route::get(         'filter',                     [ 'as' => 'filter.index',                 'uses' => 'Admin\FilterController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_ONLY_MANAGE);
        Route::get(         'filter/all',                 [ 'as' => 'filter.all',                   'uses' => 'Admin\FilterController@all' ]);
        Route::get(         'filter/{id}',                [ 'as' => 'filter.show',                  'uses' => 'Admin\FilterController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_EDIT_MANAGE);
        Route::post(        'filter',                     [ 'as' => 'filter.store',                 'uses' => 'Admin\FilterController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_CREATE_MANAGE);
        Route::put(         'filter/{id}',                [ 'as' => 'filter.update',                'uses' => 'Admin\FilterController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_EDIT_MANAGE);
        Route::delete(      'filter/{id}',                [ 'as' => 'filter.destroy',               'uses' => 'Admin\FilterController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_DELETE_MANAGE);
        Route::delete(      'filter/multiple/destroy',    [ 'as' => 'filter.multiple.destroy',      'uses' => 'Admin\FilterController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_DELETE_MANAGE);
        Route::post(        'filter/multiple/activate',   [ 'as' => 'filter.multiple.activate',     'uses' => 'Admin\FilterController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_EDIT_MANAGE);
        Route::post(        'filter/multiple/deactivate', [ 'as' => 'filter.multiple.deactivate',   'uses' => 'Admin\FilterController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FILTER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FILTER_EDIT_MANAGE);

        Route::get(         'menu',                     [ 'as' => 'menu.index',                 'uses' => 'Admin\MenuController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_ONLY_MANAGE);
        Route::get(         'menu/all',                 [ 'as' => 'menu.all',                   'uses' => 'Admin\MenuController@all' ]);
        Route::get(         'menu/all/nested',          [ 'as' => 'menu.all.nested',            'uses' => 'Admin\MenuController@allNested' ]);
        Route::get(         'menu/{id}',                [ 'as' => 'menu.show',                  'uses' => 'Admin\MenuController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_EDIT_MANAGE);
        Route::post(        'menu',                     [ 'as' => 'menu.store',                 'uses' => 'Admin\MenuController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_CREATE_MANAGE);
        Route::post(        'menu/position',            [ 'as' => 'menu.position',              'uses' => 'Admin\MenuController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_EDIT_MANAGE);
        Route::put(         'menu/{id}',                [ 'as' => 'menu.update',                'uses' => 'Admin\MenuController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_EDIT_MANAGE);
        Route::delete(      'menu/{id}',                [ 'as' => 'menu.destroy',               'uses' => 'Admin\MenuController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_DELETE_MANAGE);
        Route::delete(      'menu/multiple/destroy',    [ 'as' => 'menu.multiple.destroy',      'uses' => 'Admin\MenuController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_DELETE_MANAGE);
        Route::post(        'menu/multiple/activate',   [ 'as' => 'menu.multiple.activate',     'uses' => 'Admin\MenuController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_EDIT_MANAGE);
        Route::post(        'menu/multiple/deactivate', [ 'as' => 'menu.multiple.deactivate',   'uses' => 'Admin\MenuController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MENU_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MENU_EDIT_MANAGE);

		Route::get(         'slider',                     [ 'as' => 'slider.index',                 'uses' => 'Admin\SliderController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_ONLY_MANAGE);
        Route::get(         'slider/all',                 [ 'as' => 'slider.all',                   'uses' => 'Admin\SliderController@all' ]);
        Route::get(         'slider/{id}',                [ 'as' => 'slider.show',                  'uses' => 'Admin\SliderController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_EDIT_MANAGE);
        Route::post(        'slider',                     [ 'as' => 'slider.store',                 'uses' => 'Admin\SliderController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_CREATE_MANAGE);
        Route::put(         'slider/{id}',                [ 'as' => 'slider.update',                'uses' => 'Admin\SliderController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_EDIT_MANAGE);
        Route::delete(      'slider/{id}',                [ 'as' => 'slider.destroy',               'uses' => 'Admin\SliderController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_DELETE_MANAGE);
        Route::delete(      'slider/multiple/destroy',    [ 'as' => 'slider.multiple.destroy',      'uses' => 'Admin\SliderController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_DELETE_MANAGE);
        Route::post(        'slider/multiple/activate',   [ 'as' => 'slider.multiple.activate',     'uses' => 'Admin\SliderController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_EDIT_MANAGE);
        Route::post(        'slider/multiple/deactivate', [ 'as' => 'slider.multiple.deactivate',   'uses' => 'Admin\SliderController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_EDIT_MANAGE);
        Route::post(        'slider/upload/image',        [ 'as' => 'slider.upload.image',          'uses' => 'Admin\SliderController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SLIDER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SLIDER_CREATE_MANAGE);

		Route::get(         'article',                     [ 'as' => 'article.index',                 'uses' => 'Admin\ArticleController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_ONLY_MANAGE);
        Route::get(         'article/all',                 [ 'as' => 'article.all',                   'uses' => 'Admin\ArticleController@all' ]);
        Route::get(         'article/{id}',                [ 'as' => 'article.show',                  'uses' => 'Admin\ArticleController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_EDIT_MANAGE);
        Route::post(        'article',                     [ 'as' => 'article.store',                 'uses' => 'Admin\ArticleController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_CREATE_MANAGE);
        Route::put(         'article/{id}',                [ 'as' => 'article.update',                'uses' => 'Admin\ArticleController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_EDIT_MANAGE);
        Route::delete(      'article/{id}',                [ 'as' => 'article.destroy',               'uses' => 'Admin\ArticleController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_DELETE_MANAGE);
        Route::delete(      'article/multiple/destroy',    [ 'as' => 'article.multiple.destroy',      'uses' => 'Admin\ArticleController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_DELETE_MANAGE);
        Route::post(        'article/multiple/activate',   [ 'as' => 'article.multiple.activate',     'uses' => 'Admin\ArticleController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_EDIT_MANAGE);
        Route::post(        'article/multiple/deactivate', [ 'as' => 'article.multiple.deactivate',   'uses' => 'Admin\ArticleController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_EDIT_MANAGE);
        Route::post(        'article/upload/image',        [ 'as' => 'article.upload.image',          'uses' => 'Admin\ArticleController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_CREATE_MANAGE);
        Route::post(        'article/upload/images',       [ 'as' => 'article.upload.images',         'uses' => 'Admin\ArticleController@uploadImages' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_CREATE_MANAGE);

        Route::get(         'feature',                     [ 'as' => 'feature.list',                  'uses' => 'Admin\FeatureController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_ONLY_MANAGE);
        Route::get(         'feature/all',                 [ 'as' => 'feature.all',                   'uses' => 'Admin\FeatureController@all' ]);
        Route::get(         'feature/available',           [ 'as' => 'feature.available',             'uses' => 'Admin\FeatureController@available' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);
        Route::get(         'feature/{id}',                [ 'as' => 'feature.show',                  'uses' => 'Admin\FeatureController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);
        Route::post(        'feature',                     [ 'as' => 'feature.store',                 'uses' => 'Admin\FeatureController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_CREATE_MANAGE);
        Route::post(        'feature/position',            [ 'as' => 'feature.position',              'uses' => 'Admin\FeatureController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);
        Route::put(         'feature/{id}',                [ 'as' => 'feature.update',                'uses' => 'Admin\FeatureController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);
        Route::delete(      'feature/{id}',                [ 'as' => 'feature.destroy',               'uses' => 'Admin\FeatureController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_DELETE_MANAGE);
        Route::delete(      'feature/multiple/destroy',    [ 'as' => 'feature.multiple.destroy',      'uses' => 'Admin\FeatureController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_DELETE_MANAGE);
        Route::post(        'feature/multiple/activate',   [ 'as' => 'feature.multiple.activate',     'uses' => 'Admin\FeatureController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);
        Route::post(        'feature/multiple/deactivate', [ 'as' => 'feature.multiple.deactivate',   'uses' => 'Admin\FeatureController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FEATURE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FEATURE_EDIT_MANAGE);

        Route::get(         'category',                     [ 'as' => 'category.list',                  'uses' => 'Admin\CategoryController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_ONLY_MANAGE);
        Route::get(         'category/all',                 [ 'as' => 'category.all',                   'uses' => 'Admin\CategoryController@all' ]);
        Route::get(         'category/available',           [ 'as' => 'category.available',             'uses' => 'Admin\CategoryController@available' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);
        Route::get(         'category/{id}',                [ 'as' => 'category.show',                  'uses' => 'Admin\CategoryController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);
        Route::post(        'category',                     [ 'as' => 'category.store',                 'uses' => 'Admin\CategoryController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_CREATE_MANAGE);
        Route::post(        'category/position',            [ 'as' => 'category.position',              'uses' => 'Admin\CategoryController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);
        Route::put(         'category/{id}',                [ 'as' => 'category.update',                'uses' => 'Admin\CategoryController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);
        Route::delete(      'category/{id}',                [ 'as' => 'category.destroy',               'uses' => 'Admin\CategoryController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_DELETE_MANAGE);
        Route::delete(      'category/multiple/destroy',    [ 'as' => 'category.multiple.destroy',      'uses' => 'Admin\CategoryController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_DELETE_MANAGE);
        Route::post(        'category/multiple/activate',   [ 'as' => 'category.multiple.activate',     'uses' => 'Admin\CategoryController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);
        Route::post(        'category/multiple/deactivate', [ 'as' => 'category.multiple.deactivate',   'uses' => 'Admin\CategoryController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CATEGORY_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CATEGORY_EDIT_MANAGE);

        Route::get(         'fortuneteller',                     [ 'as' => 'fortuneteller.index',                 'uses' => 'Admin\FortunetellerController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_ONLY_MANAGE);
        Route::get(         'fortuneteller/all',                 [ 'as' => 'fortuneteller.all',                   'uses' => 'Admin\FortunetellerController@all' ]);
        Route::get(         'fortuneteller/store',               [ 'as' => 'fortuneteller.by.store',              'uses' => 'Admin\FortunetellerController@getByStore' ]);
        Route::get(         'fortuneteller/{id}',                [ 'as' => 'fortuneteller.show',                  'uses' => 'Admin\FortunetellerController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);
        Route::post(        'fortuneteller',                     [ 'as' => 'fortuneteller.store',                 'uses' => 'Admin\FortunetellerController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_CREATE_MANAGE);
        Route::put(         'fortuneteller/{id}',                [ 'as' => 'fortuneteller.update',                'uses' => 'Admin\FortunetellerController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);
        Route::delete(      'fortuneteller/{id}',                [ 'as' => 'fortuneteller.destroy',               'uses' => 'Admin\FortunetellerController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_DELETE_MANAGE);
        Route::delete(      'fortuneteller/multiple/destroy',    [ 'as' => 'fortuneteller.multiple.destroy',      'uses' => 'Admin\FortunetellerController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_DELETE_MANAGE);
        Route::post(        'fortuneteller/multiple/activate',   [ 'as' => 'fortuneteller.multiple.activate',     'uses' => 'Admin\FortunetellerController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);
        Route::post(        'fortuneteller/multiple/deactivate', [ 'as' => 'fortuneteller.multiple.deactivate',   'uses' => 'Admin\FortunetellerController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);
        Route::post(        'fortuneteller/upload/image',        [ 'as' => 'fortuneteller.upload.image',          'uses' => 'Admin\FortunetellerController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);
        Route::post(        'fortuneteller/setTop/{id}',         [ 'as' => 'fortuneteller.setTop',                'uses' => 'Admin\FortunetellerController@setTop' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_EDIT_MANAGE);

		Route::get(         'fortunemethod',                     [ 'as' => 'fortunemethod.index',                 'uses' => 'Admin\FortunemethodController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_ONLY_MANAGE);
        Route::get(         'fortunemethod/all',                 [ 'as' => 'fortunemethod.all',                   'uses' => 'Admin\FortunemethodController@all' ]);
        Route::get(         'fortunemethod/list/order',          [ 'as' => 'fortunemethod.list.order',            'uses' => 'Admin\FortunemethodController@listOrder' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_ONLY_MANAGE);
        Route::get(         'fortunemethod/{id}',                [ 'as' => 'fortunemethod.show',                  'uses' => 'Admin\FortunemethodController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::post(        'fortunemethod',                     [ 'as' => 'fortunemethod.store',                 'uses' => 'Admin\FortunemethodController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_CREATE_MANAGE);
        Route::put(         'fortunemethod/{id}',                [ 'as' => 'fortunemethod.update',                'uses' => 'Admin\FortunemethodController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::delete(      'fortunemethod/{id}',                [ 'as' => 'fortunemethod.destroy',               'uses' => 'Admin\FortunemethodController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_DELETE_MANAGE);
        Route::delete(      'fortunemethod/multiple/destroy',    [ 'as' => 'fortunemethod.multiple.destroy',      'uses' => 'Admin\FortunemethodController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_DELETE_MANAGE);
        Route::post(        'fortunemethod/multiple/activate',   [ 'as' => 'fortunemethod.multiple.activate',     'uses' => 'Admin\FortunemethodController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::post(        'fortunemethod/multiple/deactivate', [ 'as' => 'fortunemethod.multiple.deactivate',   'uses' => 'Admin\FortunemethodController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::post(        'fortunemethod/upload/image',        [ 'as' => 'fortunemethod.upload.image',          'uses' => 'Admin\FortunemethodController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::post(        'fortunemethod/position',            [ 'as' => 'fortunemethod.position',              'uses' => 'Admin\FortunemethodController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);
        Route::post(        'fortunemethod/setTop/{id}',         [ 'as' => 'fortunemethod.setTop',                'uses' => 'Admin\FortunemethodController@setTop' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNEMETHOD_EDIT_MANAGE);

		Route::get(         'consultation',                     [ 'as' => 'consultation.index',                 'uses' => 'Admin\ConsultationController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_ONLY_MANAGE);
        Route::get(         'consultation/all',                 [ 'as' => 'consultation.all',                   'uses' => 'Admin\ConsultationController@all' ]);
        Route::get(         'consultation/list/order',          [ 'as' => 'consultation.list.order',            'uses' => 'Admin\ConsultationController@listOrder' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_ONLY_MANAGE);
        Route::get(         'consultation/{id}',                [ 'as' => 'consultation.show',                  'uses' => 'Admin\ConsultationController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_EDIT_MANAGE);
        Route::post(        'consultation',                     [ 'as' => 'consultation.store',                 'uses' => 'Admin\ConsultationController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_CREATE_MANAGE);
        Route::put(         'consultation/{id}',                [ 'as' => 'consultation.update',                'uses' => 'Admin\ConsultationController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_EDIT_MANAGE);
        Route::delete(      'consultation/{id}',                [ 'as' => 'consultation.destroy',               'uses' => 'Admin\ConsultationController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_DELETE_MANAGE);
        Route::delete(      'consultation/multiple/destroy',    [ 'as' => 'consultation.multiple.destroy',      'uses' => 'Admin\ConsultationController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_DELETE_MANAGE);
        Route::post(        'consultation/multiple/activate',   [ 'as' => 'consultation.multiple.activate',     'uses' => 'Admin\ConsultationController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_EDIT_MANAGE);
        Route::post(        'consultation/multiple/deactivate', [ 'as' => 'consultation.multiple.deactivate',   'uses' => 'Admin\ConsultationController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONSULTATION_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONSULTATION_EDIT_MANAGE);

		Route::get(         'schedule',                     [ 'as' => 'schedule.index',                 'uses' => 'Admin\ScheduleController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_ONLY_MANAGE);
        Route::get(         'schedule/all',                 [ 'as' => 'schedule.all',                   'uses' => 'Admin\ScheduleController@all' ]);
        Route::get(         'schedule/next',                [ 'as' => 'schedule.next',                  'uses' => 'Admin\ScheduleController@nextSchedule' ]);
        Route::get(         'schedule/{id}',                [ 'as' => 'schedule.show',                  'uses' => 'Admin\ScheduleController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_EDIT_MANAGE);
        Route::post(        'schedule',                     [ 'as' => 'schedule.store',                 'uses' => 'Admin\ScheduleController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_CREATE_MANAGE);
        Route::post(        'schedule/quick/add',           [ 'as' => 'schedule.quick.add',             'uses' => 'Admin\ScheduleController@quickAdd' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_CREATE_MANAGE);
        Route::put(         'schedule/{id}',                [ 'as' => 'schedule.update',                'uses' => 'Admin\ScheduleController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_EDIT_MANAGE);
        Route::delete(      'schedule/{id}',                [ 'as' => 'schedule.destroy',               'uses' => 'Admin\ScheduleController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_DELETE_MANAGE);
        Route::delete(      'schedule/multiple/destroy',    [ 'as' => 'schedule.multiple.destroy',      'uses' => 'Admin\ScheduleController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_DELETE_MANAGE);
        Route::post(        'schedule/multiple/activate',   [ 'as' => 'schedule.multiple.activate',     'uses' => 'Admin\ScheduleController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_EDIT_MANAGE);
        Route::post(        'schedule/multiple/deactivate', [ 'as' => 'schedule.multiple.deactivate',   'uses' => 'Admin\ScheduleController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SCHEDULE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SCHEDULE_EDIT_MANAGE);

		Route::get(         'contact',                     [ 'as' => 'contact.index',                 'uses' => 'Admin\ContactController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_ONLY_MANAGE);
        Route::get(         'contact/all',                 [ 'as' => 'contact.all',                   'uses' => 'Admin\ContactController@all' ]);
        Route::get(         'contact/{id}',                [ 'as' => 'contact.show',                  'uses' => 'Admin\ContactController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_EDIT_MANAGE);
        Route::get(         'contact/read/{id}',           [ 'as' => 'contact.read',                  'uses' => 'Admin\ContactController@read' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_EDIT_MANAGE);
        Route::post(        'contact',                     [ 'as' => 'contact.store',                 'uses' => 'Admin\ContactController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_CREATE_MANAGE);
        Route::put(         'contact/{id}',                [ 'as' => 'contact.update',                'uses' => 'Admin\ContactController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_EDIT_MANAGE);
        Route::delete(      'contact/{id}',                [ 'as' => 'contact.destroy',               'uses' => 'Admin\ContactController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_DELETE_MANAGE);
        Route::delete(      'contact/multiple/destroy',    [ 'as' => 'contact.multiple.destroy',      'uses' => 'Admin\ContactController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_DELETE_MANAGE);
        Route::post(        'contact/multiple/activate',   [ 'as' => 'contact.multiple.activate',     'uses' => 'Admin\ContactController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_EDIT_MANAGE);
        Route::post(        'contact/multiple/deactivate', [ 'as' => 'contact.multiple.deactivate',   'uses' => 'Admin\ContactController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_CONTACT_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_CONTACT_EDIT_MANAGE);

		Route::get(         'shop',                     [ 'as' => 'shop.index',                 'uses' => 'Admin\ShopController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_ONLY_MANAGE);
        Route::get(         'shop/list',                [ 'as' => 'shop.list',                  'uses' => 'Admin\ShopController@list' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_ONLY_MANAGE);
        Route::get(         'shop/all',                 [ 'as' => 'shop.all',                   'uses' => 'Admin\ShopController@all' ]);
        Route::get(         'shop/select/list',         [ 'as' => 'shop.list.select',           'uses' => 'Admin\ShopController@listSelect' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_ONLY_MANAGE);
        Route::get(         'shop/{id}',                [ 'as' => 'shop.show',                  'uses' => 'Admin\ShopController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::get(         'shop/{id}/detail',         [ 'as' => 'shop.info.detail',           'uses' => 'Admin\ShopController@infoDetail' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::get(         'shop/csv/info/{file}',     [ 'as' => 'shop.csv.info',              'uses' => 'Admin\ShopController@csvInfo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::get(         'shop/csv/key/{file}',      [ 'as' => 'shop.csv.key',               'uses' => 'Admin\ShopController@csvCheckKey' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop',                     [ 'as' => 'shop.store',                 'uses' => 'Admin\ShopController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_CREATE_MANAGE);
        Route::put(         'shop/{id}',                [ 'as' => 'shop.update',                'uses' => 'Admin\ShopController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::delete(      'shop/{id}',                [ 'as' => 'shop.destroy',               'uses' => 'Admin\ShopController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_DELETE_MANAGE);
        Route::delete(      'shop/multiple/destroy',    [ 'as' => 'shop.multiple.destroy',      'uses' => 'Admin\ShopController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_DELETE_MANAGE);
        Route::post(        'shop/multiple/activate',   [ 'as' => 'shop.multiple.activate',     'uses' => 'Admin\ShopController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/multiple/deactivate', [ 'as' => 'shop.multiple.deactivate',   'uses' => 'Admin\ShopController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/multiple/area',       [ 'as' => 'shop.multiple.area',         'uses' => 'Admin\ShopController@changeAreaMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/upload/csv',          [ 'as' => 'shop.upload.csv',            'uses' => 'Admin\ShopController@uploadCSV' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/upload/image',        [ 'as' => 'shop.upload.image',          'uses' => 'Admin\ShopController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/position',            [ 'as' => 'shop.position',              'uses' => 'Admin\ShopController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_EDIT_MANAGE);
        Route::post(        'shop/csv/config',          [ 'as' => 'shop.csv.config',            'uses' => 'Admin\ShopController@csvConfig' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_IMPORT_MANAGE);
        Route::post(        'shop/csv/import/{id}',     [ 'as' => 'shop.csv.import',            'uses' => 'Admin\ShopController@csvImport' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_IMPORT_MANAGE);
        Route::post(        'shop/csv/error/{id}',      [ 'as' => 'shop.csv.error',             'uses' => 'Admin\ShopController@csvImportError' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_IMPORT_MANAGE);

        //Indexer
        /*Route::get(         'index/shop',                        [ 'as' => 'shop.indexer.index',                    'uses' => 'Admin\ShopIndexController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_ONLY_MANAGE);*/
        Route::get(         'index/shop/selection',              [ 'as' => 'shop.indexer.selection',                'uses' => 'Admin\ShopIndexController@selection' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SHOP_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SHOP_ONLY_MANAGE);
        Route::get(         'index/fortuneteller/selection',     [ 'as' => 'fortuneteller.indexer.selection',       'uses' => 'Admin\FortunetellerIndexController@selection' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_FORTUNETELLER_ONLY_MANAGE);


		Route::get(         'area',                     [ 'as' => 'area.index',                 'uses' => 'Admin\AreaController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_ONLY_MANAGE);
		Route::get(         'area/list',                [ 'as' => 'area.list',                  'uses' => 'Admin\AreaController@list' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_ONLY_MANAGE);
        Route::get(         'area/all',                 [ 'as' => 'area.all',                   'uses' => 'Admin\AreaController@all' ]);
        Route::get(         'area/all/nested',          [ 'as' => 'area.all.nested',            'uses' => 'Admin\AreaController@allNested' ]);
        Route::get(         'area/all/listNested',      [ 'as' => 'area.all.listNested',        'uses' => 'Admin\AreaController@listNested' ]);
        Route::get(         'area/{id}',                [ 'as' => 'area.show',                  'uses' => 'Admin\AreaController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::post(        'area',                     [ 'as' => 'area.store',                 'uses' => 'Admin\AreaController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_CREATE_MANAGE);
        Route::put(         'area/{id}',                [ 'as' => 'area.update',                'uses' => 'Admin\AreaController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::delete(      'area/{id}',                [ 'as' => 'area.destroy',               'uses' => 'Admin\AreaController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_DELETE_MANAGE);
        Route::delete(      'area/multiple/destroy',    [ 'as' => 'area.multiple.destroy',      'uses' => 'Admin\AreaController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_DELETE_MANAGE);
        Route::post(        'area/multiple/activate',   [ 'as' => 'area.multiple.activate',     'uses' => 'Admin\AreaController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::post(        'area/multiple/deactivate', [ 'as' => 'area.multiple.deactivate',   'uses' => 'Admin\AreaController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::post(        'area/upload/image',        [ 'as' => 'area.upload.image',          'uses' => 'Admin\AreaController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::post(        'area/position',            [ 'as' => 'area.position',              'uses' => 'Admin\AreaController@position' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);
        Route::post(        'area/setTop/{id}',         [ 'as' => 'area.setTop',                'uses' => 'Admin\AreaController@setTop' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_AREA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_AREA_EDIT_MANAGE);

		Route::get(         'seo',                     [ 'as' => 'seo.index',                 'uses' => 'Admin\SeoController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_ONLY_MANAGE);
        Route::get(         'seo/all',                 [ 'as' => 'seo.all',                   'uses' => 'Admin\SeoController@all' ]);
        Route::get(         'seo/format',              [ 'as' => 'seo.format',                'uses' => 'Admin\SeoController@seoFormat' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_EDIT_MANAGE);
        Route::get(         'seo/check',               [ 'as' => 'seo.check',                 'uses' => 'Admin\SeoController@seoCheck' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_EDIT_MANAGE);
        Route::get(         'seo/{id}',                [ 'as' => 'seo.show',                  'uses' => 'Admin\SeoController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_EDIT_MANAGE);
        Route::post(        'seo',                     [ 'as' => 'seo.store',                 'uses' => 'Admin\SeoController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/area',                [ 'as' => 'seo.area',                  'uses' => 'Admin\SeoController@areaSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/method',              [ 'as' => 'seo.method',                'uses' => 'Admin\SeoController@methodSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/consultation',        [ 'as' => 'seo.consultation',          'uses' => 'Admin\SeoController@consultationSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/name',                [ 'as' => 'seo.name',                  'uses' => 'Admin\SeoController@nameSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/note/article',        [ 'as' => 'seo.article',               'uses' => 'Admin\SeoController@noteArticleSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/note/feature',        [ 'as' => 'seo.feature',               'uses' => 'Admin\SeoController@noteFeatureSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::post(        'seo/fortune',             [ 'as' => 'seo.fortune',               'uses' => 'Admin\SeoController@fortuneSeo' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_CREATE_MANAGE);
        Route::put(         'seo/{id}',                [ 'as' => 'seo.update',                'uses' => 'Admin\SeoController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_EDIT_MANAGE);
        Route::delete(      'seo/{id}',                [ 'as' => 'seo.destroy',               'uses' => 'Admin\SeoController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_DELETE_MANAGE);
        Route::delete(      'seo/multiple/destroy',    [ 'as' => 'seo.multiple.destroy',      'uses' => 'Admin\SeoController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SEO_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SEO_DELETE_MANAGE);

		Route::get(         'header',                     [ 'as' => 'header.index',                 'uses' => 'Admin\HeaderController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_ONLY_MANAGE);
        Route::get(         'header/all',                 [ 'as' => 'header.all',                   'uses' => 'Admin\HeaderController@all' ]);
        Route::get(         'header/{id}',                [ 'as' => 'header.show',                  'uses' => 'Admin\HeaderController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);
        Route::post(        'header',                     [ 'as' => 'header.store',                 'uses' => 'Admin\HeaderController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_CREATE_MANAGE);
        Route::put(         'header/{id}',                [ 'as' => 'header.update',                'uses' => 'Admin\HeaderController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);
        Route::delete(      'header/{id}',                [ 'as' => 'header.destroy',               'uses' => 'Admin\HeaderController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_DELETE_MANAGE);
        Route::delete(      'header/multiple/destroy',    [ 'as' => 'header.multiple.destroy',      'uses' => 'Admin\HeaderController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_DELETE_MANAGE);
        Route::post(        'header/multiple/activate',   [ 'as' => 'header.multiple.activate',     'uses' => 'Admin\HeaderController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);
        Route::post(        'header/multiple/deactivate', [ 'as' => 'header.multiple.deactivate',   'uses' => 'Admin\HeaderController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);
        Route::post(        'header/upload/image',        [ 'as' => 'header.upload.image',          'uses' => 'Admin\HeaderController@uploadImage' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);
        Route::post(        'header/check/exist',         [ 'as' => 'header.upload.check',          'uses' => 'Admin\HeaderController@checkExist' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_HEADER_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_HEADER_EDIT_MANAGE);

        Route::get(         'media',                     [ 'as' => 'media.index',                 'uses' => 'Admin\MediaController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_ONLY_MANAGE);
        Route::get(         'media/{id}',                [ 'as' => 'media.show',                  'uses' => 'Admin\MediaController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_EDIT_MANAGE);
        Route::post(        'media',                     [ 'as' => 'media.store',                 'uses' => 'Admin\MediaController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_CREATE_MANAGE);
        Route::put(         'media/{id}',                [ 'as' => 'media.update',                'uses' => 'Admin\MediaController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_EDIT_MANAGE);
        Route::delete(      'media/{id}',                [ 'as' => 'media.destroy',               'uses' => 'Admin\MediaController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_DELETE_MANAGE);
        Route::delete(      'media/multiple/destroy',    [ 'as' => 'media.multiple.destroy',      'uses' => 'Admin\MediaController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_DELETE_MANAGE);
        Route::post(        'media/upload/file',         [ 'as' => 'media.upload.file',           'uses' => 'Admin\MediaController@uploadFile' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_MEDIA_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_MEDIA_EDIT_MANAGE);

        Route::get(         'link',                     [ 'as' => 'link.index',                 'uses' => 'Admin\LinkController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_ONLY_MANAGE);
        Route::get(         'link/all',                 [ 'as' => 'link.all',                   'uses' => 'Admin\LinkController@all' ]);
        Route::get(         'link/{id}',                [ 'as' => 'link.show',                  'uses' => 'Admin\LinkController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_EDIT_MANAGE);
        Route::get(         'link/replace/init',        [ 'as' => 'link.replace.init',          'uses' => 'Admin\LinkController@replaceInit' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link/replace/init',        [ 'as' => 'link.replace.init.select',   'uses' => 'Admin\LinkController@replaceInitSelected' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link/replace/content',     [ 'as' => 'link.replace.content',       'uses' => 'Admin\LinkController@replaceContent' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_ARTICLE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_CREATE_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_ARTICLE_EDIT_MANAGE);
        Route::get(         'link/history/all',         [ 'as' => 'link.history.all',           'uses' => 'Admin\LinkController@history' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link/replace/item/{id}',   [ 'as' => 'link.replace.item',          'uses' => 'Admin\LinkController@replaceItem' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link/upload/csv',          [ 'as' => 'link.csv.upload',            'uses' => 'Admin\LinkController@csvUpload' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link/import/csv',          [ 'as' => 'link.csv.import',            'uses' => 'Admin\LinkController@csvImport' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE);
        Route::post(        'link',                     [ 'as' => 'link.store',                 'uses' => 'Admin\LinkController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_CREATE_MANAGE);
        Route::put(         'link/{id}',                [ 'as' => 'link.update',                'uses' => 'Admin\LinkController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_EDIT_MANAGE);
        Route::delete(      'link/{id}',                [ 'as' => 'link.destroy',               'uses' => 'Admin\LinkController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_DELETE_MANAGE);
        Route::delete(      'link/multiple/destroy',    [ 'as' => 'link.multiple.destroy',      'uses' => 'Admin\LinkController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_DELETE_MANAGE);
        Route::post(        'link/multiple/activate',   [ 'as' => 'link.multiple.activate',     'uses' => 'Admin\LinkController@activateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_EDIT_MANAGE);
        Route::post(        'link/multiple/deactivate', [ 'as' => 'link.multiple.deactivate',   'uses' => 'Admin\LinkController@deactivateMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_LINK_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_LINK_EDIT_MANAGE);

		/*{importModuleApi}*/

        Route::get(         'notify/all',               [ 'as' => 'notify.all',                    'uses' => 'Admin\NotifyController@all' ]);
        Route::post(        'notify',                   [ 'as' => 'notify.update',                 'uses' => 'Admin\NotifyController@update' ]);
        Route::put(         'notify/{id}',              [ 'as' => 'notify.mark',                   'uses' => 'Admin\NotifyController@mark' ]);

        Route::post(        'gutenberg',                [ 'as' => 'gutenberg.convert',             'uses' => 'Admin\GutenbergController@rawContent' ]);

        Route::get(         'setting',                  [ 'as' => 'setting.index',                 'uses' => 'Admin\SettingController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_ONLY_MANAGE);
        Route::get(         'setting/all',              [ 'as' => 'setting.all',                   'uses' => 'Admin\SettingController@all' ]);
        Route::post(        'setting/multiple/update',  [ 'as' => 'setting.multiple.update',       'uses' => 'Admin\SettingController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_EDIT_MANAGE);

        Route::get(         'language',                     [ 'as' => 'language.index',                 'uses' => 'Admin\LanguageController@index' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_ONLY_MANAGE);
        Route::get(         'language/{id}',                [ 'as' => 'language.show',                  'uses' => 'Admin\LanguageController@show' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_EDIT_MANAGE);
        Route::post(        'language',                     [ 'as' => 'language.store',                 'uses' => 'Admin\LanguageController@store' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_CREATE_MANAGE);
        Route::put(         'language/{id}',                [ 'as' => 'language.update',                'uses' => 'Admin\LanguageController@update' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_EDIT_MANAGE);
        Route::delete(      'language/{id}',                [ 'as' => 'language.destroy',               'uses' => 'Admin\LanguageController@destroy' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_DELETE_MANAGE);
        Route::delete(      'language/multiple/destroy',    [ 'as' => 'language.multiple.destroy',      'uses' => 'Admin\LanguageController@destroyMultiple' ])->middleware('permission:' . \App\Laravue\Acl::PERMISSION_SETTING_MANAGE . '|' . \App\Laravue\Acl::PERMISSION_SETTING_DELETE_MANAGE);
    });
});
