"Metadata Field Editor", "index.php?P=MetadataFieldOrdering" => "Metadata Field Ordering", "index.php?P=AddQualifier" => "Qualifier Editor", "index.php?P=EditSearchConfig" => "Search Configuration", "index.php?P=ConfirmRebuildSearchDB" => "Rebuild Search Database", "index.php?P=ConfirmRebuildRecommenderDB" => "Rebuild Recommender Database", "index.php?P=ImportData" => "Import Tab-Delimited Data", "index.php?P=PurgeSampleData" => "Purge Sample Records", ]; $UserAdminMenuEntries = [ "index.php?P=UserList" => "Edit Users", "index.php?P=TrackUserComments" => "Track User Comments", "index.php?P=ImportUsers" => "Import User Accounts", "index.php?P=ExportUsers" => "Export User Accounts", ]; $SystemAdminMenuEntries = [ "index.php?P=EditSystemConfig" => "System Configuration", "index.php?P=EditInterfaceConfig" => "Interface Configuration", "index.php?P=FixityChecks" => "File Integrity Report", "index.php?P=EditPrivilegeNames" => "Edit Custom Privilege Flags", "index.php?P=Plugins" => "Plugins", "index.php?P=TaskQueue" => "Task Queue", ]; # ----- LOCAL FUNCTIONS ------------------------------------------------------ /** * Display menu entries in two columns. * @param array $MenuEntries Entries with links for the index and labels * for the values. */ function displayMenu(array $MenuEntries): void { ?>
    $Label) { # if we are halfway through the entries, move to second column if ($Index == ceil(count($MenuEntries) / 2)) { ?>
  •  
Get("UserName"); $LoginTime = StdLib::getPrettyTimestamp($User->Get("LastLoginDate")); $IdleTime = time() - strtotime($User->LastActiveDate()); $IdleTime = sprintf( "%d:%02d:%02d", $IdleTime / 3600, ($IdleTime % 3600) / 60, $IdleTime % 60 ); $Location = $User->lastLocation(); $Location = preg_replace("/P_([A-Za-z0-9]+)_/", "\\1:", $Location); if (!is_string($Location)) { $Location = "(unknown)"; } $From = StdLib::getHostName($User->LastIPAddress()); ?>
User Login Idle Where From
GetErrorMessages(); if (count($ErrMsgs)) { $Output = '"; if (isset($ErrMsgDisplayed)) { print $Output; } } } # ----- SETUP ---------------------------------------------------------------- $AF = ApplicationFramework::getInstance(); $PluginMgr = PluginManager::getInstance(); # retrieve data for administration menus $PluginMenus = Plugin::getAdminMenuEntries(); # retrieve data for Currently Logged In section $UFactory = new UserFactory(); $LoggedInUsers = $UFactory->getLoggedInUsers(); $RecentlyLoggedInUsers = $UFactory->getRecentlyLoggedInUsers(); # retrieve data for System Information section $DatabaseServerVersion = (new Database())->getServerVersion(true); $SupportedImageFormats = implode(", ", \ScoutLib\RasterImageFile::supportedFormatNames()); $LoadAverageString = "(unknown)"; if (function_exists("sys_getloadavg")) { $Load = sys_getloadavg(); if ($Load !== false) { $LoadAverageString = sprintf("%.2f / %.2f / %.2f", $Load[0], $Load[1], $Load[2]); } } # clear caches if requested if (isset($_GET["AC"]) && ($_GET["AC"] == "ClearPageCache")) { $AF->ClearPageCache(); $AF->ClearTemplateLocationCache(); $AF->ClearObjectLocationCache(); } # retrieve user currently logged in $User = User::getCurrentUser(); # ----- DISPLAY -------------------------------------------------------------- ?>
HasPriv(PRIV_SYSADMIN)) { if ($AF->GetOrphanedTaskCount()) { ?>TaskExecutionEnabled()) { ?>HasPriv(PRIV_SYSADMIN, PRIV_COLLECTIONADMIN)) { ?>

Collection Administration

HasPriv(PRIV_SYSADMIN, PRIV_USERADMIN)) { ?>

User Administration

HasPriv(PRIV_SYSADMIN)) { ?>

System Administration

Plugin Administration

$MenuEntries) { $Plugin = $PluginMgr->getPlugin($BaseName); if (!$Plugin->isReady()) { continue; } ?>

getName() ?>

HasPriv(PRIV_SYSADMIN, PRIV_USERADMIN)) { ?>

Users Currently Logged In

Users Recently Logged In

HasPriv(PRIV_SYSADMIN)) { ?>

Recent Log Messages

GetLogEntries(10); if (count($SysLogEntries)) { $LevelStrings = [ ApplicationFramework::LOGLVL_FATAL => "Fatal", ApplicationFramework::LOGLVL_ERROR => "Error", ApplicationFramework::LOGLVL_WARNING => "Warn", ApplicationFramework::LOGLVL_INFO => "Info", ApplicationFramework::LOGLVL_DEBUG => "Debug", ApplicationFramework::LOGLVL_TRACE => "Trace", ]; foreach ($SysLogEntries as $Entry) { # linkify any URLs in the message $Msg = htmlspecialchars($Entry["Message"]); $MaxDisplayedUrlLen = 50; $Msg = preg_replace( "~([[:alpha:]]+://[^<>[:space:]]{1," .$MaxDisplayedUrlLen."})([^<>[:space:]]*)~", "\\1", $Msg ); $RowClasses = "mv-content-sysadmin-logmsgs-row" ." mv-content-sysadmin-logmsgs-row-" .strtolower($LevelStrings[$Entry["Level"]]); ?>
(no log messages found)

System Information

SignalEvent("EVENT_SYSTEM_INFO_LIST"); if (count($SignalResult)) { foreach ($SignalResult as $HandlerName => $Items) { foreach ($Items as $Label => $Content) { ?>
Metavus Version
PHP Version
MySQL Version
Database Name DBName(); ?>
Supported Image Formats
PHP Configuration Summary phpinfo()
Server Time
Server Load Average     (1/5/15 minutes)
Page Cache PageCacheEnabled()) { $CacheInfo = $AF->GetPageCacheInfo(); print number_format($CacheInfo["NumberOfEntries"])." entries"; if ($CacheInfo["NumberOfEntries"]) { print ", oldest from " .StdLib::getPrettyTimestamp($CacheInfo["OldestTimestamp"]) ."    " ."CLEAR"; } } else { print "(disabled)"; } ?>