backendtoken v.1.1 на joomla 1.5

Тема в разделе "Модернизация расширений", создана пользователем kostyaa, 30.11.2012.

  1. Offline

    kostyaa Недавно здесь

    Регистрация:
    10.11.2012
    Сообщения:
    14
    Симпатии:
    0
    Пол:
    Мужской
    если кто незнаком в кратце о плагине он наменяет стандратный путь к панеле управления ваш_сайт/administrator на ваш_сайт/administrator/?token=ключ

    вот у меня вопрос реально както переделать плагин что бы не было слова "token" и чтоб работало, я пытался поменять все слова token на key все вродебы норм установилось но сразу появилась ошибка "JDispatcher::register: Event handler not recognized."

    и еще какбы хотелось почитать про созадние модулей плагинов на joomla но в нете нечего ненашел кроме как создать мудуль ""Hello world" может кто посоветует книжку какую или полезный сайт
    Код (PHP):
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <install version="1.5" type="plugin" group="system">
    3.     <name>SecurityAdmin</name>
    4.     <author>kostya</author>
    5.     <authorUrl></authorUrl>
    6.     <creationDate>2012</creationDate>
    7.     <copyright>(C)</copyright>
    8.     <license>GNU/GPL</license>
    9.     <authorEmail></authorEmail>
    10.     <version>1.1</version>
    11.     <description>Joomla SecurityAdmin</description>
    12.     <files>
    13.         <filename plugin="securityadmin">securityadmin.php</filename>
    14.     </files>
    15.     <params>
    16.         <param type="text" name="token" size="45" label="token" description="define your access token" />
    17.         <param type="text" name="url" size="45" label="url" description="redirect url, if access token do not match. default url is the frontend" />
    18.     </params>
    19. </install>


    Код (PHP):
    1. <?php
    2.  
    3. // no direct access
    4. defined('_JEXEC') or die('Restricted access');
    5.  
    6. jimport( 'joomla.plugin.plugin' );
    7.  
    8. class plgSecurityadmin extends  JPlugin
    9. {
    10.  
    11.     function plgSecurityadmin( &$subject, $config = array() )
    12.     {
    13.         parent :: __construct($subject, $config);
    14.        
    15.         $plugin =& JPluginHelper::getPlugin( 'system', 'Securityadmin');
    16.         $this->params = new JParameter( $plugin->params ); 
    17.     }
    18.  
    19.     function onAfterInitialise()
    20.     {
    21.         global $mainframe;
    22.        
    23.         if( !$mainframe->isAdmin() )
    24.         {
    25.             return; // Dont run in site
    26.         }
    27.        
    28.         //already logged in
    29.         $user =& JFactory::getUser();
    30.  
    31.         if( !$user->guest )
    32.         {
    33.             return;
    34.         }
    35.                
    36.         $token   = $this->params->get('token', 1);
    37.  
    38.         if( JRequest::getMethod() == 'GET' )
    39.         {      
    40.             $request = JRequest::getVar( 'token', 'no token set', 'GET' );
    41.         }
    42.        
    43.         if( JRequest::getMethod() == 'POST' )
    44.         {      
    45.             $ref =  $_SERVER['HTTP_REFERER'];
    46.             $u =& JURI::getInstance( $ref );
    47.             $request = $u->getVar( 'token', 'no token set' );          
    48.         }      
    49.                
    50.         //invalid access token
    51.         if( $token != $request )
    52.         {
    53.             $url = $this->params->get('url' );
    54.            
    55.             //fallback to site
    56.             if( 0 == strlen( $url ) )
    57.             {
    58.                 $url = JURI::root();       
    59.             }
    60.            
    61.             $mainframe->redirect( $url );
    62.             die;           
    63.         }
    64.     }
    65. }
    66.  
    67. $mainframe->registerEvent( 'onAfterInitialise', 'Securityadmin' );
    68. ?>
     
    Последнее редактирование: 30.11.2012
  2.  

Поделиться этой страницей

Загрузка...