• Модуль: support
  • Путь к файлу: ~/bitrix/modules/support/classes/general/dictionary.php
  • Класс: CAllTicketDictionary
  • Вызов: CAllTicketDictionary::GetDropDownArray
static function GetDropDownArray($siteID = false, $SLA_ID = false, $arUnsetType = Array("F"))
{
	//M, C, K, S, SR, D, F
	global $DB;
	$err_mess = (CAllTicketDictionary::err_mess())."
Function: GetDropDownArray
Line: "; if ($siteID == false || $siteID == "all") $siteID = ""; $arFilter = Array("SITE" => $siteID); $arReturn = Array(); $rs = CTicketDictionary::GetList("s_dropdown", '', $arFilter); while ($ar = $rs->Fetch()) { if (in_array($ar["C_TYPE"], $arUnsetType)) continue; $arReturn[$ar["C_TYPE"]][$ar["ID"]] = $ar; } $oldFunctionality = COption::GetOptionString( "support", "SUPPORT_OLD_FUNCTIONALITY", "Y" ); if( intval($SLA_ID) > 0 && $oldFunctionality == "Y" ) { $SLA_ID = intval($SLA_ID); $strSql = "SELECT 'M' as C_TYPE, SLA_ID, MARK_ID as DIC_ID FROM b_ticket_sla_2_mark WHERE SLA_ID = ".$SLA_ID." UNION ALL SELECT 'K' as C_TYPE, SLA_ID, CRITICALITY_ID as DIC_ID FROM b_ticket_sla_2_criticality WHERE SLA_ID = ".$SLA_ID." UNION ALL SELECT 'C' as C_TYPE, SLA_ID, CATEGORY_ID as DIC_ID FROM b_ticket_sla_2_category WHERE SLA_ID = ".$SLA_ID; $r = $DB->Query($strSql, false, $err_mess.__LINE__); $arUnset = Array(); while ($ar = $r->Fetch()) { if ($ar["DIC_ID"] == 0) continue; else $arUnset[$ar["C_TYPE"]][] = $ar["DIC_ID"]; } if (!empty($arUnset) && !empty($arReturn)) { foreach ($arReturn as $type => $arID) { if (!array_key_exists($type, $arUnset)) continue; $arID = array_keys($arID); $arID = array_diff($arID, $arUnset[$type]); foreach ($arID as $val) unset($arReturn[$type][$val]); } } } return $arReturn; }