mirror of
https://github.com/wekan/wekan.git
synced 2025-09-22 01:50:48 +02:00
58 lines
1.7 KiB
JavaScript
58 lines
1.7 KiB
JavaScript
FS.HTTP.setHeadersForGet = function setHeadersForGet() {
|
|
// Client Stub
|
|
};
|
|
|
|
FS.HTTP.now = function() {
|
|
return new Date(new Date() + FS.HTTP._serverTimeDiff);
|
|
};
|
|
|
|
// Returns the localstorage if its found and working
|
|
// TODO: check if this works in IE
|
|
// could use Meteor._localStorage - just needs a rewrite
|
|
FS.HTTP._storage = function() {
|
|
var storage,
|
|
fail,
|
|
uid;
|
|
try {
|
|
uid = "test";
|
|
(storage = window.localStorage).setItem(uid, uid);
|
|
fail = (storage.getItem(uid) !== uid);
|
|
storage.removeItem(uid);
|
|
if (fail) {
|
|
storage = false;
|
|
}
|
|
} catch(e) {
|
|
console.log("Error initializing storage for FS.HTTP");
|
|
console.log(e);
|
|
}
|
|
|
|
return storage;
|
|
};
|
|
|
|
// get our storage if found
|
|
FS.HTTP.storage = FS.HTTP._storage();
|
|
|
|
FS.HTTP._prefix = 'fsHTTP.';
|
|
|
|
FS.HTTP._serverTimeDiff = 0; // Time difference in ms
|
|
|
|
if (FS.HTTP.storage) {
|
|
// Initialize the FS.HTTP._serverTimeDiff
|
|
FS.HTTP._serverTimeDiff = (1*FS.HTTP.storage.getItem(FS.HTTP._prefix+'timeDiff')) || 0;
|
|
// At client startup we figure out the time difference between server and
|
|
// client time - this includes lag and timezone
|
|
Meteor.startup(function() {
|
|
// Call the server method an get server time
|
|
HTTP.get(rootUrlPathPrefix + '/cfs/servertime', function(error, result) {
|
|
if (!error) {
|
|
// Update our server time diff
|
|
var dateNew = new Date(+result.content);
|
|
FS.HTTP._serverTimeDiff = dateNew - new Date();// - lag or/and timezone
|
|
// Update the localstorage
|
|
FS.HTTP.storage.setItem(FS.HTTP._prefix + 'timeDiff', FS.HTTP._serverTimeDiff);
|
|
} else {
|
|
console.log(error.message);
|
|
}
|
|
}); // EO Server call
|
|
});
|
|
}
|