main.php 6.26 KB
<?php
$params = array_merge(
    require(__DIR__ . '/../../common/config/params.php'),
    require(__DIR__ . '/../../common/config/params-local.php'),
    require(__DIR__ . '/params.php'),
    require(__DIR__ . '/params-local.php')
);

return [
    'id' => 'app-frontend',
    'basePath' => dirname(__DIR__),
    'bootstrap' => [

        'frontend\components\SeoComponent',
    ],
    'controllerNamespace' => 'frontend\controllers',
    'components' => [
        'authManager' => [
            'class' => 'yii\rbac\DbManager',
        ],
        'user' => [
            'identityClass'   => 'common\models\Customer',
            'enableAutoLogin' => true,
            'loginUrl'        => ['login'],
        ],
        'request'=>[
            'cookieValidationKey' => 'ndahjhjjidasuidrqeswuiuirqw89',
            'csrfParam' => '_frontendCSRF',
            'class' => 'common\components\Request',

            'web'=> '/frontend/web'

        ],

        'log' => [
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                [
                    'class' => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ],
            ],
        ],
        'errorHandler' => [
            'errorAction' => 'site/error',
        ],
        /*'imageCache' => [
            'class' => 'iutbay\yii2imagecache\ImageCache',
            'sourcePath' => '@app/web/images',
            'sourceUrl' => '@web/images',
            'thumbsPath' => '@app/web/thumbs',
            'thumbsUrl' => '@web/thumbs',
            'resizeMode' => 'inset',
            'sizes' => [
                'brandlist' => [128, 128],
                'product' => [300, 300],
                'product_trumb' => [80, 80],
                'product_trumb2' => [100, 100],
                'list' => [134, 200],
                'product_list2' => [130, 70],
                'product_variant' => [42, 42],
                'mainmenu' => [160, 170],
                'large' => [600, 600],
            ],
        ],*/
        'urlManager'   => [
            'enablePrettyUrl' => true,
            'showScriptName'  => false,
            'rules'           => [
                ''                                                                 => 'site/index',
                'login'                                                            => 'login/index',
                'iam'                                                              => 'iam/index',
                'text/<translit:\w+>'                                              => 'text/index',
                '<language:(ru|ua|en)>/text/<translit:\w+>'                        => 'text/index',
                [
                    'class' => '\common\modules\product\CatalogUrlManager',
                    'route_map' => [
                        'catalog' => 'catalog/category',
                        'product' => 'catalog/product',
                        'brands' => 'catalog/brands',
                    ]
                ],
                'priceparam.xml'    => 'site/priceparam',
                'price.xml'         => 'site/price',
                'smstest'           => 'site/sms',
//                'catalog'                                                          => 'catalog/all',
//                'catalog/<translit:\w+>'                                           => 'catalog/index',
//                'products/search'                                                  => 'products/search',
//                'products/compare'                                                 => 'products/compare',
//                'products/<translit:\w+>'                                          => 'products/index',
//                'products/<translit_rubric:\w+>/<translit:[\w\-]+>-<id:\d+>'       => 'products/show',
                'news/<translit:\w+>-<id:\d+>'                                     => 'news/show',
                //'brends/<translit:[\w\-]+>'                                        => 'brends/show',
                'brends'                                                           => 'brends/index',
                'blog'                                                             => 'articles/index',
                'blog/<translit:[\w\-]+>-<id:\d+>'                                 => 'articles/show',
                'event'                                                             => 'event/index',
                'event/<alias:[\w\-]+>-<id:\d+>'                                 => 'event/show',
                '<language:(ru|ua|en)>/<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
                '<language:(ru|ua|en)>/<controller:\w+>/<action:\w+>'              => '<controller>/<action>',
                '<language:(ru|ua|en)>/admin'                                      => 'admin/default/index',
                '<language:(ru|ua|en)>/admin/users'                                => 'admin/users/index',
                'admin'                                                            => 'admin/menu/index',
                'admin/users'                                                      => 'admin/users/index',
                'admin/users/save'                                                 => 'admin/users/save',
                'admin/users/delete'                                               => 'admin/users/delete',
                'admin/menu'        => 'admin/menu/index',
                'admin/menu/save'   => 'admin/menu/save',
                'admin/menu/delete' => 'admin/menu/delete',
                'admin/text'        => 'admin/text/index',
                'admin/text/save'   => 'admin/text/save',
                'admin/text/delete' => 'admin/text/delete',
                'admin/catalog'        => 'admin/catalog/index',
                'admin/catalog/save'   => 'admin/catalog/save',
                'admin/catalog/delete' => 'admin/catalog/delete',


                'thumbs/<path:.*>' => 'site/thumb',
            ],
            'class'           => 'common\components\urlManager\LangUrlManager',
            'languages'       => ['ru', 'ua', 'en'],
            'lang'            => 'ru',
            'langParam'       => 'language',
        ],

    ],
    'params' => $params,
];