Merge branch 'staging' of github.com:xwiki-labs/cryptpad into staging

pull/1/head
Caleb James DeLisle 7 years ago
commit cf6030ab8b

@ -7,41 +7,13 @@ define([], function () {
return function (userObject, Cryptpad) {
var version = userObject.version || 0;
// DEPRECATED
// Migration 1: pad attributes moved to filesData
var migratePadAttributesToData = function () {
var files = userObject && userObject.drive;
if (!files) { return; }
var migratePadAttributes = function (el, id, parsed) {
// Migrate old pad attributes
['userid', 'previewMode'].forEach(function (attr) {
var key = parsed.hash + '.' + attr;
var key2 = parsed.hash.slice(0,-1) + '.' + attr;// old pads not ending with /
if (typeof(files[key]) !== "undefined" || typeof(files[key2]) !== "undefined") {
console.log("Migrating pad attribute", attr, "for pad", id);
el[attr] = files[key] || files[key2];
delete files[key];
delete files[key2];
}
});
};
var filesData = files.filesData;
if (!filesData) { return; }
var el, parsed;
for (var id in filesData) {
id = Number(id);
el = filesData[id];
parsed = el.href && Cryptpad.parsePadUrl(el.href);
if (!parsed) { continue; }
migratePadAttributes(el, id, parsed);
}
// Migration done
return true;
};
if (version < 1) {
migratePadAttributesToData();
Cryptpad.feedback('Migrate-1', true);
userObject.version = version = 1;
}
// Migration 2: global attributes from root to 'settings' subobjects

@ -243,6 +243,7 @@ define([
}, "DRIVE4: migration and fixFiles with a pad in trash not root");
// Pad attributes migration
/*
assert(function (cb) {
console.log('START PAD ATTRIBUTES');
var files = JSON.parse(JSON.stringify(example));
@ -253,6 +254,7 @@ define([
return cb(files.filesData[id1].userid === 'value'
&& files.filesData[id1].previewMode);
}, "PAD ATTRIBUTES");
*/
// userObject Tests

@ -433,6 +433,7 @@ define([
var userDoc = APP.realtime.getUserDoc();
var isNew = false;
var newDoc = '';
if (userDoc === "" || userDoc === "{}") { isNew = true; }
if (userDoc !== "") {
@ -448,15 +449,19 @@ define([
Cryptpad.errorLoadingScreen(errorText);
throw new Error(errorText);
}
newDoc = hjson.content;
} else {
Title.updateTitle(Cryptpad.initialName || Title.defaultTitle);
}
if (newDoc) {
canvas.loadFromJSON(newDoc);
canvas.renderAll();
}
Cryptpad.removeLoadingScreen();
setEditable(!readOnly);
initializing = false;
config.onLocal();
Cryptpad.removeLoadingScreen();
if (readOnly) { return; }
if (isNew) {
common.openTemplatePicker();
@ -516,7 +521,7 @@ define([
canvas.on('mouse:up', onLocal);
$('#clear').on('click', function () {
$('#cp-app-whiteboard-clear').on('click', function () {
canvas.clear();
onLocal();
});

Loading…
Cancel
Save