mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Added contacts.sync_interval = 20 setting in application.ini (Closed #150)
This commit is contained in:
parent
d08689759d
commit
40d2548a53
14 changed files with 22 additions and 89 deletions
|
|
@ -180,21 +180,13 @@ RainLoopApp.prototype.reloadMessageListHelper = function (bEmptyList)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {Function} fResultFunc
|
* @param {Function} fResultFunc
|
||||||
* @param {boolean=} bForce = false
|
|
||||||
* @returns {boolean}
|
* @returns {boolean}
|
||||||
*/
|
*/
|
||||||
RainLoopApp.prototype.contactsSync = function (fResultFunc, bForce)
|
RainLoopApp.prototype.contactsSync = function (fResultFunc)
|
||||||
{
|
{
|
||||||
var oContacts = RL.data().contacts;
|
var oContacts = RL.data().contacts;
|
||||||
if (oContacts.importing() || oContacts.syncing() || !RL.data().enableContactsSync() || !RL.data().allowContactsSync())
|
if (oContacts.importing() || oContacts.syncing() || !RL.data().enableContactsSync() || !RL.data().allowContactsSync())
|
||||||
{
|
{
|
||||||
oContacts.skipNextSync = false;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (oContacts.skipNextSync && !bForce)
|
|
||||||
{
|
|
||||||
oContacts.skipNextSync = false;
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1011,6 +1003,7 @@ RainLoopApp.prototype.bootstart = function ()
|
||||||
var
|
var
|
||||||
sCustomLoginLink = '',
|
sCustomLoginLink = '',
|
||||||
sJsHash = RL.settingsGet('JsHash'),
|
sJsHash = RL.settingsGet('JsHash'),
|
||||||
|
iContactsSyncInterval = Utils.pInt(RL.settingsGet('ContactsSyncInterval')),
|
||||||
bGoogle = RL.settingsGet('AllowGoogleSocial'),
|
bGoogle = RL.settingsGet('AllowGoogleSocial'),
|
||||||
bFacebook = RL.settingsGet('AllowFacebookSocial'),
|
bFacebook = RL.settingsGet('AllowFacebookSocial'),
|
||||||
bTwitter = RL.settingsGet('AllowTwitterSocial')
|
bTwitter = RL.settingsGet('AllowTwitterSocial')
|
||||||
|
|
@ -1151,9 +1144,12 @@ RainLoopApp.prototype.bootstart = function ()
|
||||||
RL.folders();
|
RL.folders();
|
||||||
});
|
});
|
||||||
|
|
||||||
RL.sub('interval.10m-after5m', function () {
|
iContactsSyncInterval = 5 <= iContactsSyncInterval ? iContactsSyncInterval : 20;
|
||||||
|
iContactsSyncInterval = 320 >= iContactsSyncInterval ? iContactsSyncInterval : 320;
|
||||||
|
|
||||||
|
window.setInterval(function () {
|
||||||
RL.contactsSync();
|
RL.contactsSync();
|
||||||
});
|
}, iContactsSyncInterval * 60000 + 5000);
|
||||||
|
|
||||||
_.delay(function () {
|
_.delay(function () {
|
||||||
RL.contactsSync();
|
RL.contactsSync();
|
||||||
|
|
|
||||||
|
|
@ -90,8 +90,6 @@ function WebMailDataStorage()
|
||||||
this.contacts.exportingVcf = ko.observable(false).extend({'throttle': 200});
|
this.contacts.exportingVcf = ko.observable(false).extend({'throttle': 200});
|
||||||
this.contacts.exportingCsv = ko.observable(false).extend({'throttle': 200});
|
this.contacts.exportingCsv = ko.observable(false).extend({'throttle': 200});
|
||||||
|
|
||||||
this.contacts.skipNextSync = false;
|
|
||||||
|
|
||||||
this.allowContactsSync = ko.observable(false);
|
this.allowContactsSync = ko.observable(false);
|
||||||
this.enableContactsSync = ko.observable(false);
|
this.enableContactsSync = ko.observable(false);
|
||||||
this.contactsSyncUrl = ko.observable('');
|
this.contactsSyncUrl = ko.observable('');
|
||||||
|
|
|
||||||
|
|
@ -312,9 +312,7 @@ function PopupsContactsViewModel()
|
||||||
}
|
}
|
||||||
|
|
||||||
self.reloadContactList(true);
|
self.reloadContactList(true);
|
||||||
}, true);
|
});
|
||||||
|
|
||||||
this.contacts.skipNextSync = true;
|
|
||||||
|
|
||||||
}, function () {
|
}, function () {
|
||||||
return !this.contacts.syncing() && !this.contacts.importing();
|
return !this.contacts.syncing() && !this.contacts.importing();
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
define('APP_INDEX_ROOT_FILE', __FILE__);
|
||||||
define('APP_INDEX_ROOT_PATH', str_replace('\\', '/', rtrim(dirname(__FILE__), '\\/').'/'));
|
define('APP_INDEX_ROOT_PATH', str_replace('\\', '/', rtrim(dirname(__FILE__), '\\/').'/'));
|
||||||
|
|
||||||
$sCustomDataPath = '';
|
$sCustomDataPath = '';
|
||||||
|
|
|
||||||
|
|
@ -1022,6 +1022,7 @@ class Actions
|
||||||
$aResult['ContactsIsAllowed'] = $oAddressBookProvider->IsActive();
|
$aResult['ContactsIsAllowed'] = $oAddressBookProvider->IsActive();
|
||||||
$aResult['ContactsSharingIsAllowed'] = $oAddressBookProvider->IsSharingAllowed();
|
$aResult['ContactsSharingIsAllowed'] = $oAddressBookProvider->IsSharingAllowed();
|
||||||
$aResult['ContactsSyncIsAllowed'] = (bool) $oConfig->Get('contacts', 'allow_sync', false);
|
$aResult['ContactsSyncIsAllowed'] = (bool) $oConfig->Get('contacts', 'allow_sync', false);
|
||||||
|
$aResult['ContactsSyncInterval'] = (int) $oConfig->Get('contacts', 'sync_interval', 20);
|
||||||
|
|
||||||
$aResult['EnableContactsSync'] = false;
|
$aResult['EnableContactsSync'] = false;
|
||||||
$aResult['ContactsSyncUrl'] = '';
|
$aResult['ContactsSyncUrl'] = '';
|
||||||
|
|
|
||||||
|
|
@ -88,6 +88,7 @@ class Application extends \RainLoop\Config\AbstractConfig
|
||||||
'enable' => array(false, 'Enable contacts'),
|
'enable' => array(false, 'Enable contacts'),
|
||||||
'allow_sharing' => array(true),
|
'allow_sharing' => array(true),
|
||||||
'allow_sync' => array(false),
|
'allow_sync' => array(false),
|
||||||
|
'sync_interval' => array(20),
|
||||||
'type' => array('sqlite', ''),
|
'type' => array('sqlite', ''),
|
||||||
'pdo_dsn' => array('mysql:host=127.0.0.1;port=3306;dbname=rainloop', ''),
|
'pdo_dsn' => array('mysql:host=127.0.0.1;port=3306;dbname=rainloop', ''),
|
||||||
'pdo_user' => array('root', ''),
|
'pdo_user' => array('root', ''),
|
||||||
|
|
|
||||||
|
|
@ -10015,9 +10015,7 @@ function PopupsContactsViewModel()
|
||||||
}
|
}
|
||||||
|
|
||||||
self.reloadContactList(true);
|
self.reloadContactList(true);
|
||||||
}, true);
|
});
|
||||||
|
|
||||||
this.contacts.skipNextSync = true;
|
|
||||||
|
|
||||||
}, function () {
|
}, function () {
|
||||||
return !this.contacts.syncing() && !this.contacts.importing();
|
return !this.contacts.syncing() && !this.contacts.importing();
|
||||||
|
|
@ -15213,8 +15211,6 @@ function WebMailDataStorage()
|
||||||
this.contacts.exportingVcf = ko.observable(false).extend({'throttle': 200});
|
this.contacts.exportingVcf = ko.observable(false).extend({'throttle': 200});
|
||||||
this.contacts.exportingCsv = ko.observable(false).extend({'throttle': 200});
|
this.contacts.exportingCsv = ko.observable(false).extend({'throttle': 200});
|
||||||
|
|
||||||
this.contacts.skipNextSync = false;
|
|
||||||
|
|
||||||
this.allowContactsSync = ko.observable(false);
|
this.allowContactsSync = ko.observable(false);
|
||||||
this.enableContactsSync = ko.observable(false);
|
this.enableContactsSync = ko.observable(false);
|
||||||
this.contactsSyncUrl = ko.observable('');
|
this.contactsSyncUrl = ko.observable('');
|
||||||
|
|
@ -18752,21 +18748,13 @@ RainLoopApp.prototype.reloadMessageListHelper = function (bEmptyList)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {Function} fResultFunc
|
* @param {Function} fResultFunc
|
||||||
* @param {boolean=} bForce = false
|
|
||||||
* @returns {boolean}
|
* @returns {boolean}
|
||||||
*/
|
*/
|
||||||
RainLoopApp.prototype.contactsSync = function (fResultFunc, bForce)
|
RainLoopApp.prototype.contactsSync = function (fResultFunc)
|
||||||
{
|
{
|
||||||
var oContacts = RL.data().contacts;
|
var oContacts = RL.data().contacts;
|
||||||
if (oContacts.importing() || oContacts.syncing() || !RL.data().enableContactsSync() || !RL.data().allowContactsSync())
|
if (oContacts.importing() || oContacts.syncing() || !RL.data().enableContactsSync() || !RL.data().allowContactsSync())
|
||||||
{
|
{
|
||||||
oContacts.skipNextSync = false;
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (oContacts.skipNextSync && !bForce)
|
|
||||||
{
|
|
||||||
oContacts.skipNextSync = false;
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -19583,6 +19571,7 @@ RainLoopApp.prototype.bootstart = function ()
|
||||||
var
|
var
|
||||||
sCustomLoginLink = '',
|
sCustomLoginLink = '',
|
||||||
sJsHash = RL.settingsGet('JsHash'),
|
sJsHash = RL.settingsGet('JsHash'),
|
||||||
|
iContactsSyncInterval = Utils.pInt(RL.settingsGet('ContactsSyncInterval')),
|
||||||
bGoogle = RL.settingsGet('AllowGoogleSocial'),
|
bGoogle = RL.settingsGet('AllowGoogleSocial'),
|
||||||
bFacebook = RL.settingsGet('AllowFacebookSocial'),
|
bFacebook = RL.settingsGet('AllowFacebookSocial'),
|
||||||
bTwitter = RL.settingsGet('AllowTwitterSocial')
|
bTwitter = RL.settingsGet('AllowTwitterSocial')
|
||||||
|
|
@ -19723,9 +19712,12 @@ RainLoopApp.prototype.bootstart = function ()
|
||||||
RL.folders();
|
RL.folders();
|
||||||
});
|
});
|
||||||
|
|
||||||
RL.sub('interval.10m-after5m', function () {
|
iContactsSyncInterval = 5 <= iContactsSyncInterval ? iContactsSyncInterval : 20;
|
||||||
|
iContactsSyncInterval = 320 >= iContactsSyncInterval ? iContactsSyncInterval : 320;
|
||||||
|
|
||||||
|
window.setInterval(function () {
|
||||||
RL.contactsSync();
|
RL.contactsSync();
|
||||||
});
|
}, iContactsSyncInterval * 60000 + 5000);
|
||||||
|
|
||||||
_.delay(function () {
|
_.delay(function () {
|
||||||
RL.contactsSync();
|
RL.contactsSync();
|
||||||
|
|
|
||||||
6
rainloop/v/0.0.0/static/js/app.min.js
vendored
6
rainloop/v/0.0.0/static/js/app.min.js
vendored
File diff suppressed because one or more lines are too long
Binary file not shown.
|
Before Width: | Height: | Size: 7.1 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 3.1 KiB |
|
|
@ -1,54 +0,0 @@
|
||||||
|
|
||||||
// MAIN
|
|
||||||
@main-color: #333;
|
|
||||||
@main-background-color: #eee;
|
|
||||||
@main-background-image: "images/background.jpg";
|
|
||||||
|
|
||||||
// LOADING
|
|
||||||
@loading-color: #000;
|
|
||||||
|
|
||||||
// LOGIN
|
|
||||||
@login-color: #eee;
|
|
||||||
@login-background-color: #757575;
|
|
||||||
@login-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
@login-box-shadow: none;
|
|
||||||
@login-border: none;
|
|
||||||
@login-border-radius: 7px;
|
|
||||||
|
|
||||||
// MENU
|
|
||||||
@dropdown-menu-color: #333;
|
|
||||||
@dropdown-menu-background-color: #fff;
|
|
||||||
@dropdown-menu-hover-background-color: #757575;
|
|
||||||
@dropdown-menu-hover-color: #eee;
|
|
||||||
@dropdown-menu-disable-color: #999;
|
|
||||||
|
|
||||||
// FOLDERS
|
|
||||||
@folders-color: #333;
|
|
||||||
@folders-disabled-color: #999;
|
|
||||||
@folders-selected-color: #eee;
|
|
||||||
@folders-selected-background-color: #757575;
|
|
||||||
@folders-selected-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
@folders-focused-color: #eee;
|
|
||||||
@folders-focused-background-color: #757575;
|
|
||||||
@folders-focused-rgba-background-color: rgba(0,0,0,0.7);
|
|
||||||
@folders-hover-color: #eee;
|
|
||||||
@folders-hover-background-color: #757575;
|
|
||||||
@folders-hover-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
@folders-drop-color: #eee;
|
|
||||||
@folders-drop-background-color: #757575;
|
|
||||||
@folders-drop-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
|
|
||||||
// SETTINGS
|
|
||||||
@settings-menu-color: #333;
|
|
||||||
@settings-menu-disabled-color: #999;
|
|
||||||
@settings-menu-selected-color: #eee;
|
|
||||||
@settings-menu-selected-background-color: #757575;
|
|
||||||
@settings-menu-selected-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
@settings-menu-hover-color: #eee;
|
|
||||||
@settings-menu-hover-background-color: #757575;
|
|
||||||
@settings-menu-hover-rgba-background-color: rgba(0,0,0,0.5);
|
|
||||||
|
|
||||||
// MESSAGE LIST
|
|
||||||
@message-list-toolbar-background-color: #eee;
|
|
||||||
@message-list-toolbar-gradient-start: #f4f4f4;
|
|
||||||
@message-list-toolbar-gradient-end: #dfdfdf;
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 961 B |
Loading…
Add table
Add a link
Reference in a new issue