diff --git a/system/src/Grav/Common/GPM/GPM.php b/system/src/Grav/Common/GPM/GPM.php index e206e2d54..8cfae1369 100644 --- a/system/src/Grav/Common/GPM/GPM.php +++ b/system/src/Grav/Common/GPM/GPM.php @@ -16,6 +16,10 @@ class GPM extends Iterator { return $this->installed; } + public function getInstalledPlugin($slug) { + return $this->installed['plugins'][$slug]; + } + public function getInstalledPlugins() { return $this->installed['plugins']; } @@ -24,6 +28,10 @@ class GPM extends Iterator { return isset($this->installed['plugins'][$slug]); } + public function getInstalledTheme($slug) { + return $this->installed['themes'][$slug]; + } + public function getInstalledThemes() { return $this->installed['themes']; } @@ -41,6 +49,15 @@ class GPM extends Iterator { return $count; } + public function getUpdatable() { + $items = [ + 'plugins' => $this->getUpdatablePlugins(), + 'themes' => $this->getUpdatableThemes() + ]; + + return $items; + } + public function getUpdatablePlugins() { $items = []; $repository = $this->repository['plugins']; @@ -55,12 +72,13 @@ class GPM extends Iterator { continue; } - $local_version = $plugin->version ? $plugin->version : 'unknown'; + $local_version = $plugin->version ? $plugin->version : 'Unknown'; $remote_version = $repository[$slug]->version; if (version_compare($local_version, $remote_version) < 0) { - $repository[$slug]->current_version = $local_version; - $items[$slug] = $repository[$slug]; + $repository[$slug]->available = $remote_version; + $repository[$slug]->version = $local_version; + $items[$slug] = $repository[$slug]; } } @@ -86,12 +104,13 @@ class GPM extends Iterator { continue; } - $local_version = $plugin->version ? $plugin->version : 'unknown'; + $local_version = $plugin->version ? $plugin->version : 'Unknown'; $remote_version = $repository[$slug]->version; if (version_compare($local_version, $remote_version) < 0) { - $repository[$slug]->current_version = $local_version; - $items[$slug] = $repository[$slug]; + $repository[$slug]->available = $remote_version; + $repository[$slug]->version = $local_version; + $items[$slug] = $repository[$slug]; } } @@ -103,10 +122,18 @@ class GPM extends Iterator { return array_key_exists($theme, $this->getUpdatableThemes()); } + public function getRepositoryPlugin($slug) { + return $this->repository['plugins'][$slug]; + } + public function getRepositoryPlugins() { return $this->repository['plugins']; } + public function getRepositoryTheme($slug) { + return $this->repository['plugins'][$slug]; + } + public function getRepositoryThemes() { return $this->repository['themes']; }