[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
*/
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
*/
public static function checkNewVersion() {
if($version = helper::getOnlineVersion()) {
//return (trim($version) !== common::ZWII_VERSION);
return ((version_compare(common::ZWII_VERSION,$version)) === -1);

View File

@ -36,7 +36,7 @@ class common {
const THUMBS_WIDTH = 640;
// Numéro de version
const ZWII_VERSION = '10.0.068';
const ZWII_VERSION = '10.0.069';
const ZWII_UPDATE_CHANNEL = "v10";
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() . 'config" data-tippy-content="Configurer le site">' . template::ico('cog-alt') . '</a></li>';
// Mise à jour automatique
$lastAutoUpdate = mktime(0, 0, 0);
$lastAutoUpdate = mktime(0, 0, 0);
if( $this->getData(['config','autoUpdate']) === true &&
$lastAutoUpdate > $this->getData(['core','lastAutoUpdate']) + 86400 ) {
$this->setData(['core','lastAutoUpdate',$lastAutoUpdate]);
if ( helper::checkNewVersion(common::ZWII_UPDATE_CHANNEL) ) {
$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>';
}
}
$lastAutoUpdate >= $this->getData(['core','lastAutoUpdate']) + 86400 ) {
$this->setData(['core','updateAvailable', true]);
$this->setData(['core','lastAutoUpdate',$lastAutoUpdate]);
}
// 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 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 {

View File

@ -184,7 +184,7 @@
<div class="row">
<div class="col12">
<div class="block">
<h4>Gestion et sauvegarde</h4>
<h4>Sauvegardes</h4>
<div class="row">
<div class="col6">
<?php echo template::checkbox('configAutoBackup', true, 'Sauvegarde automatisée quotidienne partielle', [
@ -205,18 +205,26 @@
]); ?>
</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="col6">
<?php echo template::checkbox('configAutoUpdate', true, 'Recherche de mise à jour automatisée ', [
'checked' => $this->getData(['config', 'autoUpdate']),
'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 class="col3">
<?php echo template::button('configUpdateForced', [
@ -226,12 +234,12 @@
</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 class="col12">
<?php echo 'Vous disposez de ZwiiCMS version <strong>' . common::ZWII_VERSION . '</strong>';
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>

View File

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

View File

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