mirror of
https://github.com/RSS-Bridge/rss-bridge.git
synced 2025-08-03 09:35:57 +02:00
Reformat codebase v4 (#2872)
Reformat code base to PSR12 Co-authored-by: rssbridge <noreply@github.com>
This commit is contained in:
parent
66568e3a39
commit
4f75591060
398 changed files with 58607 additions and 56442 deletions
|
@ -1,62 +1,64 @@
|
|||
<?php
|
||||
|
||||
final class WordPressPluginUpdateBridge extends BridgeAbstract {
|
||||
const MAINTAINER = 'dvikan';
|
||||
const NAME = 'WordPress Plugins Update Bridge';
|
||||
const URI = 'https://wordpress.org/plugins/';
|
||||
const DESCRIPTION = 'Returns latest updates of wordpress.org plugins.';
|
||||
final class WordPressPluginUpdateBridge extends BridgeAbstract
|
||||
{
|
||||
const MAINTAINER = 'dvikan';
|
||||
const NAME = 'WordPress Plugins Update Bridge';
|
||||
const URI = 'https://wordpress.org/plugins/';
|
||||
const DESCRIPTION = 'Returns latest updates of wordpress.org plugins.';
|
||||
|
||||
const PARAMETERS = [
|
||||
[
|
||||
// The incorrectly named pluginUrl is kept for BC
|
||||
'pluginUrl' => [
|
||||
'name' => 'Plugin slug',
|
||||
'exampleValue' => 'akismet',
|
||||
'required' => true,
|
||||
'title' => 'Slug or url',
|
||||
]
|
||||
]
|
||||
];
|
||||
const PARAMETERS = [
|
||||
[
|
||||
// The incorrectly named pluginUrl is kept for BC
|
||||
'pluginUrl' => [
|
||||
'name' => 'Plugin slug',
|
||||
'exampleValue' => 'akismet',
|
||||
'required' => true,
|
||||
'title' => 'Slug or url',
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
public function collectData() {
|
||||
$input = trim($this->getInput('pluginUrl'));
|
||||
if (preg_match('#https://wordpress\.org/plugins/([\w-]+)#', $input, $m)) {
|
||||
$slug = $m[1];
|
||||
} else {
|
||||
$slug = str_replace(['/'], '', $input);
|
||||
}
|
||||
public function collectData()
|
||||
{
|
||||
$input = trim($this->getInput('pluginUrl'));
|
||||
if (preg_match('#https://wordpress\.org/plugins/([\w-]+)#', $input, $m)) {
|
||||
$slug = $m[1];
|
||||
} else {
|
||||
$slug = str_replace(['/'], '', $input);
|
||||
}
|
||||
|
||||
$pluginData = self::fetchPluginData($slug);
|
||||
$pluginData = self::fetchPluginData($slug);
|
||||
|
||||
if ($pluginData->versions === []) {
|
||||
throw new \Exception('This plugin does not have versioning data');
|
||||
}
|
||||
if ($pluginData->versions === []) {
|
||||
throw new \Exception('This plugin does not have versioning data');
|
||||
}
|
||||
|
||||
// We don't need trunk. I think it's the latest commit.
|
||||
unset($pluginData->versions->trunk);
|
||||
// We don't need trunk. I think it's the latest commit.
|
||||
unset($pluginData->versions->trunk);
|
||||
|
||||
foreach ($pluginData->versions as $version => $downloadUrl) {
|
||||
$this->items[] = [
|
||||
'title' => $version,
|
||||
'uri' => sprintf('https://wordpress.org/plugins/%s/#developers', $slug),
|
||||
'uid' => $downloadUrl,
|
||||
];
|
||||
}
|
||||
foreach ($pluginData->versions as $version => $downloadUrl) {
|
||||
$this->items[] = [
|
||||
'title' => $version,
|
||||
'uri' => sprintf('https://wordpress.org/plugins/%s/#developers', $slug),
|
||||
'uid' => $downloadUrl,
|
||||
];
|
||||
}
|
||||
|
||||
usort($this->items, function($a, $b) {
|
||||
return version_compare($b['title'], $a['title']);
|
||||
});
|
||||
}
|
||||
usort($this->items, function ($a, $b) {
|
||||
return version_compare($b['title'], $a['title']);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch plugin data from wordpress.org json api
|
||||
*
|
||||
* https://codex.wordpress.org/WordPress.org_API#Plugins
|
||||
* https://wordpress.org/support/topic/using-the-wordpress-org-api/
|
||||
*/
|
||||
private static function fetchPluginData(string $slug): \stdClass
|
||||
{
|
||||
$api = 'https://api.wordpress.org/plugins/info/1.2/?action=plugin_information&request[slug]=%s';
|
||||
return json_decode(getContents(sprintf($api, $slug)));
|
||||
}
|
||||
/**
|
||||
* Fetch plugin data from wordpress.org json api
|
||||
*
|
||||
* https://codex.wordpress.org/WordPress.org_API#Plugins
|
||||
* https://wordpress.org/support/topic/using-the-wordpress-org-api/
|
||||
*/
|
||||
private static function fetchPluginData(string $slug): \stdClass
|
||||
{
|
||||
$api = 'https://api.wordpress.org/plugins/info/1.2/?action=plugin_information&request[slug]=%s';
|
||||
return json_decode(getContents(sprintf($api, $slug)));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue