示例#1
0
     } else {
         $op = "";
         $newKey = $key;
     }
     if (!in_array($newKey, array("NAME", "MODIFIED", "OVERDUE_DATE", "WORKFLOW_TEMPLATE_ID", "DESCRIPTION"))) {
         continue;
     }
     if (in_array($newKey, array("NAME", "DESCRIPTION")) && $op == "") {
         $op = "~";
         $value = "%" . $value . "%";
     }
     $arFilter[$op . $newKey] = $value;
 }
 $arResult["SORT"] = $gridSort["sort"];
 $arResult["RECORDS"] = array();
 $dbRecordsList = CBPTaskService::GetList($gridSort["sort"], $arFilter, false, $gridOptions->GetNavParams(), $arSelectFields);
 while ($arRecord = $dbRecordsList->GetNext()) {
     $arRecord['MODIFIED'] = FormatDateFromDB($arRecord['MODIFIED']);
     $arRecord["DOCUMENT_URL"] = CBPDocument::GetDocumentAdminPage($arRecord["PARAMETERS"]["DOCUMENT_ID"]);
     $arRecord["MODULE_ID"] = $arRecord["PARAMETERS"]["DOCUMENT_ID"][0];
     $arRecord["ENTITY"] = $arRecord["PARAMETERS"]["DOCUMENT_ID"][1];
     $arRecord["DOCUMENT_ID"] = $arRecord["PARAMETERS"]["DOCUMENT_ID"][2];
     $arRecord["URL"] = array("~TASK" => CComponentEngine::MakePathFromTemplate($arParams["~TASK_EDIT_URL"], $arRecord), "TASK" => CComponentEngine::MakePathFromTemplate($arParams["TASK_EDIT_URL"], $arRecord));
     if (array_key_exists("DESCRIPTION", $arRecord)) {
         $arRecord["DESCRIPTION"] = nl2br($arRecord["DESCRIPTION"]);
     }
     if (count(array_intersect($arSelectFields, array("WORKFLOW_NAME", "WORKFLOW_STATE", "WORKFLOW_STARTED", "WORKFLOW_STARTED_BY"))) > 0) {
         $arState = CBPStateService::GetWorkflowState($arRecord["WORKFLOW_ID"]);
         $arRecord["WORKFLOW_NAME"] = $arState["TEMPLATE_NAME"];
         $arRecord["WORKFLOW_STATE"] = $arState["STATE_TITLE"];
         $arRecord["WORKFLOW_STARTED"] = FormatDateFromDB($arState["STARTED_FORMATTED"]);
示例#2
0
            $op = $arFilterable[$new_key];
        }
        $arFilter[$op . $new_key] = $value;
    }
}
foreach ($arCustomFilter as $FIELD_ID => $arCallback) {
    $filtered = false;
    call_user_func_array($arCallback["callback"], array($arListFields[$FIELD_ID], array("VALUE" => $FIELD_ID, "GRID_ID" => $arResult["GRID_ID"]), &$arFilter, &$filtered));
}
$arFilter["IBLOCK_ID"] = $arIBlock["ID"];
$arFilter["CHECK_PERMISSIONS"] = $lists_perm >= CListPermissions::CAN_READ ? "N" : "Y";
if (!$arResult["ANY_SECTION"]) {
    $arFilter["SECTION_ID"] = $arResult["SECTION_ID"];
}
/** @var CIBlockResult $rsElements */
$rsElements = CIBlockElement::GetList($grid_sort["sort"], $arFilter, false, $grid_options->GetNavParams(), $arSelect);
if ($arResult["BIZPROC"] == "Y") {
    $arUserGroupsForBP = CUser::GetUserGroup($USER->GetID());
    $arDocumentStatesForBP = CBPWorkflowTemplateLoader::GetDocumentTypeStates(BizProcDocument::generateDocumentComplexType($arParams["IBLOCK_TYPE_ID"], $arIBlock["ID"]));
} else {
    $arUserGroupsForBP = array();
    $arDocumentStatesForBP = array();
}
$arResult["ELEMENTS_CAN_DELETE"] = array();
$arResult["ELEMENTS_CAN_MOVE"] = array();
$arResult["ELEMENTS_ROWS"] = array();
$check = false;
while ($obElement = $rsElements->GetNextElement()) {
    $check = true;
    $data = $obElement->GetFields();
    $aCols = array();
示例#3
0
        }
    } elseif ($_POST["action_button_" . $arResult["GRID_ID"]] == "edit" && isset($_POST["FIELDS"]) && is_array($_POST["FIELDS"]) && !$arResult["IS_SOCNET_GROUP_CLOSED"]) {
        foreach ($_POST["FIELDS"] as $ID => $arField) {
            if ($lists_perm >= CListPermissions::CAN_WRITE || CIBlockSectionRights::UserHasRightTo($arIBlock["ID"], $ID, "section_edit")) {
                $arFields = array("NAME" => $arField["NAME"], "CHECK_PERMISSIONS" => "N");
                $obSection->Update($ID, $arFields);
            }
        }
    }
    if (!isset($_POST["AJAX_CALL"])) {
        LocalRedirect($arResult["LIST_SECTION_URL"]);
    }
}
$grid_options = new CGridOptions($arResult["GRID_ID"]);
$rsSections = CIBlockSection::GetList(array("left_margin" => "asc"), array("IBLOCK_ID" => $arResult["IBLOCK_ID"], "GLOBAL_ACTIVE" => "Y", "SECTION_ID" => $arResult["SECTION_ID"], "CHECK_PERMISSIONS" => $lists_perm >= CListPermissions::IS_ADMIN ? "N" : "Y"));
$rsSections->NavStart($grid_options->GetNavParams(), false);
$arResult["SECTIONS_ROWS"] = array();
while ($data = $rsSections->GetNext()) {
    $aCols = array("NAME" => '<a href="' . str_replace(array("#list_id#", "#section_id#", "#group_id#"), array($data["IBLOCK_ID"], $data["ID"], $arParams["SOCNET_GROUP_ID"]), $arParams['LIST_SECTIONS_URL']) . '">' . $data["NAME"] . '</a>');
    $aActions = array();
    if (!$arResult["IS_SOCNET_GROUP_CLOSED"] && ($lists_perm >= CListPermissions::CAN_WRITE || CIBlockSectionRights::UserHasRightTo($data["IBLOCK_ID"], $data["ID"], "section_edit"))) {
        $aActions[] = array("ICONCLASS" => "edit", "TEXT" => GetMessage("CC_BLS_SECTION_ACTION_MENU_RENAME"), "ONCLICK" => "renameSection('form_section_add', '" . CUtil::JSEscape(GetMessage("CC_BLS_NEW_SECTION_NAME_PROMPT")) . "', " . $data["ID"] . ", '" . CUtil::JSEscape($data["NAME"]) . "');", "DEFAULT" => true);
    }
    if (!$arResult["IS_SOCNET_GROUP_CLOSED"] && ($lists_perm >= CListPermissions::CAN_WRITE || CIBlockSectionRights::UserHasRightTo($data["IBLOCK_ID"], $data["ID"], "section_delete"))) {
        $aActions[] = array("ICONCLASS" => "delete", "TEXT" => GetMessage("CC_BLS_SECTION_ACTION_MENU_DELETE"), "ONCLICK" => "bxGrid_" . $arResult["GRID_ID"] . ".DeleteItem('" . $data["ID"] . "', '" . GetMessage("CC_BLS_SECTION_DELETE_PROPMT") . "')");
        $canDelete = true;
    } else {
        $canDelete = false;
    }
    $arResult["SECTIONS_ROWS"][] = array("id" => $data["ID"], "data" => $data, "actions" => $aActions, "columns" => $aCols, "canDelete" => $canDelete);
}
示例#4
0
             }
         }
         if ($newKey == "ACTIVE_FROM") {
             $newKey = "DATE_ACTIVE_FROM";
         }
         if ($newKey == "ACTIVE_TO") {
             $newKey = "DATE_ACTIVE_TO";
         }
         $arFilter[$op . $newKey] = $value;
     }
 }
 $arResult["SORT"] = $gridSort["sort"];
 $arResult["ShowStateEvents"] = false;
 $arResult["ShowTasks"] = false;
 $arResult["RECORDS"] = array();
 list($dbRecordsList, $dbRecordsList1) = CBPVirtualDocument::GetList($gridSort["sort"], $arFilter, false, $gridOptions->GetNavParams(), $arSelectFields);
 while ($arRecord = $dbRecordsList->fetch()) {
     $arKeys = array_keys($arRecord);
     foreach ($arKeys as $key) {
         if ($arDocumentFields[$key]["BaseType"] == "file") {
             $ar = $arRecord[$key];
             if (!is_array($ar)) {
                 $ar = array($ar);
             }
             $arRecord[$key] = "";
             foreach ($ar as $v) {
                 if (strlen($arRecord[$key]) > 0) {
                     $arRecord[$key] .= " ";
                 }
                 $arRecord[$key] .= CFile::ShowFile($v, 100000, 50, 50, true);
             }
示例#5
0
$arResult["FILTER"] = array(
	array("id"=>"ID", "name"=>GetMessage('SUP_F_ID')),
	array("id"=>"LAMP", "name"=>GetMessage('SUP_F_LAMP'), "type"=>"list", "params"=>array("size"=>4, "multiple"=>"multiple"), "valign"=>"top", "items"=>array(
		'red' => GetMessage('SUP_RED'), 'green' => GetMessage('SUP_GREEN'), 'grey' => GetMessage('SUP_GREY')
	)),
	array("id"=>"CLOSE", "name"=>GetMessage('SUP_F_CLOSE'), "type" => "list", "items" => array(
		"" => GetMessage('SUP_ALL'), 'Y' => GetMessage('SUP_CLOSED'),'N' => GetMessage('SUP_OPENED')
	)),
	array("id"=>"MESSAGE", "name"=>GetMessage('SUP_F_MESSAGE_TITLE'))
);

$arParams["TICKETS_PER_PAGE"] = (intval($arParams["TICKETS_PER_PAGE"]) <= 0 ? 50 : intval($arParams["TICKETS_PER_PAGE"]));

$grid_options = new CGridOptions($arResult["GRID_ID"]);
$aSort = $grid_options->GetSorting(array("sort"=>array("id"=>"desc"), "vars"=>array("by"=>"by", "order"=>"order")));
$aNav = $grid_options->GetNavParams(array("nPageSize"=>$arParams["TICKETS_PER_PAGE"]));
$aSortArg = each($aSort["sort"]);
$aFilter = $grid_options->GetFilter($arResult["FILTER"]);

$aSortVal = $aSort['sort'];
$sort_order = current($aSortVal);
$sort_by = key($aSortVal);


if (strlen($arParams["SITE_ID"]) > 0)
	$aFilter["LID"] = $arParams["SITE_ID"];

$rsTickets = CTicket::GetList(
	$sort_by,
	$sort_order,
	$aFilter,
示例#6
0
                }
            }
            LocalRedirect($APPLICATION->GetCurPageParam("", array("ACTION", "ID", "ENTITY_TYPE", "ENTITY_CODE", "sessid")));
            break;
    }
}
$arResult = array("USER_ID" => $USER->GetID(), "IDEA" => array(), "SUBSCRIBE" => array(), "IDEA_STATUS" => array(), "GRID" => array());
//Get Idea subscribtion
if ($arResult["USER_ID"] > 0) {
    //InitGrid
    $GridOptions = new CGridOptions($arResult["GRID_ID"]);
    //Grid Sort
    $arSort = $GridOptions->GetSorting(array("sort" => array("DATE_PUBLISH" => "DESC"), "vars" => array("by" => "by", "order" => "order")));
    $arResult["GRID"]["SORT"] = $arSort["sort"];
    $arResult["GRID"]["SORT_VARS"] = $arSort["vars"];
    $arNav = $GridOptions->GetNavParams(array("nPageSize" => 25));
    $db_res = \Bitrix\Idea\NotifyEmailTable::getList(array('filter' => array("USER_ID" => $arResult["USER_ID"]), 'select' => array("ID" => "RUNTIME_ID", "SUBSCRIBE_TYPE", "ENTITY_TYPE", "ENTITY_CODE", "CATEGORY_NAME" => "ASCENDED_CATEGORIES.NAME"), 'order' => array("ENTITY_TYPE" => "ASC", "ENTITY_CODE" => "ASC"), 'runtime' => array(new \Bitrix\Main\Entity\ExpressionField('RUNTIME_ID', \Bitrix\Main\Application::getConnection()->getSqlHelper()->getConcatFunction("CASE " . "WHEN %s='" . \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_IDEA . "' AND %s='' THEN '" . CIdeaManagmentEmailNotify::SUBSCRIBE_ALL . "' " . "WHEN %s='" . \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_IDEA . "' THEN '" . CIdeaManagmentEmailNotify::SUBSCRIBE_IDEA_COMMENT . "' " . "WHEN %s='" . \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_CATEGORY . "' AND %s='' THEN '" . CIdeaManagmentEmailNotify::SUBSCRIBE_ALL_IDEA . "' " . "WHEN %s='" . \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_CATEGORY . "' THEN '" . \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_CATEGORY . "' " . "ELSE 'UNK' END", "%s"), array("ENTITY_TYPE", "ENTITY_CODE", "ENTITY_TYPE", "ENTITY_TYPE", "ENTITY_CODE", "ENTITY_TYPE", "ENTITY_CODE")))));
    $oIdeaSubscribe = new CDBResult($db_res);
    $oIdeaSubscribe->NavStart($arNav["nPageSize"], false);
    //Select Subscribe
    $arBlogPostId = array();
    while ($r = $oIdeaSubscribe->Fetch()) {
        $arResult["SUBSCRIBE"][] = $r["ID"];
        if ($r["ID"] == CIdeaManagmentEmailNotify::SUBSCRIBE_ALL) {
            $arResult["IDEA"] = array(CIdeaManagmentEmailNotify::SUBSCRIBE_ALL => $r + array("TITLE" => GetMessage("IDEA_SUBSCRIBE_ALL_SUBSCRIBED"), "ID" => CIdeaManagmentEmailNotify::SUBSCRIBE_ALL)) + $arResult["IDEA"];
        } else {
            if ($r["ID"] == CIdeaManagmentEmailNotify::SUBSCRIBE_ALL_IDEA) {
                $arResult["IDEA"] = array(CIdeaManagmentEmailNotify::SUBSCRIBE_ALL_IDEA => $r + array("TITLE" => GetMessage("IDEA_SUBSCRIBE_ALL_IDEA_SUBSCRIBED"), "ID" => CIdeaManagmentEmailNotify::SUBSCRIBE_ALL_IDEA)) + $arResult["IDEA"];
            } else {
                if ($r["ENTITY_TYPE"] == \Bitrix\Idea\NotifyEmailTable::ENTITY_TYPE_CATEGORY) {
                    $arResult["IDEA"][$r["ID"]] = $r + array("TITLE" => !!$r["CATEGORY_NAME"] ? $r["CATEGORY_NAME"] : GetMessage("IDEA_SUBSCRIBE_NOT_FOUND_2", array("#CODE#" => $r["ENTITY_CODE"])));
示例#7
0
        if (!empty($arIDs)) {
            $dbSection = CIBlockSection::GetList(array(), array('IBLOCK_ID' => $catalogID, 'ID' => $arIDs, 'GLOBAL_ACTIVE' => 'Y', 'CHECK_PERMISSIONS' => 'N'), false, array('ID'));
            $section = new CIBlockSection();
            while ($arSection = $dbSection->Fetch()) {
                $sectionID = $arSection['ID'];
                $arSectionFields = isset($arFields[$sectionID]) ? $arFields[$sectionID] : null;
                // Is only one field allowed: 'NAME'.
                if (!(is_array($arSectionFields) && isset($arSectionFields['NAME']))) {
                    continue;
                }
                $section->Update($sectionID, array('NAME' => $arSectionFields['NAME'], 'CHECK_PERMISSIONS' => 'N'));
            }
        }
        if (!isset($_GET['AJAX_CALL'])) {
            LocalRedirect($arResult['SECTION_LIST_URL']);
        }
    }
}
// Preparing of grid data
$gridOptions = new CGridOptions($arResult['GRID_ID']);
$arFilter = array('IBLOCK_ID' => $catalogID, 'GLOBAL_ACTIVE' => 'Y', 'CHECK_PERMISSIONS' => 'N', 'SECTION_ID' => $sectionID);
$rsSections = CIBlockSection::GetList(array('left_margin' => 'asc'), $arFilter);
$arNav = $gridOptions->GetNavParams(array('nPageSize' => isset($arParams['SECTION_COUNT']) ? intval($arParams['SECTION_COUNT']) : 20));
$rsSections->NavStart($arNav['nPageSize']);
$arResult['SECTIONS'] = array();
while ($arSection = $rsSections->GetNext()) {
    $arResult['SECTIONS'][] = $arSection;
}
$rsSections->bShowAll = false;
$arResult['NAV_OBJECT'] = $rsSections;
$this->IncludeComponentTemplate();
示例#8
0
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
if (!CModule::IncludeModule("voximplant")) {
    die;
}
use Bitrix\Voximplant as VI;
$arResult["GRID_ID"] = "voximpant_statistic_detail";
/*$arResult["FILTER"] = array(
	array("id"=>"PHONE_NUMBER", "name"=>"Phone"),
	array("id"=>"CALL_DURATION", "name"=>"Time"),
	array("id"=>"CALL_START_DATE", "name"=>"Date", "type"=>"date", "default"=>"Y"),
);*/
$gridOptions = new CGridOptions($arResult["GRID_ID"]);
$gridNav = $gridOptions->GetNavParams();
$limit = $gridNav["nPageSize"];
if (!intval($limit)) {
    $limit = 30;
}
$page = $_GET['PAGEN_1'] ? $_GET['PAGEN_1'] : 1;
$filter = array();
$filterByUser = '';
if (isset($_GET['USER_ID']) && intval($_GET['USER_ID'])) {
    $filterByUser = intval($_GET['USER_ID']);
    $filter["PORTAL_USER_ID"] = $filterByUser;
}
$filterByCode = '';
if (isset($_GET['CODE']) && preg_match('#^[[:alnum:]\\-]+$#D', $_GET['CODE'])) {
    $filterByCode = $_GET['CODE'];
    $filter["CALL_FAILED_CODE"] = $filterByCode;
示例#9
0
		array("id"=>"PROPERTY_COUNTOBJECT_VALUE", "name"=>"Количество объектов", "sort"=>"countobject", "default"=>false, "editable"=>false),
		array("id"=>"PROPERTY_PLANNEDRESPONSE_VALUE", "name"=>"Планируемый отклик", "sort"=>"plannedresponse", "default"=>false, "editable"=>false),
		array("id"=>"PROPERTY_PLANNEDBUDJET_VALUE", "name"=>"Планируемый бюджет", "sort"=>"plannedbudjet", "default"=>false, "editable"=>false),
		array("id"=>"PROPERTY_ACTUALBUDJET_VALUE", "name"=>"Фактический бюджет", "sort"=>"actualbudjet", "default"=>false, "editable"=>false),
		array("id"=>"PROPERTY_SALESPROGRAM_VALUE", "name"=>"Фактический бюджет", "sort"=>"salesprogramm", "default"=>false, "editable"=>false),
		array("id"=>"PROPERTY_ACTUALSALES_VALUE", "name"=>"Фактические продажи", "sort"=>"actualsales", "default"=>false, "editable"=>false),
		//array("id"=>"TEAMUSERS", "name"=>"Команда пользователей", "sort"=>"teamusers", "default"=>false, "editable"=>false),
		//array("id"=>"TEAMCONTACTS", "name"=>"Команда контрагентов", "sort"=>"teamcontacts", "default"=>false, "editable"=>false)
	);

//инициализируем объект с настройками пользователя для нашего грида
$grid_options = new CGridOptions($arResult["GRID_ID"]);
//какую сортировку сохранил пользователь (передаем то, что по умолчанию)
$aSort = $grid_options->GetSorting(array("sort"=>array("id"=>"desc"), "vars"=>array("by"=>"by", "order"=>"order")));
//размер страницы в постраничке (передаем умолчания)
$aNav = $grid_options->GetNavParams(array("nPageSize"=>10));
//получим текущий фильтр (передаем описанный выше фильтр)
$aFilter = $grid_options->GetFilter($arResult["FILTER"]);

if(isset($aFilter["FIND"])){
	$aFilter[$aFilter["FIND_list"]]=$aFilter["FIND"];
	unset($aFilter["FIND"],$aFilter["FIND_list"]);
}



if(count($aFilter) > 0){
    foreach ($aFilter as $key => $value) {
        switch ($key) {
            case 'NAME':
                $aFilter["NAME"] = "%".$value."%";