- Модуль: advertising
- Путь к файлу: ~/bitrix/modules/advertising/classes/general/advertising.php
- Класс: CAdvBanner_all
- Вызов: CAdvBanner_all::GetEditIcons
static function GetEditIcons($arBanner, $TYPE_SID="", $arIcons = array())
{
global $USER, $APPLICATION;
static $arContractTypes = false;
static $arContracts = false;
if($USER->IsAuthorized() && $APPLICATION->GetShowIncludeAreas())
{
if(CAdvContract::IsManager() || CAdvContract::IsAdmin())
{
if (is_array($arIcons) && count($arIcons) > 0)
{
if (!empty($arBanner) && isset($arBanner["ID"]))
{
$curIcon = array(
"URL" => 'javascript:'.$APPLICATION->GetPopupLink(
array(
'URL' => "/bitrix/admin/adv_banner_edit.php?bxpublic=Y&from_module=advertising&lang=".LANGUAGE_ID."&ID=".$arBanner["ID"]. "&CONTRACT_ID=".$arBanner["CONTRACT_ID"],
'PARAMS' => array(
'width' => 700,
'height' => 400,
'resize' => false,
)
)
),
"TEXT" => $arBanner["NAME"]
);
if (!is_array($arIcons[0]['MENU']))
{
$arIcons[0]['MENU'] = array(
array(
"URL" => $arIcons[0]['URL'],
"TEXT" => $arIcons[0]['MESS']
)
);
unset($arIcons[0]['URL']);
unset($arIcons[0]['MESS']);
}
array_push($arIcons[0]['MENU'], $curIcon);
}
}
else
{
$arIcons = array();
if (!empty($arBanner) && isset($arBanner["ID"]))
{
$arIcons[] = array(
"URL" => 'javascript:'.$APPLICATION->GetPopupLink(
array(
'URL' => "/bitrix/admin/adv_banner_edit.php?bxpublic=Y&from_module=advertising&lang=".LANGUAGE_ID."&ID=".$arBanner["ID"]. "&CONTRACT_ID=".$arBanner["CONTRACT_ID"],
'PARAMS' => array(
'width' => 700,
'height' => 400,
'resize' => false,
)
)
),
"ICON" => "bx-context-toolbar-edit-icon",
"TITLE" => GetMessage("AD_PUBLIC_ICON_EDIT_BANNER"),
"MESS" => $arBanner["NAME"]
);
$TYPE_SID = $arBanner["TYPE_SID"];
}
if ($TYPE_SID <> '')
{
$arSubMenu = array();
if($arContracts === false)
{
$arContracts = array();
$arContractTypes = array();
$contracts = CAdvContract::GetList("s_sort", "desc", array("SITE" => SITE_ID));
while($arContract = $contracts->Fetch())
{
$arContracts[] = $arContract;
$arContractTypes[$arContract["ID"]] = CAdvContract::GetTypeArray($arContract["ID"]);
}
}
foreach($arContracts as $arContract)
{
if (array_key_exists("ALL", $arContractTypes[$arContract["ID"]]) || array_key_exists($TYPE_SID, $arContractTypes[$arContract["ID"]]))
{
$arSubMenu[] = array(
"URL" => 'javascript:'.$APPLICATION->GetPopupLink(
array(
'URL' => "/bitrix/admin/adv_banner_edit.php?bxpublic=Y&from_module=advertising&lang=".LANGUAGE_ID."&TYPE_SID=".$TYPE_SID."&CONTRACT_ID=".$arContract["ID"],
'PARAMS' => array(
'width' => 700,
'height' => 400,
'resize' => false,
)
)
),
"TEXT" => $arContract["NAME"]
);
}
}
$arIcon = array(
"ICON" => "bx-context-toolbar-create-icon",
"TITLE" => GetMessage("AD_PUBLIC_ICON_ADD_BANNER")
);
$nSubMenu = count($arSubMenu);
if($nSubMenu == 1)
{
$arIcon["URL"] = $arSubMenu[0]["URL"];
$arIcons[] = $arIcon;
}
elseif($nSubMenu > 1)
{
$arIcon["MENU"] = $arSubMenu;
$arIcons[] = $arIcon;
}
}
$arIcons[] = array(
"URL" => "/bitrix/admin/adv_banner_list.php?lang=".LANGUAGE_ID."&find_contract_id[]=".$arBanner["CONTRACT_ID"]. "&find_type_sid[]=".$arBanner["TYPE_SID"]."&set_filter=Y",
"SRC" => "/bitrix/themes/.default/icons/advertising/comp_view.gif",
"TITLE" => GetMessage("AD_PUBLIC_ICON_BANNER_LIST"),
"IN_PARAMS_MENU" => true
);
}
return $arIcons;
}
}
return false;
}