1.12.05 icone plugin rouge si module mis à jour

This commit is contained in:
Fred Tempez 2024-09-15 17:54:25 +02:00
parent e6236e5de2
commit f0aba44ddb
3 changed files with 49 additions and 11 deletions

View File

@ -1084,10 +1084,6 @@ class layout extends common
self::$siteContent === 'home' self::$siteContent === 'home'
&& $this->getUser('group') >= self::GROUP_ADMIN && $this->getUser('group') >= self::GROUP_ADMIN
) { ) {
$rightItems .= '<li>' . template::ico('puzzle', [
'help' => 'Modules',
'href' => helper::baseUrl() . 'plugin'
]) . '</li>';
$rightItems .= '<li>' . template::ico('flag', [ $rightItems .= '<li>' . template::ico('flag', [
'help' => 'Langues', 'help' => 'Langues',
'href' => helper::baseUrl() . 'language' 'href' => helper::baseUrl() . 'language'
@ -1117,15 +1113,45 @@ class layout extends common
) { ) {
$this->setData(['core', 'updateAvailable', true]); $this->setData(['core', 'updateAvailable', true]);
} }
// Recherche de mise à jour des modules
$store = plugin::getStore();
if (is_array($store)) {
// Modules installés
$infoModules = helper::getModules();
// Clés moduleIds dans les pages
$inPages = helper::arrayColumn($this->getData(['page']), 'moduleId', 'SORT_DESC');
// Parcourir les données des modules
foreach ($store as $key => $value) {
if (empty($key)) {
continue;
}
// Mise à jour d'un module
if (array_key_exists($key, $infoModules) === true) {
$this->setData(['core', 'updateModuleAvailable', true]);
}
} }
} }
}
}
// Afficher le bouton : Mise à jour détectée + activée // Afficher le bouton : Mise à jour détectée + activée
if ($this->getData(['core', 'updateAvailable'])) { if ($this->getData(['core', 'updateAvailable'])) {
$rightItems .= '<li><a href="' . helper::baseUrl() . 'install/update" data-tippy-content="Mettre à jour Zwii ' . common::ZWII_VERSION . ' vers ' . helper::getOnlineVersion(common::ZWII_UPDATE_CHANNEL) . '">' . template::ico('update colorRed') . '</a></li>'; $rightItems .= '<li><a href="' . helper::baseUrl() . 'install/update" data-tippy-content="Mettre à jour Zwii ' . common::ZWII_VERSION . ' vers ' . helper::getOnlineVersion(common::ZWII_UPDATE_CHANNEL) . '">' . template::ico('update colorRed') . '</a></li>';
} }
} }
if ($this->getData(['core', 'updateModuleAvailable'])) {
$rightItems .= '<li>' . template::ico('puzzle colorRed', [
'help' => 'Modules',
'href' => helper::baseUrl() . 'plugin'
]) . '</li>';
} else {
$rightItems .= '<li>' . template::ico('puzzle', [
'help' => 'Modules',
'href' => helper::baseUrl() . 'plugin'
]) . '</li>';
}
// Boutons depuis le groupe éditeur
if ( if (
$this->getUser('group') >= self::GROUP_EDITOR $this->getUser('group') >= self::GROUP_EDITOR
&& $this->getUser('permission', 'user', 'edit') && $this->getUser('permission', 'user', 'edit')

View File

@ -51,7 +51,7 @@ class common
const ACCESS_TIMER = 1800; const ACCESS_TIMER = 1800;
// Numéro de version // Numéro de version
const ZWII_VERSION = '1.12.04'; const ZWII_VERSION = '1.12.05';
// URL autoupdate // URL autoupdate
const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/campus-update/raw/branch/master/'; const ZWII_UPDATE_URL = 'https://forge.chapril.org/ZwiiCMS-Team/campus-update/raw/branch/master/';

View File

@ -25,7 +25,7 @@ class plugin extends common
'delete' => self::GROUP_ADMIN, 'delete' => self::GROUP_ADMIN,
'save' => self::GROUP_ADMIN, 'save' => self::GROUP_ADMIN,
'store' => self::GROUP_ADMIN, 'store' => self::GROUP_ADMIN,
'item' => self::GROUP_ADMIN, //'item' => self::GROUP_ADMIN,
// détail d'un objet // détail d'un objet
'upload' => self::GROUP_ADMIN, 'upload' => self::GROUP_ADMIN,
// Téléverser catalogue // Téléverser catalogue
@ -391,7 +391,6 @@ class plugin extends common
]; ];
} }
} }
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Catalogue de modules'), 'title' => helper::translate('Catalogue de modules'),
@ -414,6 +413,16 @@ class plugin extends common
]); ]);
} }
/**
* Retourne le contenu du store en ligne
* @return mixed
*/
public static function getStore()
{
$store = json_decode(helper::getUrlContents(self::BASEURL_STORE . self::MODULE_STORE . 'list'), true);
return $store;
}
/** /**
* Gestion des modules * Gestion des modules
*/ */
@ -561,6 +570,9 @@ class plugin extends common
} }
} }
// Désactive l'icône rouge
$this->setData(['core', 'updateModuleAvailable', false]);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Gestion des modules'), 'title' => helper::translate('Gestion des modules'),