GetGroupRight("perfmon"); if ($RIGHT == "D" || $DB->type !== "MYSQL") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); $isAdmin = $USER->CanDoOperation('edit_php'); $sTableID = "tbl_perfmon_index_complete"; $lAdmin = new CAdminList($sTableID, $oSort); if (($arID = $lAdmin->GroupAction()) && $RIGHT >= "W") { switch ($_REQUEST['action']) { case "delete_ban": foreach ($arID as $ID) CPerfomanceIndexComplete::Delete($ID); break; case "delete_index": if ($isAdmin) { foreach ($arID as $ID) { $rs = CPerfomanceIndexComplete::GetList(array("=ID" => $ID)); while ($ar = $rs->Fetch()) { if ($DB->Query("ALTER TABLE ".$ar["TABLE_NAME"]." DROP INDEX ".$ar["INDEX_NAME"])) CPerfomanceIndexComplete::Delete($ID); } } } break; } } $lAdmin->AddHeaders(array( array( "id" => "BANNED", "content" => GetMessage("PERFMON_ICOMPLETE_STATUS"), "align" => "center", "default" => true, ), array( "id" => "TABLE_NAME", "content" => GetMessage("PERFMON_ICOMPLETE_TABLE_NAME"), "default" => true, ), array( "id" => "COLUMN_NAMES", "content" => GetMessage("PERFMON_ICOMPLETE_COLUMN_NAMES"), "default" => true, ), array( "id" => "INDEX_NAME", "content" => GetMessage("PERFMON_ICOMPLETE_INDEX_NAME"), "default" => true, ), )); $cData = new CPerfomanceIndexComplete; $rsData = $cData->GetList(); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); $lAdmin->NavText($rsData->GetNavPrint(GetMessage("PERFMON_ICOMPLETE_PAGE"))); while ($arRes = $rsData->NavNext(true, "f_")) { $row = $lAdmin->AddRow($f_NAME, $arRes); $arActions = array(); $row->AddViewField("COLUMN_NAMES", str_replace(",", "
", $f_COLUMN_NAMES)); if ($f_BANNED == "N") { $row->AddViewField("BANNED", ''); if ($isAdmin) { $arActions[] = array( "TEXT" => GetMessage("PERFMON_ICOMPLETE_DELETE_INDEX"), "ACTION" => $lAdmin->ActionDoGroup($f_ID, 'delete_index'), ); } } elseif ($f_BANNED == "Y") { $row->AddViewField("BANNED", ''); $row->AddViewField("INDEX_NAME", GetMessage("PERFMON_ICOMPLETE_NO_INDEX")); $arActions[] = array( "TEXT" => GetMessage("PERFMON_ICOMPLETE_DELETE_BAN"), "ACTION" => $lAdmin->ActionDoGroup($f_ID, 'delete_ban'), ); } else { $row->AddViewField("BANNED", ''); } if (!empty($arActions)) $row->AddActions($arActions); } $lAdmin->AddFooter( array( array( "title" => GetMessage("MAIN_ADMIN_LIST_SELECTED"), "value" => $rsData->SelectedRowsCount(), ), ) ); $lAdmin->AddAdminContextMenu(array()); $lAdmin->CheckListMode(); $APPLICATION->SetTitle(GetMessage("PERFMON_ICOMPLETE_TITLE")); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); $lAdmin->DisplayList(); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_admin.php");?>