From: Valerie Pond Date: Sun, 25 Jun 2023 18:01:14 +0000 (+0100) Subject: Make a compatibility badge X-Git-Tag: 0.9~14 X-Git-Url: https://jfr.im/git/irc/unrealircd/unrealircd-webpanel.git/commitdiff_plain/a3599fda20d57248b09462cf5d10537675e18db9 Make a compatibility badge --- diff --git a/Classes/class-plugin-git.php b/Classes/class-plugin-git.php index 8d34c50..8b128be 100644 --- a/Classes/class-plugin-git.php +++ b/Classes/class-plugin-git.php @@ -1,62 +1,75 @@ 200) // Cache for 3.333 minutes lol + { + // come simba it is taem + $curl = curl_init($url); + + // Set the options + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // Return the response instead of printing it + curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); // Set the content type to JSON + curl_setopt($curl, CURLOPT_USERAGENT, "UnrealIRCd Admin Panel"); // This is Secret Agent UnrealIRCd Admin Panel reporting for doody + // Execute the request + $response = curl_exec($curl); + + // Check for errors + if ($response === false) + $this->err = curl_error($curl); + else { - $config['third-party-plugins']['data'] = NULL; - $config['third-party-plugins']['timestamp'] = 0; + $this->data = json_decode($response, false); + $config['third-party-plugins']['data'] = $this->data; + $config['third-party-plugins']['timestamp'] = time(); + write_config('third-party-plugins'); } - if (time() - $config['third-party-plugins']['timestamp'] > 200) // Cache for 3.333 minutes lol - { - // come simba it is taem - $curl = curl_init($url); - - // Set the options - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // Return the response instead of printing it - curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); // Set the content type to JSON - curl_setopt($curl, CURLOPT_USERAGENT, "UnrealIRCd Admin Panel"); // This is Secret Agent UnrealIRCd Admin Panel reporting for doody - // Execute the request - $response = curl_exec($curl); + } + else + $this->data = $config['third-party-plugins']['data']; - // Check for errors - if ($response === false) - $this->err = curl_error($curl); - else - { - $this->data = json_decode($response, false); - $config['third-party-plugins']['data'] = $this->data; - $config['third-party-plugins']['timestamp'] = time(); - write_config('third-party-plugins'); - } - } - else - $this->data = $config['third-party-plugins']['data']; - - } + } - public function ifInstalledLabel($name, $installed = false) + public function ifInstalledLabel($name, $installed = false) + { + if ($installed) + { ?> +
✔ Installed
+ + ?>
✔ Installed
- -
✔ Installed
- minver <= $wpversion) + { ?> +
Compatible
+ +
Inompatible
+err) die("Could not fetch list.\n"); + global $config; ?>
@@ -75,7 +89,6 @@ foreach($this->data->list as $p) { $installed = in_array($p->name, $config['plugins']) ? true : false; - if (is_string($p)) continue; @@ -90,7 +103,7 @@
-
ifInstalledLabel($p->name); ?>
+
ifInstalledLabel($p->name); $this->ifCompatible($p) ?>

title ?>

By contact" ?>" target="_blank">author ?>