Merge branch 'master' into staging
This commit is contained in:
commit
0c4c9dd283
@ -46,6 +46,8 @@ server {
|
|||||||
|
|
||||||
set $unsafe 0;
|
set $unsafe 0;
|
||||||
if ($uri = "/pad/inner.html") { set $unsafe 1; }
|
if ($uri = "/pad/inner.html") { set $unsafe 1; }
|
||||||
|
if ($uri = "/sheet/inner.html") { set $unsafe 1; }
|
||||||
|
if ($uri = "/common/onlyoffice/web-apps/apps/spreadsheeteditor/main/index.html") { set $unsafe 1; }
|
||||||
if ($host != sandbox.cryptpad.info) { set $unsafe 0; }
|
if ($host != sandbox.cryptpad.info) { set $unsafe 0; }
|
||||||
if ($unsafe) {
|
if ($unsafe) {
|
||||||
set $scriptSrc "'self' 'unsafe-eval' 'unsafe-inline' new2.cryptpad.fr cryptpad.fr";
|
set $scriptSrc "'self' 'unsafe-eval' 'unsafe-inline' new2.cryptpad.fr cryptpad.fr";
|
||||||
@ -95,7 +97,7 @@ server {
|
|||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
}
|
}
|
||||||
|
|
||||||
location ~ ^/(register|login|settings|user|pad|drive|poll|slide|code|whiteboard|file|media|profile|contacts|todo|filepicker|debug|kanban)$ {
|
location ~ ^/(register|login|settings|user|pad|drive|poll|slide|code|whiteboard|file|media|profile|contacts|todo|filepicker|debug|kanban|sheet)$ {
|
||||||
rewrite ^(.*)$ $1/ redirect;
|
rewrite ^(.*)$ $1/ redirect;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -201,7 +201,7 @@ define([
|
|||||||
if (typeof(channel) !== 'string' || channel.length !== Hash.ephemeralChannelLength) {
|
if (typeof(channel) !== 'string' || channel.length !== Hash.ephemeralChannelLength) {
|
||||||
channel = Hash.createChannelId(true); // true indicates that it's an ephemeral channel
|
channel = Hash.createChannelId(true); // true indicates that it's an ephemeral channel
|
||||||
}
|
}
|
||||||
if (!md.cursor) {
|
if (md.cursor !== channel) {
|
||||||
md.cursor = channel;
|
md.cursor = channel;
|
||||||
ctx.metadataMgr.updateMetadata(md);
|
ctx.metadataMgr.updateMetadata(md);
|
||||||
setTimeout(saveChanges);
|
setTimeout(saveChanges);
|
||||||
|
|||||||
@ -41,10 +41,34 @@ define([
|
|||||||
var Utils = config.modules.Utils;
|
var Utils = config.modules.Utils;
|
||||||
|
|
||||||
nThen(function (waitFor) {
|
nThen(function (waitFor) {
|
||||||
config.modules.SFrameChannel.create($('#sbox-filePicker-iframe')[0].contentWindow,
|
// The inner iframe tries to get some data from us every ms (cache, store...).
|
||||||
waitFor(function (sfc) {
|
// It will send a "READY" message and wait for our answer with the correct txid.
|
||||||
|
// First, we have to answer to this message, otherwise we're going to block
|
||||||
|
// sframe-boot.js. Then we can start the channel.
|
||||||
|
var msgEv = Utils.Util.mkEvent();
|
||||||
|
var iframe = $('#sbox-filePicker-iframe')[0].contentWindow;
|
||||||
|
var postMsg = function (data) {
|
||||||
|
iframe.postMessage(data, '*');
|
||||||
|
};
|
||||||
|
var whenReady = waitFor(function (msg) {
|
||||||
|
if (msg.source !== iframe) { return; }
|
||||||
|
var data = JSON.parse(msg.data);
|
||||||
|
if (!data.txid) { return; }
|
||||||
|
// Remove the listener once we've received the READY message
|
||||||
|
window.removeEventListener('message', whenReady);
|
||||||
|
// Answer with the requested data
|
||||||
|
postMsg(JSON.stringify({ txid: data.txid, language: Cryptpad.getLanguage() }));
|
||||||
|
|
||||||
|
// Then start the channel
|
||||||
|
window.addEventListener('message', function (msg) {
|
||||||
|
if (msg.source !== iframe) { return; }
|
||||||
|
msgEv.fire(msg);
|
||||||
|
});
|
||||||
|
config.modules.SFrameChannel.create(msgEv, postMsg, waitFor(function (sfc) {
|
||||||
sframeChan = sfc;
|
sframeChan = sfc;
|
||||||
}));
|
}));
|
||||||
|
});
|
||||||
|
window.addEventListener('message', whenReady);
|
||||||
}).nThen(function () {
|
}).nThen(function () {
|
||||||
var updateMeta = function () {
|
var updateMeta = function () {
|
||||||
//console.log('EV_METADATA_UPDATE');
|
//console.log('EV_METADATA_UPDATE');
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user