'; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; foreach ($installed_packages as $pkg) { if (!$pkg['name']) { continue; } #check package version $txtcolor = ""; $upgradeavail = false; $missing = false; $vergetstr = ""; if (isset($pkg['broken'])) { // package is configured, but does not exist in the system $txtcolor = "text-danger"; $missing = true; $status = gettext('Package is configured, but not installed!'); } else if (isset($pkg['installed_version']) && isset($pkg['version'])) { $version_compare = pkg_version_compare($pkg['installed_version'], $pkg['version']); if ($version_compare == '>') { // we're running a newer version of the package $status = sprintf(gettext('Newer than available (%s)'), $pkg['version']); } else if ($version_compare == '<') { // we're running an older version of the package $status = sprintf(gettext('Upgrade available to %s'), $pkg['version']); $txtcolor = "text-warning"; $upgradeavail = true; $vergetstr = '&from=' . $pkg['installed_version'] . '&to=' . $pkg['version']; } else if ($version_compare == '=') { // we're running the current version $status = gettext('Up-to-date'); } else { $status = gettext('Error comparing version'); } } else { // unknown available package version $status = gettext('Unknown'); $statusicon = 'question'; } $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .=' '; } $pkgtbl .=' '; $pkgtbl .='
' . gettext("Name") . '' . gettext("Category") . '' . gettext("Version") . '' . gettext("Description") . '' . gettext("Actions") . '
'; if ($upgradeavail) { $pkgtbl .=' '; } elseif ($missing) { $pkgtbl .=' '; } else { $pkgtbl .=' '; } $pkgtbl .=' '; $pkgtbl .=' ' . $pkg['shortname'] . ''; $pkgtbl .=' '; $pkgtbl .=' ' . implode(" ", $pkg['categories']); $pkgtbl .=' '; if (!$g['disablepackagehistory']) { $pkgtbl .=' ' . htmlspecialchars($pkg['installed_version']) . ''; } else { $pkgtbl .=' ' . htmlspecialchars($pkg['installed_version']); } $pkgtbl .=' '; $pkgtbl .=' ' . $pkg['desc']; if (is_array($pkg['deps']) && count($pkg['deps'])) { $pkgtbl .='

' . gettext("Package Dependencies") . ':
'; foreach ($pkg['deps'] as $pdep) { $pkgtbl .='  ' . ' ' . basename($pdep['origin']) . '-' . $pdep['version'] . ' '; } } $pkgtbl .='
'; $pkgtbl .=' '; if ($upgradeavail) { $pkgtbl .=' '; } else { $pkgtbl .=' '; } if (!isset($g['disablepackageinfo']) && $pkg['www'] != 'UNKNOWN') { $pkgtbl .=' '; } $pkgtbl .='
'; $pkgtbl .=' '; $pkgtbl .=' '; $pkgtbl .='
'; $pkgtbl .='
'; $pkgtbl .='

'; $pkgtbl .=' = ' . gettext('Update') . '  '; $pkgtbl .=' = ' . gettext('Current') . '  '; $pkgtbl .='

'; $pkgtbl .='

'; $pkgtbl .=' = ' . gettext('Remove') . '  '; $pkgtbl .=' = ' . gettext('Information') . '  '; $pkgtbl .=' = ' . gettext('Reinstall'); $pkgtbl .='

'; $pkgtbl .='

' . gettext("Newer version available") . '

'; $pkgtbl .='

' . gettext("Package is configured but not (fully) installed") . '

'; return $pkgtbl; } $pgtitle = array(gettext("System"), gettext("Package Manager"), gettext("Installed Packages")); include("head.inc"); $tab_array = array(); $tab_array[] = array(gettext("Installed Packages"), true, "pkg_mgr_installed.php"); $tab_array[] = array(gettext("Available Packages"), false, "pkg_mgr.php"); display_top_tabs($tab_array); ?>

'); ?>