当前位置: 首页>>代码示例>>PHP>>正文


PHP Hook::getLiveEditById方法代码示例

本文整理汇总了PHP中Hook::getLiveEditById方法的典型用法代码示例。如果您正苦于以下问题:PHP Hook::getLiveEditById方法的具体用法?PHP Hook::getLiveEditById怎么用?PHP Hook::getLiveEditById使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Hook的用法示例。


在下文中一共展示了Hook::getLiveEditById方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: registerHook

    /**
     * Connect module to a hook
     *
     * @param string $hook_name Hook name
     * @param array $shop_list List of shop linked to the hook (if null, link hook to all shops)
     * @return boolean result
     */
    public function registerHook($hook_name, $shop_list = null)
    {
        // Check hook name validation and if module is installed
        if (!Validate::isHookName($hook_name)) {
            throw new PrestaShopException('Invalid hook name');
        }
        if (!isset($this->id) || !is_numeric($this->id)) {
            return false;
        }
        // Retrocompatibility
        $hook_name_bak = $hook_name;
        if ($alias = Hook::getRetroHookName($hook_name)) {
            $hook_name = $alias;
        }
        Hook::exec('actionModuleRegisterHookBefore', array('object' => $this, 'hook_name' => $hook_name));
        // Get hook id
        $id_hook = Hook::getIdByName($hook_name);
        $live_edit = Hook::getLiveEditById((int) Hook::getIdByName($hook_name_bak));
        // If hook does not exist, we create it
        if (!$id_hook) {
            $new_hook = new Hook();
            $new_hook->name = pSQL($hook_name);
            $new_hook->title = pSQL($hook_name);
            $new_hook->live_edit = pSQL($live_edit);
            $new_hook->add();
            $id_hook = $new_hook->id;
            if (!$id_hook) {
                return false;
            }
        }
        // If shop lists is null, we fill it with all shops
        if (is_null($shop_list)) {
            $shop_list = Shop::getShops(true, null, true);
        }
        $return = true;
        foreach ($shop_list as $shop_id) {
            // Check if already register
            $sql = 'SELECT hm.`id_module`
				FROM `' . _DB_PREFIX_ . 'hook_module` hm, `' . _DB_PREFIX_ . 'hook` h
				WHERE hm.`id_module` = ' . (int) $this->id . ' AND h.`id_hook` = ' . $id_hook . '
				AND h.`id_hook` = hm.`id_hook` AND `id_shop` = ' . (int) $shop_id;
            if (Db::getInstance()->getRow($sql)) {
                continue;
            }
            // Get module position in hook
            $sql = 'SELECT MAX(`position`) AS position
				FROM `' . _DB_PREFIX_ . 'hook_module`
				WHERE `id_hook` = ' . (int) $id_hook . ' AND `id_shop` = ' . (int) $shop_id;
            if (!($position = Db::getInstance()->getValue($sql))) {
                $position = 0;
            }
            // Register module in hook
            $return &= Db::getInstance()->insert('hook_module', array('id_module' => (int) $this->id, 'id_hook' => (int) $id_hook, 'id_shop' => (int) $shop_id, 'position' => (int) ($position + 1)));
        }
        Hook::exec('actionModuleRegisterHookAfter', array('object' => $this, 'hook_name' => $hook_name));
        return $return;
    }
开发者ID:toufikadfab,项目名称:PrestaShop-1.5,代码行数:64,代码来源:Module.php

示例2: registerDesignerHook

 public static function registerDesignerHook($hook_name)
 {
     // Check hook name validation and if module is installed
     if (!Validate::isHookName($hook_name)) {
         throw new PrestaShopException('Invalid hook name');
     }
     // Retrocompatibility
     $hook_name_bak = $hook_name;
     if ($alias = Hook::getRetroHookName($hook_name)) {
         $hook_name = $alias;
     }
     // Get hook id
     $id_hook = Hook::getIdByName($hook_name);
     $live_edit = Hook::getLiveEditById((int) Hook::getIdByName($hook_name_bak));
     // If hook does not exist, we create it
     if (!$id_hook) {
         $new_hook = new Hook();
         $new_hook->name = pSQL($hook_name);
         $new_hook->title = pSQL($hook_name);
         $new_hook->live_edit = pSQL($live_edit);
         $new_hook->add();
         $id_hook = $new_hook->id;
         if (!$id_hook) {
             return false;
         }
     }
     return $id_hook;
 }
开发者ID:tmdhosting,项目名称:TMDHosting-PrestaShop-Technology-Theme,代码行数:28,代码来源:Hook.php


注:本文中的Hook::getLiveEditById方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。