芝麻web文件管理V1.00
编辑当前文件:/home/pulsehostuk9/www/status.pulsehost.co.uk/app/core/Plugin.php
plugin_id, $config->name, $config->description, $config->version, $config->url, $config->author, $config->author_url, $config->status, $config->avatar_style, $config->icon)) { continue; } if(!isset($config->actions)) { $config->actions = true; } /* Get the plugin status */ if(file_exists($plugin_directory . 'settings.json')) { $config->settings = json_decode(file_get_contents($plugin_directory . 'settings.json')); $config->status = $config->settings->status; } /* Save the route to the plugin */ $config->path = $plugin_directory; /* Save the plugin */ self::$plugins[$config->plugin_id] = $config; /* Load the init file */ if(($config->status == 1 || $config->status == 'active') && file_exists($config->path . 'init.php')) { require_once $config->path . 'init.php'; } } } public static function get($plugin_id) { return self::$plugins[$plugin_id] ?? null; } /* Plugin status = 1 */ public static function is_active($plugin_id) { return self::get($plugin_id) && (self::get($plugin_id)->status === 1 || self::get($plugin_id)->status == 'active'); } /* Plugin status = 0 */ public static function is_installed($plugin_id) { return self::get($plugin_id) && (self::get($plugin_id)->status === 0 || self::get($plugin_id)->status == 'installed'); } /* Plugin status = -1 */ public static function is_uninstalled($plugin_id) { return self::get($plugin_id) && (self::get($plugin_id)->status === -1 || self::get($plugin_id)->status == 'uninstalled'); } /* Plugin status = -2 */ public static function is_inexistent($plugin_id) { return self::get($plugin_id) && (self::get($plugin_id)->status === -2 || self::get($plugin_id)->status == 'inexistent'); } public static function save_status($plugin_id, $new_status) { /* Enable the plugin from the config file */ $new_settings = \Altum\Plugin::get($plugin_id)->settings ? clone \Altum\Plugin::get($plugin_id)->settings : (object) []; $new_settings->status = $new_status; /* Save the new config file */ $settings_saved = file_put_contents(\Altum\Plugin::get($plugin_id)->path . 'settings.json', json_encode($new_settings)); chmod(\Altum\Plugin::get($plugin_id)->path . 'settings.json', 0777); return (bool) $settings_saved; } }