Parcourir la source

! Display the time a package was installed in the package manager.

Signed-off-by: Peter Spicer <[email protected]>
Peter Spicer il y a 10 ans
Parent
commit
af4c727801

+ 21 - 1
Sources/Packages.php

@@ -1428,7 +1428,6 @@ function PackageBrowse()
 				'version' . $type => array(
 					'header' => array(
 						'value' => $txt['mod_version'],
-						'style' => 'width: 25%;',
 					),
 					'data' => array(
 						'function' => create_function('$package_md5', '
@@ -1443,6 +1442,24 @@ function PackageBrowse()
 						'reverse' => 'version',
 					),
 				),
+				'time_installed' . $type => array(
+					'header' => array(
+						'value' => $txt['mod_installed_time'],
+					),
+					'data' => array(
+						'function' => create_function('$package_md5', '
+							global $context, $txt;
+
+							if (isset($context[\'available_' . $type . '\'][$package_md5]))
+								return !empty($context[\'available_' . $type . '\'][$package_md5][\'time_installed\']) ? timeformat($context[\'available_' . $type . '\'][$package_md5][\'time_installed\']) : $txt[\'not_applicable\'];
+						'),
+						'class' => 'smalltext',
+					),
+					'sort' => array(
+						'default' => 'time_installed',
+						'reverse' => 'time_installed',
+					),
+				),
 				'operations' . $type => array(
 					'header' => array(
 						'value' => '',
@@ -1561,6 +1578,7 @@ function list_getPackages($start, $items_per_page, $sort, $params, $installed)
 			$installed_mods[$installed_mod['package_id']] = array(
 				'id' => $installed_mod['id'],
 				'version' => $installed_mod['version'],
+				'time_installed' => $installed_mod['time_installed'],
 			);
 
 		// Get a list of all the ids installed, so the latest packages won't include already installed ones.
@@ -1579,6 +1597,7 @@ function list_getPackages($start, $items_per_page, $sort, $params, $installed)
 				'filename' => $installed_mod['filename'],
 				'installed_id' => $installed_mod['id'],
 				'version' => $installed_mod['version'],
+				'time_installed' => $installed_mod['time_installed'],
 				'is_installed' => true,
 				'is_current' => true,
 			);
@@ -1639,6 +1658,7 @@ function list_getPackages($start, $items_per_page, $sort, $params, $installed)
 			if (!empty($packageInfo))
 			{
 				$packageInfo['installed_id'] = isset($installed_mods[$packageInfo['id']]) ? $installed_mods[$packageInfo['id']]['id'] : 0;
+				$packageInfo['time_installed'] = isset($installed_mods[$packageInfo['id']]) ? $installed_mods[$packageInfo['id']]['time_installed'] : 0;
 
 				$packageInfo['sort_id'] = $sort_id[$packageInfo['type']];
 				$packageInfo['is_installed'] = isset($installed_mods[$packageInfo['id']]);

+ 2 - 1
Sources/Subs-Package.php

@@ -387,7 +387,7 @@ function loadInstalledPackages()
 
 	// Load the packages from the database - note this is ordered by install time to ensure latest package uninstalled first.
 	$request = $smcFunc['db_query']('', '
-		SELECT id_install, package_id, filename, name, version
+		SELECT id_install, package_id, filename, name, version, time_installed
 		FROM {db_prefix}log_packages
 		WHERE install_state != {int:not_installed}
 		ORDER BY time_installed DESC',
@@ -411,6 +411,7 @@ function loadInstalledPackages()
 			'filename' => $row['filename'],
 			'package_id' => $row['package_id'],
 			'version' => $row['version'],
+			'time_installed' => !empty($row['time_installed']) ? $row['time_installed'] : 0,
 		);
 	}
 	$smcFunc['db_free_result']($request);

+ 1 - 0
Themes/default/languages/Packages.english.php

@@ -57,6 +57,7 @@ $txt['language_extracted'] = 'The language pack has been installed, you can now
 
 $txt['mod_name'] = 'Mod Name';
 $txt['mod_version'] = 'Version';
+$txt['mod_installed_time'] = 'Installed';
 $txt['mod_author'] = 'Author';
 $txt['author_website'] = 'Author\'s Homepage';
 $txt['package_no_description'] = 'No description given';