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


PHP Event::getParameter方法代码示例

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


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

示例1: onFileRewrite

 /**
  * Defines if page file should be overridden
  * 
  * @param \Bitrix\Main\Event $event Event.
  * @return string|null
  */
 public static function onFileRewrite(\Bitrix\Main\Event $event)
 {
     $path = $event->getParameter('path');
     $result = null;
     if ($context = Helper::getContext()) {
         if ($context['section'] == 'B') {
             $result = Helper::getAlternative('page', $path);
         }
     }
     return $result;
 }
开发者ID:webgksupport,项目名称:alpina,代码行数:17,代码来源:eventhandler.php

示例2: onUserSetLastActivityDate

 public function onUserSetLastActivityDate(\Bitrix\Main\Event $event)
 {
     $users = $event->getParameter(0);
     foreach ($users as $userId) {
         $cache = \Bitrix\Main\Data\Cache::createInstance();
         if ($cache->startDataCache(60, $userId, '/im/status')) {
             $mapper = \Bitrix\Replica\Mapper::getInstance();
             $map = $mapper->getByPrimaryValue("b_im_status.USER_ID", false, $userId);
             if ($map) {
                 $guid = \Bitrix\Replica\Client\User::getLocalUserGuid($userId);
                 if ($guid && $map[$guid]) {
                     $event = array("operation" => "im_status_update", "guid" => $guid);
                     \Bitrix\Replica\Log\Client::getInstance()->write($map[$guid], $event);
                 }
             }
             $cache->endDataCache(true);
         }
     }
 }
开发者ID:Satariall,项目名称:izurit,代码行数:19,代码来源:statushandler.php

示例3: extendOrderData

 /**
  * Extend basket data.
  *
  * @param Main\Event $event			Event.
  * @return Main\EventResult
  */
 public static function extendOrderData(Main\Event $event)
 {
     $process = true;
     $resultData = array();
     $orderData = $event->getParameter('ORDER');
     $entityList = $event->getParameter('ENTITY');
     if (empty($orderData) || !is_array($orderData)) {
         $process = false;
     } else {
         if (!isset($orderData['BASKET_ITEMS']) || !is_array($orderData['BASKET_ITEMS'])) {
             $process = false;
         }
     }
     $entityData = false;
     $iblockData = false;
     if ($process && !empty($orderData['BASKET_ITEMS'])) {
         $entityData = self::prepareEntity($entityList);
         if (empty($entityData)) {
             $process = false;
         }
     }
     if ($process) {
         $productMap = array();
         $productList = array();
         $productData = array();
         $basket = array_filter($orderData['BASKET_ITEMS'], '\\Bitrix\\Catalog\\Discount\\DiscountManager::basketFilter');
         if (!empty($basket)) {
             foreach ($basket as $basketCode => $basketItem) {
                 $basketItem['PRODUCT_ID'] = (int) $basketItem['PRODUCT_ID'];
                 $productList[] = $basketItem['PRODUCT_ID'];
                 if (!isset($productMap[$basketItem['PRODUCT_ID']])) {
                     $productMap[$basketItem['PRODUCT_ID']] = array();
                 }
                 $productMap[$basketItem['PRODUCT_ID']][] =& $basket[$basketCode];
             }
             unset($basketItem, $basketCode);
             $productData = array_fill_keys($productList, array());
             $iblockData = self::getProductIblocks($productList);
             self::fillProductPropertyList($entityData, $iblockData);
         }
         if (!empty($iblockData['iblockElement'])) {
             self::getProductData($productData, $entityData, $iblockData);
         }
         if (!empty($iblockData['iblockElement'])) {
             foreach ($productData as $product => $data) {
                 if (empty($productMap[$product])) {
                     continue;
                 }
                 foreach ($productMap[$product] as &$basketItem) {
                     $basketItem['CATALOG'] = $data;
                 }
                 unset($basketItem);
             }
             unset($product, $data);
             $resultData['BASKET_ITEMS'] = $basket;
         }
         unset($basket, $productData, $productMap, $productList);
     }
     if ($process) {
         $result = new Main\EventResult(Main\EventResult::SUCCESS, $resultData, 'catalog');
     } else {
         $result = new Main\EventResult(Main\EventResult::ERROR, null, 'catalog');
     }
     unset($process, $resultData);
     return $result;
 }
开发者ID:DarneoStudio,项目名称:bitrix,代码行数:72,代码来源:discountmanager.php

