<?php
/**********************************************************************************
* DClassifieds *
* Open-Source Project Inspired by Dinko Georgiev (hide@address.com) *
* =============================================================================== *
* Software Version: 0.1b *
* Software by: Dinko Georgiev *
* Support, News, Updates at: http://www.dclassifieds.eu *
***********************************************************************************
* This program is free software; you may redistribute it and/or modify it under *
* the terms of the provided license. *
* *
* This program is distributed in the hope that it is and will be useful, but *
* WITHOUT ANY WARRANTIES; without even any implied warranty of MERCHANTABILITY *
* or FITNESS FOR A PARTICULAR PURPOSE. *
* *
* See the "license.txt" file for details of the license. *
* The latest version can always be found at http://www.gnu.org/licenses/gpl.txt *
**********************************************************************************/
class AdminModule extends CWebModule
{
public function init()
{
$this->setImport(array(
'admin.models.*',
'admin.components.*',
'application.models.*',
'application.components.*',
));
Yii::app()->setComponents(array(
'errorHandler'=>array(
'class'=>'CErrorHandler',
'errorAction'=>'admin/default/error',
),
'user'=>array(
'class'=>'CWebUser',
'stateKeyPrefix'=>'admin',
'loginUrl'=>Yii::app()->createUrl('admin/default/login')
),
), false);
}
public function beforeControllerAction($controller, $action)
{
if(parent::beforeControllerAction($controller, $action))
{
$controller->layout = 'index_admin_layout';
$route=$controller->id.'/'.$action->id;
$publicPages=array(
'default/login',
'default/error',
);
if(Yii::app()->user->isGuest && !in_array($route,$publicPages))
Yii::app()->user->loginRequired();
else
return true;
} else {
return false;
}
}
}