Move the mediatag viewer into a media app

This commit is contained in:
yflory
2017-04-26 14:55:06 +02:00
parent 6a8274518b
commit f50aa5c29b
10 changed files with 239 additions and 20 deletions

View File

@@ -31,8 +31,8 @@ define([
}
return '/1/view/' + hexToBase64(chanKey) + '/'+Crypto.b64RemoveSlashes(keys.viewKeyStr)+'/';
};
var getFileHashFromKey = Hash.getFileHashFromKey = function (fileKey, cryptKey, type) {
return '/2/' + hexToBase64(fileKey) + '/' + Crypto.b64RemoveSlashes(cryptKey) + '/' + Crypto.base64RemoveSlashes(type);
var getFileHashFromKeys = Hash.getFileHashFromKeys = function (fileKey, cryptKey) {
return '/2/' + hexToBase64(fileKey) + '/' + Crypto.b64RemoveSlashes(cryptKey) + '/';
};
var parsePadUrl = Hash.parsePadUrl = function (href) {
@@ -122,9 +122,8 @@ define([
}
} else if (version === "2") {
// version 2 hashes are to be used for encrypted blobs
var fileId = secret.file = hashArray[2].replace(/-/g, '/');
var key = secret.key = hashArray[3].replace(/-/g, '/');
var type = secret.type = hashArray[4].replace(/-/g, '/');
secret.channel = hashArray[2].replace(/-/g, '/');
secret.keys = { fileKeyStr: hashArray[3].replace(/-/g, '/') };
}
}
}
@@ -139,6 +138,9 @@ define([
if (secret.keys.viewKeyStr) {
hashes.viewHash = getViewHashFromKeys(channel, secret.keys);
}
if (secret.keys.fileKeyStr) {
hashes.fileHash = getFileHashFromKeys(channel, secret.keys.fileKeyStr);
}
return hashes;
};
@@ -187,9 +189,8 @@ Version 2
}
if (hashArr[1] && hashArr[1] === '2') {
parsed.version = 2;
parsed.file = hashArr[2].replace(/-/g, '/');
parsed.channel = hashArr[2].replace(/-/g, '/');
parsed.key = hashArr[3].replace(/-/g, '/');
parsed.type = hashArr[4].replace(/-/g, '/');
return parsed;
}
return;

View File

@@ -205,6 +205,13 @@ define([
});
}
}
if (hashes.fileHash) {
options.push({
tag: 'a',
attributes: {title: Messages.viewShareTitle, 'class': 'fileShare'},
content: '<span class="fa fa-eye"></span> ' + Messages.viewShare
});
}
var dropdownConfigShare = {
text: $('<div>').append($shareIcon).append($span).html(),
options: options
@@ -223,7 +230,14 @@ define([
}
if (hashes.viewHash) {
$shareBlock.find('a.viewShare').click(function () {
var url = window.location.origin + window.location.pathname + '#' + hashes.viewHash;
var url = window.location.origin + window.location.pathname + '#' + hashes.viewHash ;
var success = Cryptpad.Clipboard.copy(url);
if (success) { Cryptpad.log(Messages.shareSuccess); }
});
}
if (hashes.fileHash) {
$shareBlock.find('a.fileShare').click(function () {
var url = window.location.origin + window.location.pathname + '#' + hashes.fileHash ;
var success = Cryptpad.Clipboard.copy(url);
if (success) { Cryptpad.log(Messages.shareSuccess); }
});