<?php

// uncomment the following to define a path alias
// Yii::setPathOfAlias('local','path/to/local-folder');

// This is the main Web application configuration. Any writable
// CWebApplication properties can be configured here.
return array(
    'timeZone' => 'Asia/Calcutta',
    'basePath' => dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
    'name' => '',
    // preloading 'log' component
    'preload' => array('log'),

    // autoloading model and component classes
    'import' => array(

        'application.components.*',

        'application.models.*',
        'application.models.mainsite_models.*',
        'application.models.mainsite_models.forms.*',
        'application.models.subsite_models.*',
        'application.models.subsite_models.forms.*',

        'application.widgets.*',
        'application.classes.*',
        'application.classes.components.*',
        'application.validators.*',
        'application.payments.*',
        'application.payments.paypal-merchant-sdk.lib.PayPalAPIInterfaceService.*',
        'application.payments.paypal-merchant-sdk.lib.services.PayPalAPIInterfaceService.*',
        'application.payments.paypal-sdk-core.lib.*',
        'application.classes.swiftMailer.SwiftMailer',

        'application.components.image.*',
        'application.components.third_party.*',
        'application.components.third_party.lessphp.*',
        'application.components.third_party.php-jwt.Authentication.*',
        'application.components.third_party.php-jwt.Exceptions.*',
        'application.cli.CAdminApplication',
    ),
    'defaultController' => 'stat',

    // application components
    'components' => array(
        'url' => array(
            'class' => 'urlComponent',
        ),
        'context' => array(
            'class' => 'contextComponent',
        ),
        'site' => array(
            'class' => 'siteComponent',
        ),
        'color' => array(
            'class' => 'colorComponent',
        ),
        'lang' => array(
            'class' => 'languageComponent',
        ),
        'cms' => array(
            'class' => 'cmsComponent',
        ),
        'ecommerce' => array(
            'class' => 'ecommerceComponent',
        ),
        'authorization' => array(
            'class' => 'authorizationComponent',
        ),

        'authManager' => array(
            'class' => 'CDbAuthManager',
        ),
        'imgManager' => array(
                        'class' => 'application.components.image.CImageComponent',
                        ),
        'user' => array(
            'class' => 'BWebUser',
            'allowAutoLogin' => true,
            'loginUrl' => array('user/login'),
        ),
		'session' => require(dirname(__FILE__).'/../../session_config.php'),	
        'mailer' => require(dirname(__FILE__).'/../../mail_config.php'),

        'db' => require(dirname(__FILE__).'/../../db_config.php'),
        'dba' => require(dirname(__FILE__).'/../../dba_config.php'),
        'config' => require(dirname(__FILE__).'/../../mainsite_config.php'),
        'errorHandler' => array(
            'errorAction' => 'builder/error',
        ),
        'request' => array(
            'enableCsrfValidation' => true,
            'enableCookieValidation' => true,
        ),
        'urlManager' => array(
            //'class'=>'UrlManager',
            'showScriptName' => true,
            'urlFormat' => 'path',
            'rules' => array(
                'blog' => 'blog/index',
                'blog/id/<id:\w+>' => 'blog/view',
                '<page:\w+>' => 'site/view/',
                //'<page:\w+>/<action:\w+>' => 'site/view/',
                '<page:\w+>/<params:\*>' => 'site/view/',

            ),
        ),
        'log' => array(
            'class' => 'CLogRouter',
            'routes' => array(
                array(
                    'class' => 'CDbLogRoute',
                    'levels' => 'error, warning',
                ),
                // uncomment the following to show log messages on web pages
                /*
                array(
                    'class'=>'CWebLogRoute',
                ),
                */
            ),
        ),
    ),

    // application-level parameters that can be accessed
    // using Yii::app()->params['paramName']
    'params' => require(dirname(__FILE__).'/../../mainsite_config.php'),
);
