...Человеческий поиск в разработке...
- Модуль: catalog
- Путь к файлу: ~/bitrix/modules/catalog/lib/url/shopbuilder.php
- Класс: BitrixCatalogUrlShopBuilder
- Вызов: ShopBuilder::getContextMenuItems
public function getContextMenuItems(string $pageType, array $items = [], array $options = []): ?array { if ($pageType !== self::PAGE_ELEMENT_LIST && $pageType !== self::PAGE_SECTION_LIST) { return null; } if (!Loader::includeModule('crm')) { return null; } $result = []; if (AccessController::getCurrent()->check(ActionDictionary::ACTION_CATALOG_SETTINGS_ACCESS)) { if (!CCrmSaleHelper::isWithOrdersMode()) { Extension::load(['crm.config.catalog']); $result[] = [ 'TEXT' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_INVENTORY_MANAGEMENT_SETTINGS'), 'TITLE' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_INVENTORY_MANAGEMENT_SETTINGS'), 'ONCLICK' => 'BX.Crm.Config.Catalog.Slider.open('shop')', ]; } if ( CatalogConfigFeature::isInventoryManagementEnabled() && !CatalogComponentUseStore::isUsed() ) { Extension::load(['catalog.store-use']); $sliderPath = CComponentEngine::makeComponentPath('bitrix:catalog.warehouse.master.clear'); $sliderPath = getLocalPath('components' . $sliderPath . '/slider.php'); $result[] = [ 'TEXT' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_WAREHOUSE_Y'), 'TITLE' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_WAREHOUSE_Y'), 'ONCLICK' => "BX.Catalog.StoreUse.ProductGridMenu.openWarehousePanel('" . $sliderPath . "')" ]; unset($sliderPath); } } if (CatalogConfigFeature::isAccessControllerCheckingEnabled()) { Extension::load('sidepanel'); $result[] = [ 'TEXT' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_ACCESS_RIGHTS'), 'TITLE' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_ACCESS_RIGHTS'), 'ONCLICK' => "BX.SidePanel.Instance.open('" . CUtil::JSEscape('/shop/settings/permissions/') . "')" ]; } else { $helpLink = CatalogConfigFeature::getAccessControllerHelpLink(); if (!empty($helpLink)) { CatalogConfigFeature::initUiHelpScope(); $result[] = [ 'TEXT' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_ACCESS_RIGHTS'), 'TITLE' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_ACCESS_RIGHTS'), $helpLink['TYPE'] => $helpLink['LINK'], ]; } unset($helpLink); } $result[] = [ 'TEXT' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_SEO'), 'TITLE' => Loc::getMessage('CATALOG_SHOP_BUILDER_CONTEXT_MENU_ITEM_SEO'), 'ONCLICK' => "BX.SidePanel.Instance.open('" . CUtil::JSEscape($this->getCatalogSeoUrl()) . "', {cacheable: false, allowChangeHistory: false, width: 1000})" , ]; if (!empty($items)) { $result = array_merge($result, $items); } return (!empty($result) ? $result: null); }