если кто незнаком в кратце о плагине он наменяет стандратный путь к панеле управления ваш_сайт/administrator на ваш_сайт/administrator/?token=ключ вот у меня вопрос реально както переделать плагин что бы не было слова "token" и чтоб работало, я пытался поменять все слова token на key все вродебы норм установилось но сразу появилась ошибка "JDispatcher::register: Event handler not recognized." и еще какбы хотелось почитать про созадние модулей плагинов на joomla но в нете нечего ненашел кроме как создать мудуль ""Hello world" может кто посоветует книжку какую или полезный сайт Код (PHP): <?xml version="1.0" encoding="utf-8"?> <install version="1.5" type="plugin" group="system"> <name>SecurityAdmin</name> <author>kostya</author> <authorUrl></authorUrl> <creationDate>2012</creationDate> <copyright>(C)</copyright> <license>GNU/GPL</license> <authorEmail></authorEmail> <version>1.1</version> <description>Joomla SecurityAdmin</description> <files> <filename plugin="securityadmin">securityadmin.php</filename> </files> <params> <param type="text" name="token" size="45" label="token" description="define your access token" /> <param type="text" name="url" size="45" label="url" description="redirect url, if access token do not match. default url is the frontend" /> </params> </install> Код (PHP): <?php // no direct access defined('_JEXEC') or die('Restricted access'); jimport( 'joomla.plugin.plugin' ); class plgSecurityadmin extends JPlugin { function plgSecurityadmin( &$subject, $config = array() ) { parent :: __construct($subject, $config); $plugin =& JPluginHelper::getPlugin( 'system', 'Securityadmin'); $this->params = new JParameter( $plugin->params ); } function onAfterInitialise() { global $mainframe; if( !$mainframe->isAdmin() ) { return; // Dont run in site } //already logged in $user =& JFactory::getUser(); if( !$user->guest ) { return; } $token = $this->params->get('token', 1); if( JRequest::getMethod() == 'GET' ) { $request = JRequest::getVar( 'token', 'no token set', 'GET' ); } if( JRequest::getMethod() == 'POST' ) { $ref = $_SERVER['HTTP_REFERER']; $u =& JURI::getInstance( $ref ); $request = $u->getVar( 'token', 'no token set' ); } //invalid access token if( $token != $request ) { $url = $this->params->get('url' ); //fallback to site if( 0 == strlen( $url ) ) { $url = JURI::root(); } $mainframe->redirect( $url ); die; } } } $mainframe->registerEvent( 'onAfterInitialise', 'Securityadmin' ); ?>