%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/modules/controller/admin/ |
Current File : /home/bitrix/www/bitrix/modules/controller/admin/controller_group_admin.php |
<? require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php"); /** @global CMain $APPLICATION */ /** @global CDatabase $DB */ /** @global CUser $USER */ /** @global CUserTypeManager $USER_FIELD_MANAGER */ if (!$USER->CanDoOperation("controller_group_view") || !CModule::IncludeModule("controller")) { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/controller/prolog.php"); IncludeModuleLangFile(__FILE__); $entity_id = "CONTROLLER_GROUP"; $sTableID = "t_controll_group"; $oSort = new CAdminSorting($sTableID, "timestamp_x", "desc"); /** @global string $by */ /** @global string $order */ $lAdmin = new CAdminList($sTableID, $oSort); $arFilterRows = array( "ID" => "ID", "MODIFIED_BY" => GetMessage("CTRLR_GR_AD_FLT_MODIF"), "CREATED_BY" => GetMessage("CTRLR_GR_AD_FLT_CREAT"), ); $USER_FIELD_MANAGER->AddFindFields($entity_id, $arFilterRows); $filter = new CAdminFilter( $sTableID."_filter_id", $arFilterRows ); $arFilterFields = Array( "find_name", "find_id", "find_timestamp_x_from", "find_timestamp_x_to", "find_created_from", "find_created_to", ); $USER_FIELD_MANAGER->AdminListAddFilterFields($entity_id, $arFilterFields); $adminFilter = $lAdmin->InitFilter($arFilterFields); $arFilter = array( "ID" => $adminFilter["find_id"], "%NAME" => $adminFilter["find_name"], ">=TIMESTAMP_X" => $adminFilter["find_timestamp_x_from"], "<=TIMESTAMP_X" => $adminFilter["find_timestamp_x_to"], ">=DATE_CREATE" => $adminFilter["find_created_from"], "<=DATE_CREATE" => $adminFilter["find_created_to"], ); $USER_FIELD_MANAGER->AdminListAddFilter($entity_id, $arFilter); if ($USER->CanDoOperation("controller_group_manage") && $lAdmin->EditAction()) { foreach ($_POST['FIELDS'] as $ID => $arFields) { $ID = intval($ID); if (!$lAdmin->IsUpdated($ID)) continue; $DB->StartTransaction(); $USER_FIELD_MANAGER->AdminListPrepareFields($entity_id, $arFields); if (!CControllerGroup::Update($ID, $arFields)) { $e = $APPLICATION->GetException(); $lAdmin->AddUpdateError(GetMessage("CTRLR_GR_AD_ERR1")." #".$ID.": ".$e->GetString(), $ID); $DB->Rollback(); } $DB->Commit(); } } if ($USER->CanDoOperation("controller_group_manage") && $arID = $lAdmin->GroupAction()) { if ($_REQUEST['action_target'] == 'selected') { $rsData = CControllerGroup::GetList(Array($by => $order), $arFilter); while ($arRes = $rsData->Fetch()) $arID[] = $arRes['ID']; } foreach ($arID as $ID) { if (strlen($ID) <= 0) continue; $ID = intval($ID); switch ($_REQUEST['action']) { case "delete": @set_time_limit(0); $DB->StartTransaction(); if (!CControllerGroup::Delete($ID)) { $e = $APPLICATION->GetException(); $DB->Rollback(); $lAdmin->AddGroupError(GetMessage("CTRLR_GR_AD_ERR2").":".$e->GetString(), $ID); } $DB->Commit(); break; } } } $arHeaders = array(); $arHeaders[] = array( "id" => "NAME", "content" => GetMessage("CTRLR_GR_AD_COL_NAME"), "default" => true, "sort" => "name", ); $arHeaders[] = array( "id" => "TIMESTAMP_X", "content" => GetMessage("CTRLR_GR_AD_COL_MOD"), "default" => true, "sort" => "timestamp_x", ); $arHeaders[] = array( "id" => "MODIFIED_BY", "content" => GetMessage("CTRLR_GR_AD_COL_MODBY"), "default" => true, "sort" => "modified_by", ); $arHeaders[] = array( "id" => "DATE_CREATE", "content" => GetMessage("CTRLR_GR_AD_COL_CRE"), "sort" => "DATE_CREATE", ); $arHeaders[] = array( "id" => "CREATED_BY", "content" => GetMessage("CTRLR_GR_AD_COL_CREBY"), "sort" => "CREATED_BY", ); $arHeaders[] = array( "id" => "DESCRIPTION", "content" => GetMessage("CTRLR_GR_AD_COL_DESC"), ); $arHeaders[] = array( "id" => "COUNTER_UPDATE_PERIOD", "content" => GetMessage("CTRLE_GR_AD_COUNTER_UPD_PER"), "sort" => "COUNTER_UPDATE_PERIOD", ); $arHeaders[] = array( "id" => "CHECK_COUNTER_FREE_SPACE", "content" => GetMessage("CTRLE_GR_AD_COUNTER_FREE"), "sort" => "CHECK_COUNTER_FREE_SPACE", ); $arHeaders[] = array( "id" => "CHECK_COUNTER_SITES", "content" => GetMessage("CTRLE_GR_AD_COUNTER_SITES"), "sort" => "CHECK_COUNTER_SITES", ); $arHeaders[] = array( "id" => "CHECK_COUNTER_USERS", "content" => GetMessage("CTRLE_GR_AD_COUNTER_USERS"), "sort" => "CHECK_COUNTER_USERS", ); $arHeaders[] = array( "id" => "CHECK_COUNTER_LAST_AUTH", "content" => GetMessage("CTRLE_GR_AD_COUNTER_LAST_AU"), "sort" => "CHECK_COUNTER_LAST_AUTH", ); $arHeaders[] = array( "id" => "ID", "content" => "ID", "default" => true, "sort" => "id", ); $USER_FIELD_MANAGER->AdminListAddHeaders($entity_id, $arHeaders); $lAdmin->AddHeaders($arHeaders); $rsData = CControllerGroup::GetList(Array($by => $order), $arFilter, $lAdmin->GetVisibleHeaderColumns()); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); $lAdmin->NavText($rsData->GetNavPrint(GetMessage("CTRLR_GR_AD_NAV"))); while ($arRes = $rsData->Fetch()) { $row =& $lAdmin->AddRow($arRes["ID"], $arRes, 'controller_group_edit.php?lang='.LANGUAGE_ID.'&ID='.intval($arRes['ID'])); $USER_FIELD_MANAGER->AddUserFields($entity_id, $arRes, $row); $htmlName = '('.$arRes['MODIFIED_BY_LOGIN'].') '.$arRes['MODIFIED_BY_NAME'].' '.$arRes['MODIFIED_BY_LAST_NAME']; adminListAddUserLink($row, "MODIFIED_BY", $arRes['MODIFIED_BY'], $htmlName); $htmlName = '('.$arRes['CREATED_BY_LOGIN'].') '.$arRes['CREATED_BY_NAME'].' '.$arRes['CREATED_BY_LAST_NAME']; adminListAddUserLink($row, "CREATED_BY", $arRes['CREATED_BY'], $htmlName); $row->AddInputField("NAME", array("size" => "35")); $htmlLink = 'controller_group_edit.php?ID='.urlencode($arRes['ID']).'&lang='.LANGUAGE_ID; $row->AddViewField("NAME", '<a href="'.htmlspecialcharsbx($htmlLink).'">'.htmlspecialcharsEx($arRes['NAME']).'</a>'); $row->AddInputField("COUNTER_UPDATE_PERIOD", array("size" => "5")); $row->AddCheckField("CHECK_COUNTER_FREE_SPACE"); $row->AddCheckField("CHECK_COUNTER_SITES"); $row->AddCheckField("CHECK_COUNTER_USERS"); $row->AddCheckField("CHECK_COUNTER_LAST_AUTH"); if ($USER->CanDoOperation("controller_group_manage")) { $arActions = array( array( "ICON" => "edit", "DEFAULT" => "Y", "TEXT" => GetMessage("CTRLR_GR_AD_MENU_EDIT"), "ACTION" => $lAdmin->ActionRedirect("controller_group_edit.php?ID=".urlencode($arRes['ID'])."&lang=".LANGUAGE_ID) ), array( "ICON" => "copy", "TEXT" => GetMessage("CTRLR_GR_AD_MENU_COPY"), "ACTION" => $lAdmin->ActionRedirect("controller_group_edit.php?copy_id=".urlencode($arRes['ID'])."&lang=".LANGUAGE_ID) ), array("SEPARATOR" => true), array( "ICON" => "delete", "TEXT" => GetMessage("CTRLR_GR_AD_MENU_DEL"), "ACTION" => "if(confirm('".CUtil::JSEscape(GetMessage("CTRLR_GR_AD_MENU_DEL_CONFIRM"))."')) ".$lAdmin->ActionDoGroup($arRes['ID'], "delete"), ), ); $row->AddActions($arActions); } } $lAdmin->AddFooter( array( array("title" => GetMessage("MAIN_ADMIN_LIST_SELECTED"), "value" => $rsData->SelectedRowsCount()), array("counter" => true, "title" => GetMessage("MAIN_ADMIN_LIST_CHECKED"), "value" => "0"), ) ); if ($USER->CanDoOperation("controller_group_manage")) { $lAdmin->AddGroupActionTable(array( "delete" => GetMessage("MAIN_ADMIN_LIST_DELETE"), ) ); $aContext = array( array( "ICON" => "btn_new", "TEXT" => GetMessage("MAIN_ADD"), "LINK" => "controller_group_edit.php?lang=".LANGUAGE_ID, "TITLE" => GetMessage("MAIN_ADD") ), ); } else { $lAdmin->bCanBeEdited = false; $aContext = array(); } $lAdmin->AddAdminContextMenu($aContext); $lAdmin->CheckListMode(); $APPLICATION->SetTitle(GetMessage("CTRLR_GR_AD_TITLE")); require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/prolog_admin_after.php"); ?> <form name="form1" method="GET" action="<? echo $APPLICATION->GetCurPage() ?>?"> <? $filter->Begin(); ?> <tr> <td nowrap><label for="find_name"><?=GetMessage("CTRLR_GR_AD_COL_NAME")?></label>:</td> <td nowrap> <input type="text" name="find_name" id="find_name" value="<? echo htmlspecialcharsbx($adminFilter['find_name']) ?>" size="47"> </td> </tr> <tr> <td nowrap><label for="find_id"><?=GetMessage("CTRLR_GR_AD_COL_ID")?></label>:</td> <td nowrap> <input type="text" name="find_id" id="find_id" value="<? echo htmlspecialcharsbx($adminFilter['find_id']) ?>" size="47"> </td> </tr> <tr> <td nowrap><?=GetMessage("CTRLR_GR_AD_FLT_MODIF")?>:</td> <td nowrap><? echo CalendarPeriod("find_timestamp_x_from", $adminFilter['find_timestamp_x_from'], "find_timestamp_x_to", $adminFilter['find_timestamp_x_to'], "form1", "Y") ?></td> </tr> <tr> <td nowrap><?=GetMessage("CTRLR_GR_AD_FLT_CREAT")?>:</td> <td nowrap><? echo CalendarPeriod("find_created_from", $adminFilter['find_created_from'], "find_created_to", $adminFilter['find_created_to'], "form1", "Y") ?></td> </tr> <? if (false): ?> <tr> <td nowrap><?=GetMessage("CTRLR_GR_AD_FLT_ACT_FROM")?>:</td> <td nowrap><? echo CalendarPeriod("find_active_from_from", $adminFilter['find_active_from_from'], "find_active_from_to", $adminFilter['find_active_from_to'], "form1", "Y") ?></td> </tr> <tr> <td nowrap><?=GetMessage("CTRLR_GR_AD_FLT_ACT_TO")?>:</td> <td nowrap><? echo CalendarPeriod("find_active_to_from", $adminFilter['find_active_to_from'], "find_active_to_to", $adminFilter['find_active_to_to'], "form1", "Y") ?></td> </tr> <? endif ?> <? $USER_FIELD_MANAGER->AdminListShowFilter($entity_id); $filter->Buttons(array( "table_id" => $sTableID, "url" => $APPLICATION->GetCurPage(), "form" => "form1", )); $filter->End(); ?> </form> <? $lAdmin->DisplayList(); require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/epilog_admin.php");