<?php defined('HOSTCMS') || exit('HostCMS: access denied.'); /** * Переключатель панели администрирования * * Версия для HostCMS v.6x * @author KAD * http://www.artemkuts.ru/ * artem.kuts@gmail.com */ class Kad_Admin_Switcher { private $_cAllowPanel; /** * The singleton instances. * @var mixed */ static public $instance = NULL; /** * Register an existing instance as a singleton. * @return object */ static public function instance() { if (is_null(self::$instance)) { self::$instance = new self(); } return self::$instance; } // Стиль блока в котором будет выведена кнопка public $style = 'position:absolute; padding: 5px; z-index: 999; background-color: white; border: 1px solid #777; border-bottom-right-radius:10px; font-size: 8pt;'; public $off = 'Выключить панель администрирования'; public $on = 'Включить панель администрирования'; public function __construct() { $this->_cAllowPanel = Core_Entity::factory('constant')->getByName('ALLOW_PANEL'); if ($this->_cAllowPanel->value != 'false') { $this->_cAllowPanel->value = 'false'; $this->_cAllowPanel->save(); } } public function execute() { if (isset($_SESSION['current_users_id']) && $_SESSION['current_users_id'] != 0) { $panelActive = !(Core_Array::getGet('control_panels', $this->_cAllowPanel->active)); $oldActive = $this->_cAllowPanel->active; ?> <div style="<?=$this->style?>"> <?php if ($panelActive) { ?> <a href="?control_panels=1"><?php print $this->off?></a> <?php $this->_cAllowPanel->active = false; } else { ?> <a href="?control_panels=0"><?php print $this->on?></a> <?php $this->_cAllowPanel->active = true; } ?> </div> <?php $this->_cAllowPanel->save(); if ($this->_cAllowPanel->active != $oldActive) { ?> <script> document.location.reload(); </script> <?php } } } }