mikuli.cz

:)
git clone https://git.sr.ht/~ashymad/mikuli.cz
Log | Files | Refs

commit 275637869e6d6e8b330a86d17b7188317270a564
parent dc031b7b5f05089e02e5b526f800c2c2edbb8fcd
Author: markseu <mark2011@mayberg.se>
Date:   Wed, 12 Oct 2022 10:29:45 +0200

Updated update extension, about command

Diffstat:
Msystem/extensions/update-current.ini | 4++--
Msystem/extensions/update.php | 40+++++++++++++++++++++++++++++++++-------
2 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/system/extensions/update-current.ini b/system/extensions/update-current.ini @@ -121,11 +121,11 @@ system/themes/stockholm-opensans-light.woff: stockholm-opensans-light.woff, crea system/themes/stockholm-opensans-regular.woff: stockholm-opensans-regular.woff, create, update, careful Extension: Update -Version: 0.8.82 +Version: 0.8.83 Description: Keep your website up to date. DocumentationUrl: https://github.com/annaesvensson/yellow-update DownloadUrl: https://github.com/datenstrom/yellow-extensions/raw/main/downloads/update.zip -Published: 2022-10-02 18:37:43 +Published: 2022-10-12 10:24:08 Developer: Anna Svensson Tag: feature system/extensions/update.php: update.php, create, update diff --git a/system/extensions/update.php b/system/extensions/update.php @@ -2,7 +2,7 @@ // Update extension, https://github.com/annaesvensson/yellow-update class YellowUpdate { - const VERSION = "0.8.82"; + const VERSION = "0.8.83"; const PRIORITY = "2"; public $yellow; // access to API public $extensions; // number of extensions @@ -151,7 +151,7 @@ class YellowUpdate { $extensions = $this->getExtensionsFromText($text); if (!empty($extensions)) { $this->extensions = 0; - list($statusCode, $settings) = $this->getExtensionAboutInformation($extensions, "core, update"); + list($statusCode, $settings) = $this->getExtensionUninstallInformation($extensions, "core, update"); if ($statusCode==200) $statusCode = $this->removeExtensions($settings); if ($statusCode>=400) echo "ERROR uninstalling files: ".$this->yellow->page->errorMessage."\n"; echo "Yellow $command: Website ".($statusCode!=200 ? "not " : "")."updated"; @@ -615,11 +615,16 @@ class YellowUpdate { } // Return extension about information - public function getExtensionAboutInformation($extensions, $extensionsProtected = "") { + public function getExtensionAboutInformation($extensions) { $settings = array(); list($statusCode, $settingsCurrent) = $this->getExtensionSettings(false); + $settingsCurrent["Datenstrom Yellow"] = new YellowArray(); + $settingsCurrent["Datenstrom Yellow"]["version"] = YellowCore::RELEASE; + $settingsCurrent["Datenstrom Yellow"]["description"] = "Datenstrom Yellow is for people who make small websites."; + $settingsCurrent["Datenstrom Yellow"]["documentationUrl"] = "https://datenstrom.se/yellow/"; foreach ($extensions as $extension) { $found = false; + if (strtoloweru($extension)=="yellow") $extension = "Datenstrom Yellow"; foreach ($settingsCurrent as $key=>$value) { if (strtoloweru($key)==strtoloweru($extension)) { $settings[$key] = $settingsCurrent[$key]; @@ -632,10 +637,6 @@ class YellowUpdate { $this->yellow->page->error($statusCode, "Can't find extension '$extension'!"); } } - $protected = preg_split("/\s*,\s*/", $extensionsProtected); - foreach ($settings as $key=>$value) { - if (in_array($key, $protected)) unset($settings[$key]); - } return array($statusCode, $settings); } @@ -662,6 +663,31 @@ class YellowUpdate { return array($statusCode, $settings); } + // Return extension about information + public function getExtensionUninstallInformation($extensions, $extensionsProtected = "") { + $settings = array(); + list($statusCode, $settingsCurrent) = $this->getExtensionSettings(false); + foreach ($extensions as $extension) { + $found = false; + foreach ($settingsCurrent as $key=>$value) { + if (strtoloweru($key)==strtoloweru($extension)) { + $settings[$key] = $settingsCurrent[$key]; + $found = true; + break; + } + } + if (!$found) { + $statusCode = 500; + $this->yellow->page->error($statusCode, "Can't find extension '$extension'!"); + } + } + $protected = preg_split("/\s*,\s*/", $extensionsProtected); + foreach ($settings as $key=>$value) { + if (in_array($key, $protected)) unset($settings[$key]); + } + return array($statusCode, $settings); + } + // Return extension update information public function getExtensionUpdateInformation($extensions) { $settings = array();