function GetAdminFilterHTML($arProperty, $strHTMLControlName) { $from_name = $strHTMLControlName["VALUE"] . '_from'; $to_name = $strHTMLControlName["VALUE"] . '_to'; $lAdmin = new CAdminList($strHTMLControlName["TABLE_ID"]); $lAdmin->InitFilter(array($from_name, $to_name)); $from = isset($GLOBALS[$from_name]) ? $GLOBALS[$from_name] : ""; $to = isset($GLOBALS[$to_name]) ? $GLOBALS[$to_name] : ""; return CAdminCalendar::CalendarPeriod($from_name, $to_name, $from, $to); }
public static function GetAdminFilterHTML($arProperty, $strHTMLControlName) { $lAdmin = new CAdminList($strHTMLControlName["TABLE_ID"]); $lAdmin->InitFilter(array($strHTMLControlName["VALUE"])); $filterValue = $GLOBALS[$strHTMLControlName["VALUE"]]; if (isset($filterValue) && is_array($filterValue)) { $values = $filterValue; } else { $values = array(); } $settings = CIBlockPropertyElementList::PrepareSettings($arProperty); if ($settings["size"] > 1) { $size = ' size="' . $settings["size"] . '"'; } else { $size = ''; } if ($settings["width"] > 0) { $width = ' style="width:' . $settings["width"] . 'px"'; } else { $width = ''; } $bWasSelect = false; $options = CIBlockPropertyElementList::GetOptionsHtml($arProperty, $values, $bWasSelect); $html = '<select multiple name="' . $strHTMLControlName["VALUE"] . '[]"' . $size . $width . '>'; $html .= '<option value=""' . (!$bWasSelect ? ' selected' : '') . '>' . GetMessage("IBLOCK_PROP_ELEMENT_LIST_ANY_VALUE") . '</option>'; $html .= $options; $html .= '</select>'; return $html; }
$arr = array(); $arr["reference_id"][] = ""; $arr["reference"][] = ""; $arrForum = array(); $arrSelect = ""; while ($dbForum = $db_Forum->Fetch()) { $arrForum[$dbForum["ID"]] = htmlspecialcharsex($dbForum["NAME"]); $arrSelect .= "<option value='" . $dbForum["ID"] . "'>" . htmlspecialcharsex($dbForum["NAME"]) . "</option>"; $arr["reference_id"][] = $dbForum["ID"]; $arr["reference"][] = htmlspecialcharsex($dbForum["NAME"]); } //************************************ Filter *****************8*************************************************** $sTableID = "tbl_topic"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("FORUM_ID", "DATE_FROM", "DATE_TO", "CREATE_DATE_FROM", "CREATE_DATE_TO")); //************************************ Check filter *************************************************************** $arMsg = array(); $err = false; $date1_create_stm = ""; $date1_create_stm = ""; $date1_stm = ""; $date2_stm = ""; $CREATE_DATE_FROM = trim($CREATE_DATE_FROM); $CREATE_DATE_TO = trim($CREATE_DATE_TO); $CREATE_DATE_FROM_DAYS_TO_BACK = intval($CREATE_DATE_FROM_DAYS_TO_BACK); if (strlen($CREATE_DATE_FROM) > 0 || strlen($CREATE_DATE_TO) > 0 || $CREATE_DATE_FROM_DAYS_TO_BACK > 0) { $date1_create_stm = MkDateTime(ConvertDateTime($CREATE_DATE_FROM, "D.M.Y"), "d.m.Y"); $date2_create_stm = MkDateTime(ConvertDateTime($CREATE_DATE_TO, "D.M.Y") . " 23:59", "d.m.Y H:i"); if ($CREATE_DATE_FROM_DAYS_TO_BACK > 0) { $date1_create_stm = time() - 86400 * $CREATE_DATE_FROM_DAYS_TO_BACK;
} else { $arInitFilter[$id] = "find_" . $id; $arFilterFields["find_" . $id] = $id; } } } } $lAdmin = new CAdminList( $sTableID, new CAdminSorting($sTableID, $sPrimaryKey, "asc") ); // FILTER $lAdmin->InitFilter($arInitFilter); $arFilter = array(); foreach($sDataClassName::getEntity()->getFields() as $field) { if($field instanceof Bitrix\Main\Entity\ScalarField) { $id = $field->getColumnName(); $fieldName = "find_" . $id; if($field instanceof Bitrix\Main\Entity\DatetimeField) { if(!empty(${$fieldName . "_from"})) $arFilter[">=" . $id] = ${$fieldName . "_from"}; if(!empty(${$fieldName . "_to"})) $arFilter["<=" . $id] = ${$fieldName . "_to"};
$res = preg_replace('!<script[^>]*>.*</script>!isU', '', $res); return $res; } if (!empty($arResult['OPEN_SECTION_MODE'])) { echo renderTree($arResult['SECTIONS'], $arResult['LEVEL'], $arResult['TABLE_ID']); } else { $arProps = $arResult['PROPS']; $arSKUProps = $arResult['SKU_PROPS']; $arFilter = $arResult['FILTER']; $arHeaders = $arResult['HEADERS']; $arPrices = $arResult['PRICES']; $tableId = CUtil::JSEscape($arResult['TABLE_ID']); // START TEMPLATE $APPLICATION->SetAdditionalCSS('/bitrix/panel/main/admin.css'); $lAdmin = new CAdminList($arResult['TABLE_ID'], new CAdminSorting($arResult['TABLE_ID'], "ID", "ASC")); $lAdmin->InitFilter($arResult['FILTER_FIELDS']); // fix $_REQUEST['admin_history'] = 1; $lAdmin->NavText($arResult['DB_RESULT_LIST']->GetNavPrint(GetMessage("SPS_NAV_LABEL"))); $lAdmin->AddHeaders($arHeaders); $arSelectedFields = $lAdmin->GetVisibleHeaderColumns(); $arSelectedProps = array(); $allProps = array_merge($arProps, $arSKUProps); foreach ($allProps as $prop) { if ($key = array_search("PROPERTY_" . $prop['ID'], $arSelectedFields)) { $arSelectedProps[] = $prop; unset($arSelectedFields[$key]); } } $allProps = null; $arSelectedFields = null;
//***************************************************************************************************************** // Topic manage //************************************!**************************************************************************** require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/include.php"; $forumModulePermissions = $APPLICATION->GetGroupRight("forum"); if ($forumModulePermissions == "D") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; //************************************!Filter ********************************************************************* $sTableID = "tbl_subscribe_edit"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("FilterType_S", "Filter_S", "FORUM_ID_S", "DATE_FROM_S", "DATE_TO_S", "SUBSCR_TYPE_S")); //************************************!Check filter *************************************************************** $USER_ID = intVal($USER_ID); $arFilter = array("USER_ID" => $USER_ID); $arMsg = array(); $err = false; if ($USER_ID <= 0) { $arMsg[] = array("id" => "USER_ID", "text" => GetMessage("FM_WRONG_USER_ID")); } $date1_stm = ""; $date2_stm = ""; $DATE_FROM_S = trim($DATE_FROM_S); $DATE_TO_S = trim($DATE_TO_S); $DATE_FROM_S_DAYS_TO_BACK = intval($DATE_FROM_S_DAYS_TO_BACK); if (strlen($DATE_FROM_S) > 0 || strlen($DATE_TO_S) > 0 || $DATE_FROM_S_DAYS_TO_BACK > 0) { $date1_stm = MkDateTime(ConvertDateTime($DATE_FROM_S, "D.M.Y"), "d.m.Y");
} break; } $aTabs = array(); if (!empty($aCatalog['CATALOG'])) { foreach ($aCatalog['CATALOG'] as $sKey => $aSection) { $aTabs[] = array('DIV' => $sKey, 'TAB' => $aSection['NAME'], 'ICON' => 'main_channel_edit', 'TITLE' => $aSection['NAME']); } } $tabControl = new CAdminTabControl("tabControl", $aTabs, false); $aTables = array(); foreach ($aTabs as $aTab) { $sTableID = "tbl_bitrixGems_" . $aTab['DIV']; $oSort = new CAdminSorting($sTableID, "LIKES", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array('filter_by_gem')); $headers = array(array("id" => "PICTURE", "content" => GetMessage('TH_PICTURE'), "default" => true), array("id" => "NAME", "content" => GetMessage('TH_NAME'), "sort" => "s_NAME", "default" => true), array("id" => "TYPE", "content" => GetMessage('TH_TYPE'), "sort" => "s_TYPE", "default" => true), array("id" => "DESCRIPTION", "content" => GetMessage('TH_DESCRIPTION'), "sort" => "s_DESCRIPTION", "default" => true), array("id" => "REQUIREMENTS", "content" => GetMessage('TH_REQUIREMENTS'), "sort" => "s_REQUIREMENTS", "default" => true), array("id" => "AUTHOR", "content" => GetMessage('TH_AUTHOR'), "sort" => "s_AUTHOR", "default" => true), array("id" => "LIKES", "content" => GetMessage('TH_LIKES'), "sort" => "s_LIKES", "default" => true), array("id" => "DOWNLOADS", "content" => GetMessage('TH_DOWNLOADS'), "sort" => "s_DOWNLOADS", "default" => true)); $lAdmin->AddHeaders($headers); $rsData = new CDBResult(); /** * ������. �� ������� ������� ���� �����. ���� ����� �������� ������ ��������. �� �� ��� �������. */ $aFilteredCat = array(); if ($filter_by_gem) { foreach ($aCatalog['CATALOG'][$aTab['DIV']]['ITEMS'] as $aGem) { if (stripos($aGem['GEM'], $filter_by_gem) !== false) { $aFilteredCat[$aGem['GEM']] = $aGem; } } } else { $aFilteredCat = $aCatalog['CATALOG'][$aTab['DIV']]['ITEMS'];
$arr = array(); $arr["reference_id"][] = ""; $arr["reference"][] = ""; $arrForum = array(); $arrSelect = ""; while ($dbForum = $db_Forum->Fetch()) { $arrForum[$dbForum["ID"]] = $dbForum["NAME"]; $arrSelect .= "<option value='" . $dbForum["ID"] . "'>" . htmlspecialcharsex($dbForum["NAME"]) . "</option>"; $arr["reference_id"][] = $dbForum["ID"]; $arr["reference"][] = $dbForum["NAME"]; } /*******************************************************************/ $sTableID = "tbl_topic"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("FORUM_ID", "TITLE", "DESCRIPTION", "USER_START_ID", "ACTIVE", "PINNED", "OPENED", "DATE_FROM", "DATE_TO", "CREATE_DATE_FROM", "CREATE_DATE_TO")); /*******************************************************************/ $arMsg = array(); $err = false; $date1_create_stm = 0; $date2_create_stm = 0; $date1_stm = ""; $date2_stm = ""; $CREATE_DATE_FROM = trim($CREATE_DATE_FROM); $CREATE_DATE_TO = trim($CREATE_DATE_TO); $CREATE_DATE_FROM_DAYS_TO_BACK = intval($CREATE_DATE_FROM_DAYS_TO_BACK); if (!empty($CREATE_DATE_FROM) || !empty($CREATE_DATE_TO) || $CREATE_DATE_FROM_DAYS_TO_BACK > 0) { $date1_create_stm = MkDateTime(ConvertDateTime($CREATE_DATE_FROM, "D.M.Y"), "d.m.Y"); $date2_create_stm = MkDateTime(ConvertDateTime($CREATE_DATE_TO, "D.M.Y"), "d.m.Y"); if (!empty($CREATE_DATE_FROM)) { if (!empty($CREATE_DATE_TO)) {
IncludeModuleLangFile(__FILE__); $tableId = "tbl_model_admin"; $adminSorting = new CAdminSorting($tableId, "TIMESTAMP_X", "desc"); $context = \Bitrix\Main\Application::getInstance()->getContext(); /** @var \Bitrix\Main\HttpRequest $request */ $request = $context->getRequest(); $orderBy = array(); if ($request->get("by") !== null) { $orderBy[$request->get("by")] = $request->get("order"); } if ($request->get("by") === null || $request->get("by") !== "ID") { $orderBy["ID"] = "ASC"; } $adminList = new CAdminList($tableId, $adminSorting); $filterFields = array("ID" => "find_id", "?NAME" => "find_name", "LID" => "find_lang", "ACTIVE" => "find_active", "?CODE" => "find_code"); $filterValues = $adminList->InitFilter(array_values($filterFields)); $filter = array(); foreach ($filterFields as $fld => $var) { if (isset($filterValues[$var])) { $filter[$fld] = $filterValues[$var]; } } if ($adminList->EditAction()) { foreach ($FIELDS as $ID => $arFields) { $DB->StartTransaction(); $ID = IntVal($ID); if (!$adminList->IsUpdated($ID)) { continue; } if (!CIBlockRights::UserHasRightTo($ID, $ID, "iblock_edit")) { continue;
/******************************************************************** Profanity dictionary. ********************************************************************/ require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/include.php"; $forumModulePermissions = $APPLICATION->GetGroupRight("forum"); if ($forumModulePermissions == "D") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; $sTableID = "tbl_filter_dictionary_letter"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("DICTIONARY_ID", "find_type", "find")); /*******************************************************************/ $arFilter = array(); $find = trim($find); if (strLen($find) > 0) { $arFilter["%" . htmlspecialcharsEx($find_type)] = "%" . $find . "%"; } $DICTIONARY_ID = intVal($_REQUEST["DICTIONARY_ID"]); if ($DICTIONARY_ID <= 0) { $lAdmin->AddFilterError(GetMessage("FLT_NOT_DICT")); } $arFilter["DICTIONARY_ID"] = $DICTIONARY_ID; /*******************************************************************/ if ($lAdmin->EditAction()) { foreach ($FIELDS as $ID => $arFields) { $arFields = array_merge($arFields, array("DICTIONARY_ID" => $DICTIONARY_ID));
IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; /*******************************************************************/ $arForum = array("" => GetMessage('FM_SPACE')); $db_res = CForumNew::GetListEx(array("SORT" => "ASC", "NAME" => "ASC")); if ($db_res && ($res = $db_res->Fetch())) { do { $arForum[$res["ID"]] = $res["NAME"]; } while ($res = $db_res->Fetch()); } asort($arForum); /*******************************************************************/ $sTableID = "tbl_subscribe"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("FilterType", "Filter", "FORUM_ID", "DATE_FROM", "DATE_TO", "SUBSCR_TYPE")); global $order, $by, $SUBSCR_TYPE; /*******************************************************************/ $arFilter = array("SUBSC" => true); $arMsg = array(); $err = false; $date1_stm = ""; $date2_stm = ""; $DATE_FROM = trim($DATE_FROM); $DATE_TO = trim($DATE_TO); $DATE_FROM_DAYS_TO_BACK = intval($DATE_FROM_DAYS_TO_BACK); if (strlen($DATE_FROM) > 0 || strlen($DATE_TO) > 0 || $DATE_FROM_DAYS_TO_BACK > 0) { $date1_stm = MkDateTime(ConvertDateTime($DATE_FROM, "D.M.Y"), "d.m.Y"); $date2_stm = MkDateTime(ConvertDateTime($DATE_TO, "D.M.Y") . " 23:59", "d.m.Y H:i"); if ($DATE_FROM_DAYS_TO_BACK > 0) { $date1_stm = time() - 86400 * $DATE_FROM_DAYS_TO_BACK;
/******************************************************************** Profanity dictionary. ********************************************************************/ require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/include.php"; $forumModulePermissions = $APPLICATION->GetGroupRight("forum"); if ($forumModulePermissions == "D") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; $sTableID = "tbl_filter_dictionary"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("TITLE")); /*******************************************************************/ $arFilter = array(); $ID = intVal($ID); $TITLE = trim($TITLE); $TYPE = strtoupper(trim($_REQUEST["TYPE"])); $arFilter = array("TYPE" => $TYPE); if (strLen($TITLE) > 0) { $arFilter = array_merge($arFilter, array("%TITLE" => "%" . $TITLE . "%")); } /*******************************************************************/ if ($lAdmin->EditAction() && $forumModulePermissions >= "W") { foreach ($FIELDS as $ID => $arFields) { $DB->StartTransaction(); $ID = IntVal($ID); if (!$lAdmin->IsUpdated($ID)) {
/******************************************************************** Profanity dictionary. ********************************************************************/ require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/include.php"; $forumModulePermissions = $APPLICATION->GetGroupRight("forum"); if ($forumModulePermissions == "D") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/forum/prolog.php"; $sTableID = "tbl_filter"; $oSort = new CAdminSorting($sTableID, "ID", "asc"); $lAdmin = new CAdminList($sTableID, $oSort); $lAdmin->InitFilter(array("ID", "find_pattern", "find_type", "USE_IT", "PATTERN_CREATE")); /*******************************************************************/ $arFilter = array(); $DICTIONARY_ID = intVal($_REQUEST["DICTIONARY_ID"]); if ($DICTIONARY_ID <= 0) { $DICTIONARY_ID = 0; $lAdmin->AddFilterError(GetMessage("FLT_NOT_DICTIONARY")); } $arFilter = array("DICTIONARY_ID" => $DICTIONARY_ID); $find_pattern = trim($find_pattern); if (strLen($find_pattern) > 0) { $arFilter = array_merge($arFilter, array("%" . htmlspecialcharsEx(strToUpper($find_type)) => "%" . $find_pattern . "%")); } if ($USE_IT && $USE_IT != "all") { $arFilter = array_merge($arFilter, array("USE_IT" => trim($USE_IT) == "Y" ? "Y" : "N")); }
/** * Производится инициализация переменных, обработка запросов на редактирование * * @param array $fields * @param bool $isPopup * @throws \Bitrix\Main\ArgumentException */ public function __construct(array $fields, $isPopup = false) { $this->isPopup = $isPopup; if ($this->isPopup) { $this->fieldPopupResultName = preg_replace("/[^a-zA-Z0-9_:\\[\\]]/", "", $_REQUEST['n']); $this->fieldPopupResultIndex = preg_replace("/[^a-zA-Z0-9_:]/", "", $_REQUEST['k']); $this->fieldPopupResultElTitle = $_REQUEST['eltitle']; } parent::__construct($fields); $this->restoreLastGetQuery(); $this->prepareAdminVariables(); $className = static::getModel(); $oSort = new \CAdminSorting($this->getListTableID(), static::pk(), "desc"); $this->list = new \CAdminList($this->getListTableID(), $oSort); $this->list->InitFilter($this->arFilterFields); if ($this->list->EditAction() and $this->hasWriteRights()) { global $FIELDS; foreach ($FIELDS as $id => $fields) { if (!$this->list->IsUpdated($id)) { continue; } $this->editAction($id, $fields); } } if ($IDs = $this->list->GroupAction() and $this->hasWriteRights()) { if ($_REQUEST['action_target'] == 'selected') { $this->setContext(AdminListHelper::OP_GROUP_ACTION); $IDs = array(); //Текущий фильтр должен быть модифицирован виждтами //для соответствия результатов фильтрации тому, что видит пользователь в интерфейсе. $raw = array('SELECT' => $this->pk(), 'FILTER' => $this->arFilter, 'SORT' => array()); foreach ($this->fields as $code => $settings) { $widget = $this->createWidgetForField($code); $widget->changeGetListOptions($this->arFilter, $raw['SELECT'], $raw['SORT'], $raw); } $res = $className::getList(array('filter' => $this->arFilter, 'select' => array($this->pk()))); while ($el = $res->Fetch()) { $IDs[] = $el[$this->pk()]; } } $filteredIDs = array(); foreach ($IDs as $id) { if (strlen($id) <= 0) { continue; } $filteredIDs[] = IntVal($id); } $this->groupActions($IDs, $_REQUEST['action']); } if (isset($_REQUEST['action']) || isset($_REQUEST['action_button']) && count($this->getErrors()) == 0) { $listHelperClass = $this->getHelperClass(AdminListHelper::className()); $className = $listHelperClass::getModel(); $id = isset($_GET['ID']) ? $_GET['ID'] : null; $action = isset($_REQUEST['action']) ? $_REQUEST['action'] : $_REQUEST['action_button']; if ($action != 'edit' && $_REQUEST['cancel'] != 'Y') { $params = $_GET; unset($params['action']); unset($params['action_button']); $this->customActions($action, $id); $sectionEditHelperClass = $this->getHelperClass(AdminSectionEditHelper::className()); if ($sectionEditHelperClass) { $element = $className::getById($id)->Fetch(); $sectionField = $listHelperClass::getSectionField(); if ($element[$sectionField]) { $params['ID'] = $element[$sectionField]; } } LocalRedirect($listHelperClass::getUrl($params)); } } if ($this->isPopup()) { $this->genPopupActionJS(); } // Получаем параметры навигации $navUniqSettings = array('sNavID' => $this->getListTableID()); $this->navParams = array('nPageSize' => \CAdminResult::GetNavSize($navUniqSettings), 'navParams' => \CAdminResult::GetNavParams($navUniqSettings)); }
"find_source_id", "find_modified_by", "find_modified_by_exact_match", "find_message", "find_is_spam", "find_is_spam_maybe", "find_hold_on", "find_supportteam_group_id", "find_supportteam_group_id", "find_client_group_id", 'find_coupon', 'find_coupon_exact_match', ); $USER_FIELD_MANAGER->AdminListAddFilterFields( $entity_id, $arFilterFields ); $lAdmin->InitFilter($arFilterFields);//инициализация фильтра InitBVar($find_id_exact_match); InitBVar($find_title_exact_match); InitBVar($find_support_comments_exact_match); InitBVar($find_owner_exact_match); InitBVar($find_created_by_exact_match); InitBVar($find_responsible_exact_match); InitBVar($find_modified_by_exact_match); InitBVar($find_message_exact_match); if (CheckFilter()) {
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; Loader::includeModule('sale'); Loader::includeModule('currency'); $saleModulePermissions = $APPLICATION->GetGroupRight("sale"); if ($saleModulePermissions < "U") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/sale/prolog.php"; $tableId = "b_sale_order_payment"; $curPage = Application::getInstance()->getContext()->getCurrent()->getRequest()->getRequestUri(); $lang = Application::getInstance()->getContext()->getLanguage(); $sAdmin = new CAdminSorting($tableId, "ORDER_ID", "DESC"); $lAdmin = new CAdminList($tableId, $sAdmin); $filter = array('filter_order_id_from', 'filter_order_id_to', 'filter_date_paid_from', 'filter_date_paid_to', 'filter_order_paid', 'filter_site_id', 'filter_pay_system_id', 'filter_company_id', 'filter_account_num', 'filter_sum_from', 'filter_sum_to', 'filter_pay_voucher_num', 'filter_user_id', 'filter_user_login', 'filter_user_email'); $lAdmin->InitFilter($filter); $arFilter = array(); $filter_order_id_from = intval($filter_order_id_from); $filter_order_id_to = intval($filter_order_id_to); $filter_sum_from = intval($filter_sum_from); $filter_sum_to = intval($filter_sum_to); if ($filter_order_id_from > 0 && $filter_order_id_to > 0) { $arFilter['><ORDER_ID'] = array($filter_order_id_from, $filter_order_id_to); } if (strlen($filter_order_paid) > 0 && $filter_order_paid != 'NOT_REF') { $arFilter['PAID'] = $filter_order_paid; } if (strlen($filter_site_id) > 0 && $filter_site_id != 'NOT_REF') { $arFilter['ORDER.LID'] = $filter_site_id; } if (strlen($filter_pay_system_id) > 0 && $filter_pay_system_id != 'NOT_REF') {
if (!CModule::IncludeModule('clouds')) { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } IncludeModuleLangFile(__FILE__); $bucket_id = 0; $arBuckets = array(); foreach (CCloudStorageBucket::GetAllBuckets() as $arBucket) { if ($arBucket["ACTIVE"] == "Y") { $bucket_id = $arBucket["ID"]; $arBuckets[$bucket_id] = $arBucket["BUCKET"]; } } $message = null; $sTableID = "tbl_clouds_file_search"; $lAdmin = new CAdminList($sTableID); $lAdmin->InitFilter(array("bucket", "path")); $path = isset($_GET["path"]) ? $_GET["path"] : $path; $path = preg_replace("#[\\\\\\/]+#", "/", "/" . $path . "/"); $n = preg_replace("/[^a-zA-Z0-9_:\\[\\]]/", "", $_GET["n"]); if (intval($bucket) <= 0 && count($arBuckets) == 1) { $bucket = $bucket_id; } //TODO when there is only one cloud storage there is no need for filter or at least we can preset it $arHeaders = array(array("id" => "FILE_NAME", "content" => GetMessage("CLO_STORAGE_SEARCH_NAME"), "default" => true), array("id" => "FILE_SIZE", "content" => GetMessage("CLO_STORAGE_SEARCH_SIZE"), "align" => "right", "default" => true)); $lAdmin->AddHeaders($arHeaders); $arData = array(); $obBucket = new CCloudStorageBucket($bucket); if ($obBucket->Init() && $_GET["file"] !== "y") { $arFiles = $obBucket->ListFiles($path); if ($path != "/") { $arData[] = array("ID" => "D..", "TYPE" => "dir", "NAME" => "..", "SIZE" => "");
); if ($set_default=="Y" && !isset($_SESSION["SESS_ADMIN"][$sTableID]) || empty($_SESSION["SESS_ADMIN"][$sTableID]) ) { $find_date1_DAYS_TO_BACK=1; //$find_date2 = ConvertTimeStamp(time()-86400, "SHORT"); $set_filter = "Y"; } $FilterArr = Array( "find_date1","find_date2", "find_site", "find_responsible_id","find_responsible","find_responsible_exact_match", ); $lAdmin->InitFilter($FilterArr);//инициализаци¤ фильтра if ($bAdmin!="Y" && $bDemo!="Y") $find_responsible_id = $USER->GetID(); InitBVar($find_responsible_exact_match); if (CheckFilter()) { $arFilter = Array( "SITE" => $find_site, "DATE_CREATE_1" => $find_date1, "DATE_CREATE_2" => $find_date2, "RESPONSIBLE_ID" => $find_responsible_id, "RESPONSIBLE" => $find_responsible,
|| $USER->CanDoOperation('edit_all_users') || $USER->CanDoOperation('edit_subordinate_users') ); Loader::includeModule('sale'); Loc::loadMessages(__FILE__); $adminListTableID = 'tbl_sale_discount_coupons'; $adminSort = new CAdminSorting($adminListTableID, 'ID', 'ASC'); $adminList = new CAdminList($adminListTableID, $adminSort); $filter = array(); $filterFields = array(); $adminList->InitFilter($filterFields); if (!$readOnly && $adminList->EditAction()) { if (isset($FIELDS) && is_array($FIELDS)) { $conn = Application::getConnection(); Internals\DiscountCouponTable::disableCheckCouponsUse(); foreach ($FIELDS as $couponID => $fields) { $couponID = (int)$couponID; if ($couponID <= 0 || !$adminList->IsUpdated($couponID)) continue; $conn->startTransaction(); $result = Internals\DiscountCouponTable::prepareCouponData($fields);
Bitrix\Main\Loader::includeModule('sale'); use Bitrix\Main\Localization\Loc; Loc::loadMessages(__FILE__); $ID = intval($_GET["ID"]); /** @var \Bitrix\Sale\Order $saleOrder */ if (!isset($saleOrder) || !$saleOrder instanceof \Bitrix\Sale\Order) { $saleOrder = \Bitrix\Sale\Order::load($ID); } $shipmentCollection = $saleOrder->getShipmentCollection(); $paymentCollection = $saleOrder->getPaymentCollection(); $sTableHistory = "table_order_history"; $oSortHistory = new CAdminSorting($sTableHistory); $lAdminHistory = new CAdminList($sTableHistory, $oSortHistory); //FILTER ORDER CHANGE HISTORY $arFilterFieldsHistory = array("filter_user", "filter_date_history", "filter_type"); $lAdminHistory->InitFilter($arFilterFieldsHistory); $by = trim(array_key_exists('by', $_REQUEST) ? $_REQUEST['by'] : ''); if ('' == $by) { $by = 'DATE_CREATE'; } $order = trim(array_key_exists('order', $_REQUEST) ? $_REQUEST['order'] : ''); if ('' == $order) { $order = 'DESC'; } $arHistSort[$by] = $order; $arHistSort["ID"] = $order; $arFilterHistory = array("ORDER_ID" => $ID); if (isset($entity)) { $arFilterHistory = array_merge($entity, $arFilterHistory); } if (strlen($filter_type) > 0) {
); while ($arPaySystemList = $dbPaySystemList->Fetch()) $arPaySystem[$arPaySystemList["ID"]] = htmlspecialcharsbx($arPaySystemList["NAME"]); $sTableID_tab5 = "table_order_change"; $oSort_tab5 = new CAdminSorting($sTableID_tab5); $lAdmin_tab5 = new CAdminList($sTableID_tab5, $oSort_tab5); //FILTER ORDER CHANGE HISTORY $arFilterFields = array( "filter_user", "filter_date_history", "filter_type" ); $lAdmin_tab5->InitFilter($arFilterFields); $by = trim(array_key_exists('by', $_REQUEST) ? $_REQUEST['by'] : ''); if ('' == $by) $by = 'DATE_CREATE'; $order = trim(array_key_exists('order', $_REQUEST) ? $_REQUEST['order'] : ''); if ('' == $order) $order = 'DESC'; $arHistSort[$by] = $order; $arHistSort["ID"] = $order; $arFilterHistory = array("ORDER_ID" => $ID); if (strlen($filter_type)>0) $arFilterHistory["TYPE"] = trim($filter_type); if (IntVal($filter_user)>0) $arFilterHistory["USER_ID"] = intval($filter_user);
/** * Return admin filter html. * * @param array $arProperty Property description. * @param array $strHTMLControlName Control description. * @return string */ public static function GetAdminFilterHTML($arProperty, $strHTMLControlName) { $lAdmin = new CAdminList($strHTMLControlName["TABLE_ID"]); $lAdmin->InitFilter(array($strHTMLControlName["VALUE"])); $filterValue = $GLOBALS[$strHTMLControlName["VALUE"]]; if(isset($filterValue) && is_array($filterValue)) $values = $filterValue; else $values = array(); $settings = CIBlockPropertyDirectory::PrepareSettings($arProperty); $size = ($settings["size"] > 1 ? ' size="'.$settings["size"].'"' : ''); $width = ($settings["width"] > 0 ? ' style="width:'.$settings["width"].'px"' : ''); $options = CIBlockPropertyDirectory::GetOptionsHtml($arProperty, $values); $html = '<select name="'.$strHTMLControlName["VALUE"].'[]"'.$size.$width.' multiple>'; $html .= $options; $html .= '</select>'; return $html; }
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin_js.php"; } $needGroup = false; $arFilter = array(); $oSort = new CAdminSorting($sTableID, "ID", "desc"); $lAdmin = new CAdminList($sTableID, $oSort); function CheckFilter() { global $FilterArr, $lAdmin; foreach ($FilterArr as $f) { global ${$f}; } return count($lAdmin->arFilterErrors) == 0; } $FilterArr = array("find_name", "find_email", "find_list", "find_subscribed", "find_unsubscribed"); $lAdmin->InitFilter($FilterArr); if (CheckFilter()) { $arFilter = array("%NAME" => $find_name, "%EMAIL" => $find_email); if ($find_list > 0) { $arFilter["=CONTACT_LIST.LIST_ID"] = $find_list; } elseif (!empty($find_list)) { $arFilter["=CONTACT_LIST.LIST_ID"] = $find_list; } if (!empty($find_subscribed)) { if ($find_subscribed == 'ALL') { $arFilter[">MAILING_SUBSCRIPTION.MAILING_ID"] = 0; $needGroup = true; } else { $arFilter["=MAILING_SUBSCRIPTION.MAILING_ID"] = $find_subscribed; } }
// show all columns by default foreach ($arHeaders as &$arHeader) { $arHeader['default'] = true; } unset($arHeader); $lAdmin->AddHeaders($arHeaders); if (!in_array($by, $lAdmin->GetVisibleHeaderColumns(), true)) { $by = 'ID'; } // add filter $filter = null; $filterFields = array('find_id'); $filterValues = array(); $filterTitles = array('ID'); $USER_FIELD_MANAGER->AdminListAddFilterFields($ufEntityId, $filterFields); $filter = $lAdmin->InitFilter($filterFields); if (!empty($find_id)) { $filterValues['ID'] = $find_id; } $USER_FIELD_MANAGER->AdminListAddFilter($ufEntityId, $filterValues); $USER_FIELD_MANAGER->AddFindFields($ufEntityId, $filterTitles); $filter = new CAdminFilter($sTableID . "_filter_id", $filterTitles); // group actions if ($lAdmin->EditAction()) { foreach ($FIELDS as $ID => $arFields) { $ID = (int) $ID; if ($ID <= 0) { continue; } if (!$lAdmin->IsUpdated($ID)) { continue;
<?php require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/currency/prolog.php"; $CURRENCY_RIGHT = $APPLICATION->GetGroupRight("currency"); if ($CURRENCY_RIGHT == "D") { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } CModule::IncludeModule('currency'); IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/currency/currencies_rates.php"); $sTableID = "t_currency_rates"; $oSort = new CAdminSorting($sTableID, "date", "desc"); $lAdmin = new CAdminList($sTableID, $oSort); $arFilterFields = array("filter_period_from", "filter_period_to", "filter_currency"); $lAdmin->InitFilter($arFilterFields); $filter = new CAdminFilter($sTableID . "_filter", array(GetMessage("curr_rates_curr1"))); $arFilter = array("CURRENCY" => $filter_currency, "DATE_RATE" => $filter_period_from, "!DATE_RATE" => $filter_period_to); if ($by != "curr" && $by != "rate") { $by = "date"; } $order = strtolower($order); if ($order != "asc") { $order = "desc"; } if ($CURRENCY_RIGHT == "W" && $lAdmin->EditAction()) { foreach ($FIELDS as $ID => $arFields) { $ID = (int) $ID; if (!$lAdmin->IsUpdated($ID)) { continue; } $arCurR = CCurrencyRates::GetByID($ID);
/** * Производится инициализация переменных, обработка запросов на редактирование * * @param array $fields * @param bool $isPopup * @throws \Bitrix\Main\ArgumentException */ public function __construct($fields, $isPopup = false) { $this->isPopup = $isPopup; parent::__construct($fields); $this->restoreLastGetQuery(); $this->prepareAdminVariables(); $this->addContextMenu(); $this->addGroupActions(); if (isset($_REQUEST['action'])) { $id = isset($_REQUEST['ID']) ? $_REQUEST['ID'] : null; $this->customActions($_REQUEST['action'], $id); } $className = static::getModel(); $oSort = new \CAdminSorting($this->getListTableID(), static::pk(), "desc"); $this->list = new \CAdminList($this->getListTableID(), $oSort); $this->list->InitFilter($this->arFilterFields); if ($this->list->EditAction() and $this->hasWriteRights()) { global $FIELDS; foreach ($FIELDS as $id => $fields) { if (!$this->list->IsUpdated($id)) { continue; } $id = intval($id); $this->editAction($id, $fields); } } if ($IDs = $this->list->GroupAction() and $this->hasWriteRights()) { if ($_REQUEST['action_target'] == 'selected') { $this->setContext(AdminListHelper::OP_GROUP_ACTION); $IDs = array(); //Текущий фильтр должен быть модифицирован виждтами //для соответствия результатов фильтрации тому, что видит пользователь в интерфейсе. $raw = array('SELECT' => $this->pk(), 'FILTER' => $this->arFilter, 'SORT' => array()); foreach ($this->fields as $code => $settings) { $widget = $this->createWidgetForField($code); $widget->changeGetListOptions($this->arFilter, $raw['SELECT'], $raw['SORT'], $raw); } $res = $className::getList(array('filter' => $this->arFilter, 'select' => array($this->pk()))); while ($el = $res->Fetch()) { $IDs[] = $el[$this->pk()]; } } $filteredIDs = array(); foreach ($IDs as $id) { if (strlen($id) <= 0) { continue; } $filteredIDs[] = IntVal($id); } $this->groupActions($IDs, $_REQUEST['action']); } if ($this->isPopup()) { $this->genPopupActionJS(); } }