Я установил следующий код в моем файле app_controllers.php
, чтобы контролировать доступ к сайту, когда для сайта установлено значение OFFLINE (site_status = 0).
function beforeFilter(){
// Site Offline = 0 , Site Online = 1
if($this->Configuration->get_site_status() == 1){
// Allow access to the site to all users and perform all required
// beforeFilter code
}else{
...
// If site is OFFLINE but User is logged in allow access.
// Later I will need to change it to only allow admin access if logged in as I am still developing
// Everyone else will be denied access even if they are able to authenticate
if(!$this->Auth->user() == null){
$this->layout = 'default';
$this->Auth->allow('*');
}else{
$this->layout = 'offline';
$this->Auth->deny('*');
}
...
}
}
Все отлично работает, когда запрашиваемый адрес выглядитнапример:
http://www.mydomain.com/articles
Однако, когда у меня есть следующее, оно не работает должным образом
http://www.mydomain.com/admin/articles
Он запрещает доступ к сайту правильно, но не может использовать $this->layout = 'offline'
.По умолчанию используется макет default
.
Что мне нужно сделать, чтобы это исправить.
Спасибо!