示例4: onAfterUpdateShipment

 public static function onAfterUpdateShipment(\Bitrix\Main\Event $event)
 {
     $result = new EventResult();
     $data = $event->getParameter('fields');
     if (!isset($data["TRACKING_NUMBER"]) && !isset($data["DELIVERY_NAME"])) {
         return $result;
     }
     $primary = $event->getParameter('id');
     $dbRes = OrderTable::getList(array('select' => array('*', 'SITE_ID' => 'ORDER.LID', 'TRADING_PLATFORM_CODE' => 'TRADING_PLATFORM.CODE', 'TRADING_PLATFORM_CLASS' => 'TRADING_PLATFORM.CLASS', 'DELIVERY_NAME' => 'SHIPMENT.DELIVERY.NAME', 'DELIVERY_ID' => 'SHIPMENT.DELIVERY_ID', 'TRACKING_NUMBER' => 'SHIPMENT.TRACKING_NUMBER'), 'filter' => array('=SHIPMENT.ID' => $primary['ID']), 'runtime' => array('SHIPMENT' => array('data_type' => 'Bitrix\\Sale\\Internals\\ShipmentTable', 'reference' => array('=this.ORDER_ID' => 'ref.ORDER_ID')))));
     if ($platformOrder = $dbRes->fetch()) {
         if (class_exists($platformOrder['TRADING_PLATFORM_CLASS']) && is_subclass_of($platformOrder['TRADING_PLATFORM_CLASS'], '\\Bitrix\\Sale\\TradingPlatform\\Platform')) {
             if ($platform = call_user_func($platformOrder['TRADING_PLATFORM_CLASS'] . '::getInstance')) {
                 $result = $platform->onAfterUpdateShipment($event, array_merge($platformOrder, array('TRACKING_NUMBER' => isset($data["TRACKING_NUMBER"]) ? $data["TRACKING_NUMBER"] : $platformOrder["TRACKING_NUMBER"], 'DELIVERY_NAME' => isset($data["DELIVERY_NAME"]) ? $data["DELIVERY_NAME"] : $platformOrder["DELIVERY_NAME"], 'DELIVERY_ID' => isset($data["DELIVERY_ID"]) ? $data["DELIVERY_ID"] : $platformOrder["DELIVERY_ID"])));
             }
         }
     }
     return $result;
 }
开发者ID:andy-profi,项目名称:bxApiDocs,代码行数:18,代码来源:helper.php

示例5: onSaleBasketItemDeleted

 /**
  * @param \Bitrix\Main\Event $event
  *
  * @return \Bitrix\Main\EventResult
  */
 public function onSaleBasketItemDeleted(\Bitrix\Main\Event $event)
 {
     $originalValues = $event->getParameter('VALUES');
     if ($originalValues['FUSER_ID'] != \Bitrix\Sale\Fuser::getId(true)) {
         return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, null, 'sale');
     }
     $allBasket = \Bitrix\Sale\Basket::loadItemsForFUser($originalValues['FUSER_ID'], SITE_ID);
     if ($allBasket) {
         $_SESSION["SALE_BASKET_PRICE"][SITE_ID] = static::getActualBasketPrice($allBasket);
     }
     return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, null, 'sale');
 }
开发者ID:akniyev,项目名称:itprom_dobrohost,代码行数:17,代码来源:class.php

示例6: initTypes

 /**
  * Set types table.
  *
  * @param Main\Event $event				Manager data.
  * @return void
  */
 protected static function initTypes(Main\Event $event)
 {
     if (self::$existCouponsManager === null) {
         self::initUseMode();
     }
     if (!self::$existCouponsManager) {
         return;
     }
     self::$types = array(self::TYPE_ONE_ROW => Sale\Internals\DiscountCouponTable::TYPE_BASKET_ROW, self::TYPE_ONE_ORDER => Sale\Internals\DiscountCouponTable::TYPE_ONE_ORDER, self::TYPE_NO_LIMIT => Sale\Internals\DiscountCouponTable::TYPE_MULTI_ORDER);
     self::$typeUnknown = $event->getParameter('COUPON_UNKNOWN');
 }
开发者ID:mrdeadmouse,项目名称:u136006,代码行数:17,代码来源:discountcoupon.php

示例7: onSaleOrderPaid

 public static function onSaleOrderPaid(Main\Event $event)
 {
     $order = $event->getParameter('ENTITY');
     if (!$order->isPaid()) {
         return;
     }
     if ($order instanceof Sale\Order) {
         $price = $order->getPrice();
         $currency = $order->getCurrency();
         if (Loader::includeModule('conversion')) {
             $context = DayContext::getEntityItemInstance('sale_order', $order->getId());
             $addMethod = defined('ADMIN_SECTION') && ADMIN_SECTION === true ? 'addCounter' : 'addDayCounter';
             $context->{$addMethod}('sale_payment_add_day', 1);
             $context->addCounter('sale_payment_add', 1);
             if ($price && $currency) {
                 $context->addCurrencyCounter('sale_payment_sum_add', $price, $currency);
             }
         }
     }
 }
开发者ID:akniyev,项目名称:itprom_dobrohost,代码行数:20,代码来源:conversionhandlers.php

示例8: onAfterPostingSendRecipient

 /**
  * @param \Bitrix\Main\Event $event
  * @return void
  */
 public static function onAfterPostingSendRecipient(\Bitrix\Main\Event $event)
 {
     $data = $event->getParameter(0);
     if (!$data || !$data['SEND_RESULT'] || empty($data['POSTING']['MAILING_CHAIN_ID'])) {
         return;
     }
     $chainId = $data['POSTING']['MAILING_CHAIN_ID'];
     $dataRecipient = $data['RECIPIENT'];
     static $mailingParams = array();
     if (!isset($mailingParams[$chainId])) {
         $mailingParams[$chainId] = array();
         $childChainDb = MailingChainTable::getList(array('select' => array('ID', 'MAILING_ID', 'PARENT_ID', 'POSTING_ID'), 'filter' => array('=MAILING.ACTIVE' => 'Y', '=IS_TRIGGER' => 'Y', '=STATUS' => array(MailingChainTable::STATUS_WAIT, MailingChainTable::STATUS_SEND), '=PARENT_ID' => $chainId)));
         while ($childChain = $childChainDb->fetch()) {
             // add posting
             $postingAddDb = PostingTable::add(array('MAILING_ID' => $childChain['MAILING_ID'], 'MAILING_CHAIN_ID' => $childChain['ID']));
             if (!$postingAddDb->isSuccess()) {
                 continue;
             }
             $mailingParams[$chainId][] = array('POSTING_ID' => $postingAddDb->getId(), 'CHAIN' => $childChain);
         }
     }
     if (empty($mailingParams[$chainId])) {
         return;
     }
     foreach ($mailingParams[$chainId] as $mailingParamsItem) {
         $postingId = $mailingParamsItem['POSTING_ID'];
         $childChain = $mailingParamsItem['CHAIN'];
         // check email as unsubscribed
         if (Subscription::isUnsubscibed($childChain['MAILING_ID'], $data['RECIPIENT']['EMAIL'])) {
             continue;
         }
         $recipient = array('POSTING_ID' => $postingId);
         $recipient['STATUS'] = PostingRecipientTable::SEND_RESULT_NONE;
         $recipient['EMAIL'] = $dataRecipient['EMAIL'];
         if (!empty($dataRecipient['FIELDS'])) {
             $recipient['FIELDS'] = $dataRecipient['FIELDS'];
         }
         if (!empty($dataRecipient['ROOT_ID'])) {
             $recipient['ROOT_ID'] = $dataRecipient['ROOT_ID'];
         } else {
             $recipient['ROOT_ID'] = $dataRecipient['ID'];
         }
         if (!empty($dataRecipient['NAME'])) {
             $recipient['NAME'] = $dataRecipient['NAME'];
         }
         if (!empty($dataRecipient['USER_ID'])) {
             $recipient['USER_ID'] = $dataRecipient['USER_ID'];
         }
         // add recipient
         PostingTable::addRecipient($recipient, true);
         if (empty($mailingParams[$chainId]['CHAIN']['POSTING_ID'])) {
             $chainUpdateDb = MailingChainTable::update(array('ID' => $childChain['ID']), array('POSTING_ID' => $postingId));
             if ($chainUpdateDb->isSuccess()) {
                 $mailingParams[$chainId]['CHAIN']['POSTING_ID'] = $postingId;
             }
         }
     }
 }
开发者ID:Hawkart,项目名称:megatv,代码行数:62,代码来源:triggermanager.php

示例9: OnAfterRecentAdd

 /**
  * OnAfterRecentAdd event handler.
  * Sends "subscribe" message for b_im_message changes to peer database.
  *
  * @param \Bitrix\Main\Event $event Event object.
  *
  * @return void
  * @see \Bitrix\Im\Replica\StatusHandler::handleStatusRebindOperation
  */
 public function OnAfterRecentAdd(\Bitrix\Main\Event $event)
 {
     $userId = $event->getParameter('user_id');
     if (!$userId) {
         return;
     }
     $userGuid = \Bitrix\Replica\Client\User::getRemoteUserGuid($userId);
     if (!$userGuid) {
         return;
     }
     $mapper = \Bitrix\Replica\Mapper::getInstance();
     $map = $mapper->getByPrimaryValue("b_user.ID", false, $userId);
     if (!$map) {
         return;
     }
     $guid = key($map);
     $targetNode = current($map[$guid]);
     $domainId = getNameByDomain();
     $event = array("operation" => "im_status_rebind", "guid" => $userGuid . "@" . $targetNode, "nodes" => array($domainId), "ts" => time(), "ip" => \Bitrix\Main\Application::getInstance()->getContext()->getServer()->get('REMOTE_ADDR'));
     \Bitrix\Replica\Log\Client::getInstance()->write(array($targetNode), $event);
 }
开发者ID:DarneoStudio,项目名称:bitrix,代码行数:30,代码来源:statushandler.php


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