[0.69] Mise à jour en ligne

This commit is contained in:
Fred Tempez 2020-04-23 10:17:40 +02:00
parent 2fb054cc57
commit 3794fe96a1
6 changed files with 38 additions and 36 deletions

View File

@ -131,7 +131,7 @@ class helper {
* @return string * @return string
*/ */
public static function getOnlineVersion() { public static function getOnlineVersion() {
return (@file_get_contents('http://zwiicms.com/update/version')); return (@file_get_contents('http://zwiicms.com/update/'. common::ZWII_UPDATE_CHANNEL . '/version'));
} }
@ -140,6 +140,7 @@ class helper {
* @return bool * @return bool
*/ */
public static function checkNewVersion() { public static function checkNewVersion() {
if($version = helper::getOnlineVersion()) { if($version = helper::getOnlineVersion()) {
//return (trim($version) !== common::ZWII_VERSION); //return (trim($version) !== common::ZWII_VERSION);
return ((version_compare(common::ZWII_VERSION,$version)) === -1); return ((version_compare(common::ZWII_VERSION,$version)) === -1);

View File

@ -36,7 +36,7 @@ class common {
const THUMBS_WIDTH = 640; const THUMBS_WIDTH = 640;
// Numéro de version // Numéro de version
const ZWII_VERSION = '10.0.068'; const ZWII_VERSION = '10.0.069';
const ZWII_UPDATE_CHANNEL = "v10"; const ZWII_UPDATE_CHANNEL = "v10";
public static $actions = []; public static $actions = [];
@ -2383,14 +2383,17 @@ class layout extends common {
$rightItems .= '<li><a href="' . helper::baseUrl() . 'theme" data-tippy-content="Personnaliser le thème">' . template::ico('brush') . '</a></li>'; $rightItems .= '<li><a href="' . helper::baseUrl() . 'theme" data-tippy-content="Personnaliser le thème">' . template::ico('brush') . '</a></li>';
$rightItems .= '<li><a href="' . helper::baseUrl() . 'config" data-tippy-content="Configurer le site">' . template::ico('cog-alt') . '</a></li>'; $rightItems .= '<li><a href="' . helper::baseUrl() . 'config" data-tippy-content="Configurer le site">' . template::ico('cog-alt') . '</a></li>';
// Mise à jour automatique // Mise à jour automatique
$lastAutoUpdate = mktime(0, 0, 0); $lastAutoUpdate = mktime(0, 0, 0);
if( $this->getData(['config','autoUpdate']) === true && if( $this->getData(['config','autoUpdate']) === true &&
$lastAutoUpdate > $this->getData(['core','lastAutoUpdate']) + 86400 ) { $lastAutoUpdate >= $this->getData(['core','lastAutoUpdate']) + 86400 ) {
$this->setData(['core','lastAutoUpdate',$lastAutoUpdate]); $this->setData(['core','updateAvailable', true]);
if ( helper::checkNewVersion(common::ZWII_UPDATE_CHANNEL) ) { $this->setData(['core','lastAutoUpdate',$lastAutoUpdate]);
$rightItems .= '<li><a id="barUpdate" 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>'; }
} // Afficher le bouton
} if ( $this->getData(['core','updateAvailable']) === true &&
$this->getData(['config','autoUpdate']) === true ) {
$rightItems .= '<li><a id="barUpdate" 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() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Configurer mon compte">' . template::ico('user', 'right') . '<span id="displayUsername">' . $this->getUser('firstname') . ' ' . $this->getUser('lastname') . '</span></a></li>'; $rightItems .= '<li><a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="Configurer mon compte">' . template::ico('user', 'right') . '<span id="displayUsername">' . $this->getUser('firstname') . ' ' . $this->getUser('lastname') . '</span></a></li>';
$rightItems .= '<li><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Se déconnecter">' . template::ico('logout') . '</a></li>'; $rightItems .= '<li><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="Se déconnecter">' . template::ico('logout') . '</a></li>';

View File

@ -470,20 +470,6 @@ class config extends common {
]); ]);
} }
/**
* Mise à jour présente
*/
public function updateOnline() {
// Nouvelle version
self::$newVersion = file_get_contents('http://zwiicms.com/update/' . common::ZWII_UPDATE_CHANNEL . '/version');
// Valeurs en sortie
$this->addOutput([
'notification' => 'Version installée : '. common::ZWII_VERSION . '<br>Version de la mise à jour en ligne : '. self::$newVersion ,
'redirect' => helper::baseUrl() . 'config',
'state' => true
]);
}
} }
class configHelper extends helper { class configHelper extends helper {

View File

@ -184,7 +184,7 @@
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<div class="block"> <div class="block">
<h4>Gestion et sauvegarde</h4> <h4>Sauvegardes</h4>
<div class="row"> <div class="row">
<div class="col6"> <div class="col6">
<?php echo template::checkbox('configAutoBackup', true, 'Sauvegarde automatisée quotidienne partielle', [ <?php echo template::checkbox('configAutoBackup', true, 'Sauvegarde automatisée quotidienne partielle', [
@ -205,18 +205,26 @@
]); ?> ]); ?>
</div> </div>
</div> </div>
<div class="row">
<div class="col12">
<?php echo template::checkbox('configMaintenance', true, 'Site en maintenance', [
'checked' => $this->getData(['config', 'maintenance'])
]); ?>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col12">
<div class="block">
<h4>Mise à jour</h4>
<div class="row"> <div class="row">
<div class="col6"> <div class="col6">
<?php echo template::checkbox('configAutoUpdate', true, 'Recherche de mise à jour automatisée ', [ <?php echo template::checkbox('configAutoUpdate', true, 'Recherche de mise à jour automatisée ', [
'checked' => $this->getData(['config', 'autoUpdate']), 'checked' => $this->getData(['config', 'autoUpdate']),
'help' => 'Vérification de l\'existence d\'une mise à jour en ligne une fois par jour.' 'help' => 'Vérification de l\'existence d\'une mise à jour en ligne une fois par jour.'
]); ?> ]); ?>
</div>
<div class="col3">
<?php echo template::button('configUpdateOnline', [
'href' => helper::baseUrl() . 'config/updateOnline',
'value' => 'Version en ligne'
]); ?>
</div> </div>
<div class="col3"> <div class="col3">
<?php echo template::button('configUpdateForced', [ <?php echo template::button('configUpdateForced', [
@ -226,12 +234,12 @@
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<?php echo template::checkbox('configMaintenance', true, 'Site en maintenance', [ <?php echo 'Vous disposez de ZwiiCMS version <strong>' . common::ZWII_VERSION . '</strong>';
'checked' => $this->getData(['config', 'maintenance']) echo '. La version de la mise à jour en ligne est <strong>' . file_get_contents('http://zwiicms.com/update/' . common::ZWII_UPDATE_CHANNEL . '/version') . '</strong>';
]); ?> ?>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -208,6 +208,8 @@ class install extends common {
FILE_APPEND FILE_APPEND
) !== false); ) !== false);
} }
// RAZ la mise à jour auto
$this->setData(['core','updateAvailable', false]);
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'display' => self::DISPLAY_JSON, 'display' => self::DISPLAY_JSON,

View File

@ -4,6 +4,7 @@ class init extends common {
'config' => [ 'config' => [
'analyticsId' => '', 'analyticsId' => '',
'autoBackup' => true, 'autoBackup' => true,
'autoUpdate' => true,
'cookieConsent' => true, 'cookieConsent' => true,
'favicon' => 'favicon.ico', 'favicon' => 'favicon.ico',
'homePageId' => 'accueil', 'homePageId' => 'accueil',
@ -31,6 +32,7 @@ class init extends common {
'lastBackup' => 0, 'lastBackup' => 0,
'lastClearTmp' => 0, 'lastClearTmp' => 0,
'lastAutoUpdate' => 0, 'lastAutoUpdate' => 0,
'updateAvailable' => false,
'baseUrl' => '' 'baseUrl' => ''
], ],
'page' => [ 'page' => [