|
@@ -73,14 +73,21 @@ var CryptoUploader = {
|
|
|
var file = document.getElementById("file-selector").files[0];
|
|
|
var self = this;
|
|
|
fileReader.onload = function(e) {
|
|
|
- this.data = fileReader.result;
|
|
|
+ self.data = fileReader.result;
|
|
|
$("#progress-bar").show();
|
|
|
- CryptoUtils.encrypt(this.data)
|
|
|
- .then(function(encrypted){
|
|
|
- Uploader.uploadFile(file.name, encrypted, self.progress, function(e){
|
|
|
- self.showRoomContent();;
|
|
|
- $("#progress-bar").hide();
|
|
|
- });
|
|
|
+ CryptoUtils.encryptFilename(file.name, Uploader.roomId)
|
|
|
+ .then(function(encrypted) {
|
|
|
+ var fileName = encrypted;
|
|
|
+ console.log(self.data);
|
|
|
+ CryptoUtils.encrypt(self.data)
|
|
|
+ .then(function(encrypted){
|
|
|
+ Uploader.uploadFile(fileName, encrypted, self.progress, function(e){
|
|
|
+ self.showRoomContent();;
|
|
|
+ $("#progress-bar").hide();
|
|
|
+ });
|
|
|
+ }).catch(function(err){
|
|
|
+ console.error(err);
|
|
|
+ });
|
|
|
}).catch(function(err){
|
|
|
console.error(err);
|
|
|
});
|
|
@@ -96,8 +103,8 @@ var CryptoUploader = {
|
|
|
}
|
|
|
},
|
|
|
|
|
|
- downloadFile: function(fileName) {
|
|
|
- Uploader.getFile(fileName, function(e){
|
|
|
+ downloadFile: function(fileName, fileId) {
|
|
|
+ Uploader.getFile(fileId, function(e){
|
|
|
if(this.status == 200) {
|
|
|
CryptoUtils.decrypt(this.response).
|
|
|
then(function(decrypted){
|
|
@@ -118,24 +125,39 @@ var CryptoUploader = {
|
|
|
},
|
|
|
|
|
|
showRoomContent: function() {
|
|
|
+ var self = this;
|
|
|
$("#file-list > ul").empty();
|
|
|
Uploader.getRoom(function(data){
|
|
|
for(let f of data.entries()) {
|
|
|
- var e = $("<li></li>").appendTo("#file-list > ul");
|
|
|
- $("<a>"+f[1]+"</a>")
|
|
|
- .on('click', function(e){CryptoUploader.downloadFile(e.target.text)})
|
|
|
- .appendTo(e);
|
|
|
- $("<span>🗑️</span>")
|
|
|
- .on('click', function(e){
|
|
|
- Uploader.deleteFile(e.target.parentNode.querySelector("a").text);
|
|
|
- CryptoUploader.showRoomContent();
|
|
|
- })
|
|
|
- .addClass("delete-button")
|
|
|
- .appendTo(e);
|
|
|
-
|
|
|
+ CryptoUtils.decryptFileName(f[1], Uploader.roomId)
|
|
|
+ .then(function(fileName) {
|
|
|
+ console.log(fileName);
|
|
|
+ window.nene = fileName;
|
|
|
+ var fileName = CryptoUtils.arrayBufferToString(fileName);
|
|
|
+ var e = $("<li></li>").appendTo("#file-list > ul");
|
|
|
+ $("<a>"+self.sanitizeHTML(fileName)+"</a>")
|
|
|
+ .on('click', function(e){CryptoUploader.downloadFile(fileName, f[1])})
|
|
|
+ .appendTo(e);
|
|
|
+ $("<span>🗑️</span>")
|
|
|
+ .on('click', function(e){
|
|
|
+ Uploader.deleteFile(e.target.parentNode.querySelector("a").text);
|
|
|
+ CryptoUploader.showRoomContent();
|
|
|
+ })
|
|
|
+ .addClass("delete-button")
|
|
|
+ .appendTo(e);
|
|
|
+ }).catch(function(err){
|
|
|
+ console.log(f[1]);
|
|
|
+ console.error(err);
|
|
|
+ });
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
+
|
|
|
+ sanitizeHTML: function (str) {
|
|
|
+ var temp = document.createElement('div');
|
|
|
+ temp.textContent = str;
|
|
|
+ return temp.innerHTML;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
$(function(){
|