/**
  * 処理の介入箇所とコールバック関数を設定
  * registerはプラグインインスタンス生成時に実行されます
  * 
  * @param SC_Helper_Plugin $objHelperPlugin 
  */
 function register(SC_Helper_Plugin $objHelperPlugin)
 {
     $objHelperPlugin->addAction('prefilterTransform', array(&$this, 'prefilterTransform'), 1);
 }
 /**
  * プラグインヘルパーへ, コールバックメソッドを登録します.
  *
  * @param object $objPluginHelper
  * @param integer $priority
  */
 function register(SC_Helper_Plugin $objHelperPlugin, $priority)
 {
     if (isset($this->arrSelfInfo['plugin_hook_point'])) {
         $arrHookPoints = $this->arrSelfInfo['plugin_hook_point'];
         foreach ($arrHookPoints as $hook_point) {
             if (isset($hook_point['callback'])) {
                 $hook_point_name = $hook_point['hook_point'];
                 $callback_name = $hook_point['callback'];
                 $objHelperPlugin->addAction($hook_point_name, array($this, $callback_name), $priority);
             }
         }
     }
 }
 /**
  * Utility function to set a hook point.
  *
  * @param string    $hook_point  hook point
  * @param array     $arrArgs     argument passing to callback function
  * @param boolean   $plugin_activate_flg 
  * @return void
  */
 public static function hook($hook_point, $arrArgs = array(), $plugin_activate_flg = PLUGIN_ACTIVATE_FLAG)
 {
     $objPlugin = SC_Helper_Plugin::getSingletonInstance($plugin_activate_flg);
     $objPlugin->doAction($hook_point, $arrArgs);
 }
Exemple #4
0
 function register(SC_Helper_Plugin $objHelperPlugin)
 {
     $objHelperPlugin->addAction('LC_Page_Products_Detail_action_after', array($this, 'LC_ProductsDetail'));
     $objHelperPlugin->addAction('prefilterTransform', array(&$this, 'prefilterTransform'));
 }
 /**
  * Utility function to set a hook point.
  *
  * @param  string  $hook_point          hook point
  * @param  SC_SiteView[]   $arrArgs             argument passing to callback function
  * @param  boolean $plugin_activate_flg
  * @return void
  */
 public static function hook($hook_point, $arrArgs = array(), $plugin_activate_flg = PLUGIN_ACTIVATE_FLAG)
 {
     // エラー処理中は実行しない
     if (SC_Helper_HandleError_Ex::$under_error_handling) {
         return;
     }
     $objPlugin = SC_Helper_Plugin::getSingletonInstance($plugin_activate_flg);
     // 以前、エラー処理中に (オブジェクトではない) false に対し、doAction をコールする不具合があった。(#1971, #2551)
     // 現在、そういった状況は回避している認識だが、念のため同様の状況が発生した場合、ログを残し、実行しない。
     if (!is_object($objPlugin)) {
         // XXX 致命的エラーの処理中だと、この方法ではログが残らない模様。実質的に問題無いと考えている。
         trigger_error('プラグインの処理で意図しない状況が発生しました。', E_USER_WARNING);
         return;
     }
     $objPlugin->doAction($hook_point, $arrArgs);
 }
 /**
  * 処理の介入箇所とコールバック関数を設定
  * registerはプラグインインスタンス生成時に実行されます
  *
  * @param SC_Helper_Plugin $objHelperPlugin
  * @return void
  */
 function register(SC_Helper_Plugin $objHelperPlugin)
 {
     $objHelperPlugin->addAction("loadClassFileChange", array(&$this, "loadClassFileChange"), $this->arrSelfInfo['priority']);
 }