mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Added warning message to admin panel.
This commit is contained in:
parent
7807138b7b
commit
f1b85dda13
5 changed files with 58 additions and 10 deletions
|
|
@ -140,6 +140,7 @@
|
||||||
Remote.updateCoreData(function (sResult, oData) {
|
Remote.updateCoreData(function (sResult, oData) {
|
||||||
|
|
||||||
CoreStore.coreUpdating(false);
|
CoreStore.coreUpdating(false);
|
||||||
|
CoreStore.coreVersion('');
|
||||||
CoreStore.coreRemoteVersion('');
|
CoreStore.coreRemoteVersion('');
|
||||||
CoreStore.coreRemoteRelease('');
|
CoreStore.coreRemoteRelease('');
|
||||||
CoreStore.coreVersionCompare(-2);
|
CoreStore.coreVersionCompare(-2);
|
||||||
|
|
@ -173,6 +174,8 @@
|
||||||
CoreStore.coreType(oData.Result.Type || 'stable');
|
CoreStore.coreType(oData.Result.Type || 'stable');
|
||||||
CoreStore.coreUpdatable(!!oData.Result.Updatable);
|
CoreStore.coreUpdatable(!!oData.Result.Updatable);
|
||||||
CoreStore.coreAccess(!!oData.Result.Access);
|
CoreStore.coreAccess(!!oData.Result.Access);
|
||||||
|
CoreStore.coreWarning(!!oData.Result.Warning);
|
||||||
|
CoreStore.coreVersion(oData.Result.Version || '');
|
||||||
CoreStore.coreRemoteVersion(oData.Result.RemoteVersion || '');
|
CoreStore.coreRemoteVersion(oData.Result.RemoteVersion || '');
|
||||||
CoreStore.coreRemoteRelease(oData.Result.RemoteRelease || '');
|
CoreStore.coreRemoteRelease(oData.Result.RemoteRelease || '');
|
||||||
CoreStore.coreVersionCompare(Utils.pInt(oData.Result.VersionCompare));
|
CoreStore.coreVersionCompare(Utils.pInt(oData.Result.VersionCompare));
|
||||||
|
|
@ -182,6 +185,8 @@
|
||||||
CoreStore.coreReal(false);
|
CoreStore.coreReal(false);
|
||||||
CoreStore.coreChannel('stable');
|
CoreStore.coreChannel('stable');
|
||||||
CoreStore.coreType('stable');
|
CoreStore.coreType('stable');
|
||||||
|
CoreStore.coreWarning(false);
|
||||||
|
CoreStore.coreVersion('');
|
||||||
CoreStore.coreRemoteVersion('');
|
CoreStore.coreRemoteVersion('');
|
||||||
CoreStore.coreRemoteRelease('');
|
CoreStore.coreRemoteRelease('');
|
||||||
CoreStore.coreVersionCompare(-2);
|
CoreStore.coreVersionCompare(-2);
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@
|
||||||
this.coreAccess = CoreStore.coreAccess;
|
this.coreAccess = CoreStore.coreAccess;
|
||||||
this.coreChecking = CoreStore.coreChecking;
|
this.coreChecking = CoreStore.coreChecking;
|
||||||
this.coreUpdating = CoreStore.coreUpdating;
|
this.coreUpdating = CoreStore.coreUpdating;
|
||||||
|
this.coreWarning = CoreStore.coreWarning;
|
||||||
|
this.coreVersion = CoreStore.coreVersion;
|
||||||
this.coreRemoteVersion = CoreStore.coreRemoteVersion;
|
this.coreRemoteVersion = CoreStore.coreRemoteVersion;
|
||||||
this.coreRemoteRelease = CoreStore.coreRemoteRelease;
|
this.coreRemoteRelease = CoreStore.coreRemoteRelease;
|
||||||
this.coreVersionCompare = CoreStore.coreVersionCompare;
|
this.coreVersionCompare = CoreStore.coreVersionCompare;
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,10 @@
|
||||||
this.coreType = ko.observable('stable');
|
this.coreType = ko.observable('stable');
|
||||||
this.coreUpdatable = ko.observable(true);
|
this.coreUpdatable = ko.observable(true);
|
||||||
this.coreAccess = ko.observable(true);
|
this.coreAccess = ko.observable(true);
|
||||||
|
this.coreWarning = ko.observable(false);
|
||||||
this.coreChecking = ko.observable(false).extend({'throttle': 100});
|
this.coreChecking = ko.observable(false).extend({'throttle': 100});
|
||||||
this.coreUpdating = ko.observable(false).extend({'throttle': 100});
|
this.coreUpdating = ko.observable(false).extend({'throttle': 100});
|
||||||
|
this.coreVersion = ko.observable('');
|
||||||
this.coreRemoteVersion = ko.observable('');
|
this.coreRemoteVersion = ko.observable('');
|
||||||
this.coreRemoteRelease = ko.observable('');
|
this.coreRemoteRelease = ko.observable('');
|
||||||
this.coreVersionCompare = ko.observable(-2);
|
this.coreVersionCompare = ko.observable(-2);
|
||||||
|
|
|
||||||
|
|
@ -1566,7 +1566,7 @@ class Actions
|
||||||
|
|
||||||
if ($this->GetCapa(false, \RainLoop\Enumerations\Capa::THEMES, $oAccount))
|
if ($this->GetCapa(false, \RainLoop\Enumerations\Capa::THEMES, $oAccount))
|
||||||
{
|
{
|
||||||
$sTheme = $oSettings->GetConf('Theme', $sTheme);
|
$sTheme = $oSettingsLocal->GetConf('Theme', $sTheme);
|
||||||
}
|
}
|
||||||
|
|
||||||
$aResult['SentFolder'] = $oSettingsLocal->GetConf('SentFolder', '');
|
$aResult['SentFolder'] = $oSettingsLocal->GetConf('SentFolder', '');
|
||||||
|
|
@ -4095,16 +4095,38 @@ class Actions
|
||||||
$sVersion = empty($aData['version']) ? '' : $aData['version'];
|
$sVersion = empty($aData['version']) ? '' : $aData['version'];
|
||||||
$sType = empty($aData['channel']) ? 'stable' : $aData['channel'];
|
$sType = empty($aData['channel']) ? 'stable' : $aData['channel'];
|
||||||
|
|
||||||
|
$sWarnings = empty($aData['warnings']) ? '' : $aData['warnings'];
|
||||||
|
$aWarnings = $sWarnings ? explode('|', $sWarnings) : array();
|
||||||
|
|
||||||
|
$sCurrentVersion = APP_VERSION;
|
||||||
|
|
||||||
|
$bShowWarning = false;
|
||||||
|
if ($sCurrentVersion !== APP_DEV_VERSION)
|
||||||
|
{
|
||||||
|
foreach ($aWarnings as $sWarningVersion)
|
||||||
|
{
|
||||||
|
$sWarningVersion = \trim($sWarningVersion);
|
||||||
|
|
||||||
|
if (\version_compare($sCurrentVersion, $sWarningVersion, '<') &&
|
||||||
|
\version_compare($sVersion, $sWarningVersion, '>='))
|
||||||
|
{
|
||||||
|
$bShowWarning = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $this->DefaultResponse(__FUNCTION__, array(
|
return $this->DefaultResponse(__FUNCTION__, array(
|
||||||
'Real' => $bReal,
|
'Real' => $bReal,
|
||||||
'Access' => $bRainLoopAccess,
|
'Access' => $bRainLoopAccess,
|
||||||
'Updatable' => $bRainLoopUpdatable,
|
'Updatable' => $bRainLoopUpdatable,
|
||||||
|
'Warning' => $bShowWarning,
|
||||||
'Channel' => $this->getCoreChannel(),
|
'Channel' => $this->getCoreChannel(),
|
||||||
'Type' => $sType,
|
'Type' => $sType,
|
||||||
'Version' => APP_VERSION,
|
'Version' => $sCurrentVersion,
|
||||||
'RemoteVersion' => $sVersion,
|
'RemoteVersion' => $sVersion,
|
||||||
'RemoteRelease' => empty($aData['release']) ? '' : $aData['release'],
|
'RemoteRelease' => empty($aData['release']) ? '' : $aData['release'],
|
||||||
'VersionCompare' => \version_compare(APP_VERSION, $sVersion)
|
'VersionCompare' => \version_compare($sCurrentVersion, $sVersion)
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4634,13 +4656,13 @@ class Actions
|
||||||
|
|
||||||
if ($this->GetCapa(false, \RainLoop\Enumerations\Capa::THEMES, $oAccount))
|
if ($this->GetCapa(false, \RainLoop\Enumerations\Capa::THEMES, $oAccount))
|
||||||
{
|
{
|
||||||
$this->setSettingsFromParams($oSettings, 'Theme', 'string', function ($sTheme) use ($self) {
|
$this->setSettingsFromParams($oSettingsLocal, 'Theme', 'string', function ($sTheme) use ($self) {
|
||||||
return $self->ValidateTheme($sTheme);
|
return $self->ValidateTheme($sTheme);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$oSettings->SetConf('Theme', $this->ValidateLanguage($oConfig->Get('webmail', 'theme', 'Default')));
|
$oSettingsLocal->SetConf('Theme', $this->ValidateLanguage($oConfig->Get('webmail', 'theme', 'Default')));
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->setSettingsFromParams($oSettings, 'MPP', 'int', function ($iValue) {
|
$this->setSettingsFromParams($oSettings, 'MPP', 'int', function ($iValue) {
|
||||||
|
|
@ -8620,11 +8642,19 @@ class Actions
|
||||||
$sLanguage = $this->Config()->Get('webmail', 'language', 'en');
|
$sLanguage = $this->Config()->Get('webmail', 'language', 'en');
|
||||||
$sTheme = $this->Config()->Get('webmail', 'theme', 'Default');
|
$sTheme = $this->Config()->Get('webmail', 'theme', 'Default');
|
||||||
|
|
||||||
$oSettings = $oAccount instanceof \RainLoop\Model\Account ? $this->SettingsProvider()->Load($oAccount) : null;
|
if ($oAccount instanceof \RainLoop\Model\Account)
|
||||||
|
{
|
||||||
|
$oSettings = $this->SettingsProvider()->Load($oAccount);
|
||||||
if ($oSettings instanceof \RainLoop\Settings)
|
if ($oSettings instanceof \RainLoop\Settings)
|
||||||
{
|
{
|
||||||
$sLanguage = $oSettings->GetConf('Language', $sLanguage);
|
$sLanguage = $oSettings->GetConf('Language', $sLanguage);
|
||||||
$sTheme = $oSettings->GetConf('Theme', $sTheme);
|
}
|
||||||
|
|
||||||
|
$oSettingsLocal = $this->SettingsProvider(true)->Load($oAccount);
|
||||||
|
if ($oSettingsLocal instanceof \RainLoop\Settings)
|
||||||
|
{
|
||||||
|
$sTheme = $oSettingsLocal->GetConf('Theme', $sTheme);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$sLanguage = $this->ValidateLanguage($sLanguage);
|
$sLanguage = $this->ValidateLanguage($sLanguage);
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<a class="g-ui-link" href="http://rainloop.net/" target="_blank">http://rainloop.net/</a>
|
<a class="g-ui-link" href="http://rainloop.net/" target="_blank">http://rainloop.net/</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="span6 rl-desc">
|
<div class="span8 rl-desc">
|
||||||
<h1 style="margin-bottom: 0;">RainLoop</h1>
|
<h1 style="margin-bottom: 0;">RainLoop</h1>
|
||||||
<h4 style="margin-top: 0;">
|
<h4 style="margin-top: 0;">
|
||||||
<span data-bind="text: version"></span>
|
<span data-bind="text: version"></span>
|
||||||
|
|
@ -37,6 +37,15 @@
|
||||||
(<span data-bind="text: coreRemoteRelease"></span>)
|
(<span data-bind="text: coreRemoteRelease"></span>)
|
||||||
</span>
|
</span>
|
||||||
<br />
|
<br />
|
||||||
|
<span data-bind="if: coreWarning">
|
||||||
|
<br />
|
||||||
|
<i class="icon-warning" style="color: red"></i>
|
||||||
|
|
||||||
|
<b>Warning!</b>
|
||||||
|
|
||||||
|
Please read the change log before updating.
|
||||||
|
<br />
|
||||||
|
</span>
|
||||||
<br />
|
<br />
|
||||||
<span data-bind="visible: coreUpdatable() && coreAccess()">
|
<span data-bind="visible: coreUpdatable() && coreAccess()">
|
||||||
<a class="btn" data-bind="click: updateCoreData">
|
<a class="btn" data-bind="click: updateCoreData">
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue