LinkScriptFromAppRoot("js/forms-json-utils.js"); $oP->LinkScriptFromAppRoot("js/wizardhelper.js"); $oP->LinkScriptFromAppRoot("js/wizard.utils.js"); $oP->LinkScriptFromAppRoot("js/extkeywidget.js"); $oP->LinkScriptFromAppRoot("js/jquery.blockUI.js"); $sBaseClass = 'TagSetFieldData'; $sClass = utils::ReadParam('class', '', false, 'class'); $sOQLClause = utils::ReadParam('oql_clause', '', false, 'raw_data'); $sFilter = utils::ReadParam('filter', '', false, 'raw_data'); $sOperation = utils::ReadParam('operation', ''); $oP->add(''); $oP->SetBreadCrumbEntry('ui-tool-tag-admin', Dict::S('Menu:TagAdminMenu'), Dict::S('Menu:TagAdminMenu+'), '', 'fas fa-tags', iTopWebPage::ENUM_BREADCRUMB_ENTRY_ICON_TYPE_CSS_CLASSES); $sSearchHeaderForceDropdown = '\n"; try { if ($sOperation == 'search_form') { $sOQL = "SELECT $sClass $sOQLClause"; $oFilter = DBObjectSearch::FromOQL($sOQL); } else { // Second part: advanced search form: if (!empty($sFilter)) { $oFilter = DBSearch::unserialize($sFilter); } else if (!empty($sClass)) { $oFilter = new DBObjectSearch($sClass); } } } catch (CoreException $e) { $oFilter = new DBObjectSearch($sClass); $oP->P("".Dict::Format('UI:TagSetFieldData:Error', $e->getHtmlDesc()).""); } if (!empty($oFilter)) { $oSearchContext = new ContextTag(ContextTag::TAG_OBJECT_SEARCH); $oSet = new CMDBObjectSet($oFilter); $oBlock = new DisplayBlock($oFilter, 'search', false); $aExtraParams = $oAppContext->GetAsHash(); $aExtraParams['open'] = true; $aExtraParams['class'] = $sClass; $aExtraParams['action'] = utils::GetAbsoluteUrlAppRoot().'pages/tagadmin.php'; $aExtraParams['table_id'] = '1'; $aExtraParams['search_header_force_dropdown'] = $sSearchHeaderForceDropdown; $aExtraParams['submit_on_load'] = false; $oBlock->Display($oP, 0, $aExtraParams); // Search results $oResultBlock = new DisplayBlock($oFilter, 'list', false); $oResultBlock->Display($oP, 1); // Menu node $sFilter = $oFilter->ToOQL(); $oP->add("\n\n"); } else { $oP->add("

"); $oP->add(Dict::S('UI:TagAdminMenu:NoTags')); $oP->add("

"); } $oP->add("\n"); $oP->output(); } catch (Exception $e) { require_once(APPROOT.'setup/setuppage.class.inc.php'); $oP = new ErrorPage(Dict::S('UI:PageTitle:FatalError')); $oP->add("

".Dict::S('UI:FatalErrorMessage')."

\n"); //$oP->error(Dict::Format('UI:Error_Details', $e->getMessage())); $oP->output(); IssueLog::Error($e->getMessage()); }