Exemplo n.º 1
0
 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);
 }
Exemplo n.º 2
0
 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;
 }
Exemplo n.º 3
0
$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"};
Exemplo n.º 5
0
     $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;
Exemplo n.º 6
0
//*****************************************************************************************************************
//	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");
Exemplo n.º 7
0
        }
        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'];
Exemplo n.º 8
0
$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)) {
Exemplo n.º 9
0
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;
Exemplo n.º 10
0
/********************************************************************
	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));
Exemplo n.º 11
0
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;
Exemplo n.º 12
0
/********************************************************************
	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)) {
Exemplo n.º 13
0
/********************************************************************
	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));
 }
Exemplo n.º 15
0
	"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())
{
Exemplo n.º 16
0
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') {
Exemplo n.º 17
0
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" => "");
Exemplo n.º 18
0
);

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,
Exemplo n.º 19
0
	|| $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);
Exemplo n.º 20
0
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) {
Exemplo n.º 21
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);
Exemplo n.º 22
0
	/**
	 * 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;
	}
Exemplo n.º 23
0
    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;
        }
    }
Exemplo n.º 24
0
// 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;
Exemplo n.º 25
0
<?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();
     }
 }