From a1f08342c8b8502197159a9fd78e48e6cead4ea0 Mon Sep 17 00:00:00 2001 From: Cash Costello Date: Sat, 31 Jul 2010 19:22:47 +0000 Subject: improved the upgrade system and moved albums to use an ordered list for images --- actions/admin/upgrade.php | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 actions/admin/upgrade.php (limited to 'actions/admin/upgrade.php') diff --git a/actions/admin/upgrade.php b/actions/admin/upgrade.php new file mode 100644 index 000000000..9c4aef1cf --- /dev/null +++ b/actions/admin/upgrade.php @@ -0,0 +1,46 @@ +pluginspath}tidypics/version.php"; + +$local_version = get_plugin_setting('version', 'tidypics'); + +if ($version <= $local_version) { + register_error('No upgrade required'); + forward($_SERVER['HTTP_REFERER']); +} + +$base_dir = $CONFIG->pluginspath . 'tidypics/upgrades'; + +// taken from engine/lib/version.php +if ($handle = opendir($base_dir)) { + $upgrades = array(); + + while ($updatefile = readdir($handle)) { + // Look for upgrades and add to upgrades list + if (!is_dir("$base_dir/$updatefile")) { + if (preg_match('/^([0-9]{10})\.(php)$/', $updatefile, $matches)) { + $plugin_version = (int) $matches[1]; + if ($plugin_version > $local_version) { + $upgrades[] = "$base_dir/$updatefile"; + } + } + } + } + + // Sort and execute + asort($upgrades); + + if (sizeof($upgrades) > 0) { + foreach ($upgrades as $upgrade) { + include($upgrade); + } + } +} + +set_plugin_setting('version', $version, 'tidypics'); + +system_message("Tidypics has been upgraded"); + +forward($_SERVER['HTTP_REFERER']); -- cgit v1.2.3