예제 #1
0
 /**
  * onAfterRoute function.
  * 
  * @access public
  * @return void
  */
 public function onAfterRoute()
 {
     $this->option = JFactory::getApplication()->input->get('option');
     $this->extension = JFactory::getApplication()->input->get('extension');
     if (empty($this->option) && JFactory::getApplication()->isSite()) {
         $menuDefault = JFactory::getApplication()->getMenu()->getDefault();
         if ($menuDefault == 0) {
             return;
         }
         $componentID = $menuDefault->componentid;
         $component = JTable::getInstance('extension');
         $component->load($componentID);
         $this->option = $component->element;
     }
     JoomlaOverrideHelperComponent::preload($this->option, $this->params);
     JoomlaOverrideHelperComponent::includeInitialize($this->option, $this->extension);
 }
예제 #2
0
 /**
  * Initialize override of some core classes
  * 
  */
 public static function initialize()
 {
     $plugin_path = dirname(dirname(__FILE__));
     //exception for implement new features
     $exceptionDatas = array(array('option' => 'com_menus', 'application' => 'administrator', 'data' => array('models' => array(array('class' => 'MenusModelMenutypes', 'source' => '/models/menutypes.php', 'destiny' => '/model/menutypes.php')))), array('option' => 'com_modules', 'application' => 'administrator', 'data' => array('models' => array(array('class' => 'ModulesModelModule', 'source' => '/models/module.php', 'destiny' => '/model/module.php')))));
     if (JVERSION > 2.5) {
         $overrideClasses = array(array('source_file' => JPATH_LIBRARIES . '/legacy/module/helper.php', 'class_name' => 'JModuleHelper', 'jimport' => '', 'override_file' => $plugin_path . '/core/module/helper.php'), array('source_file' => JPATH_LIBRARIES . '/legacy/model/form.php', 'class_name' => 'JModelForm', 'jimport' => '', 'override_file' => $plugin_path . '/core/model/modelform.php'), array('source_file' => JPATH_LIBRARIES . '/legacy/controller/legacy.php', 'class_name' => 'JControllerLegacy', 'jimport' => '', 'override_file' => $plugin_path . '/core/controller/legacy.php'), array('source_file' => JPATH_LIBRARIES . '/legacy/view/legacy.php', 'class_name' => 'JViewLegacy', 'jimport' => '', 'override_file' => $plugin_path . '/core/view/legacy.php'));
     } else {
         $overrideClasses = array(array('source_file' => JPATH_LIBRARIES . '/joomla/application/module/helper.php', 'class_name' => 'JModuleHelper', 'jimport' => 'joomla.application.module.helper', 'override_file' => $plugin_path . '/core/module/helper.php'), array('source_file' => JPATH_LIBRARIES . '/joomla/application/component/modelform.php', 'class_name' => 'JModelForm', 'jimport' => 'joomla.application.component.modelform', 'override_file' => $plugin_path . '/core/model/modelform.php'), array('source_file' => JPATH_LIBRARIES . '/joomla/application/component/controller.php', 'class_name' => 'JController', 'jimport' => 'joomla.application.component.controller', 'override_file' => $plugin_path . '/core/controller/controller.php'), array('source_file' => JPATH_LIBRARIES . '/joomla/application/component/view.php', 'class_name' => 'JView', 'jimport' => 'joomla.application.component.view', 'override_file' => $plugin_path . '/core/view/view.php'));
     }
     foreach ($overrideClasses as $overrideClass) {
         self::overrideClass($overrideClass['source_file'], $overrideClass['class_name'], $overrideClass['jimport'], $overrideClass['override_file']);
     }
     foreach ($exceptionDatas as $exceptionData) {
         JoomlaOverrideHelperComponent::addExceptionOverride($exceptionData['option'], $exceptionData['application'], $exceptionData['data']);
     }
 }