|
@@ -131,22 +131,16 @@
|
|
|
|
|
|
sendFile (file, chatbox) {
|
|
|
const self = this;
|
|
|
- console.log('Send file via http upload');
|
|
|
const request_slot_url = 'upload.' + _converse.domain;
|
|
|
_converse.api.disco.supports(Strophe.NS.HTTPUPLOAD, request_slot_url)
|
|
|
.then((result) => {
|
|
|
chatbox.showHelpMessages([__('The file upload starts now')],'info');
|
|
|
self.requestSlot(file, request_slot_url, function(data) {
|
|
|
if (!data) {
|
|
|
- // general error
|
|
|
- console.log('Unknown error while requesting upload slot.');
|
|
|
alert(__('File upload failed. Please check the log.'));
|
|
|
} else if (data.error) {
|
|
|
- // specific error
|
|
|
- console.log('The XMPP-Server return an error of the type: ' + data.error.type);
|
|
|
alert(__('File upload failed. Please check the log.'));
|
|
|
} else if (data.get && data.put) {
|
|
|
- console.log('slot received, start upload to ' + data.put);
|
|
|
self.uploadFile(data.put, file, function() {
|
|
|
console.log(data.put);
|
|
|
chatbox.onMessageSubmitted(data.put, null, file);
|
|
@@ -175,7 +169,7 @@
|
|
|
});
|
|
|
},
|
|
|
|
|
|
- uploadFile (url, file, success_cb) {
|
|
|
+ uploadFile (url, file, callback) {
|
|
|
console.log("uploadFile start");
|
|
|
const xmlhttp = new XMLHttpRequest();
|
|
|
const contentType = 'application/octet-stream';
|
|
@@ -183,13 +177,11 @@
|
|
|
if (xmlhttp.readyState === XMLHttpRequest.DONE) {
|
|
|
console.log("Status: " + xmlhttp.status);
|
|
|
if (xmlhttp.status === 200 || xmlhttp.status === 201) {
|
|
|
- console.log('file successful uploaded');
|
|
|
- if (success_cb) {
|
|
|
- success_cb();
|
|
|
+ if (callback) {
|
|
|
+ callback();
|
|
|
}
|
|
|
}
|
|
|
else {
|
|
|
- console.log('error while uploading file to ' + url);
|
|
|
alert(__('Could not upload File please try again.'));
|
|
|
}
|
|
|
}
|
|
@@ -198,13 +190,8 @@
|
|
|
xmlhttp.open('PUT', url, true);
|
|
|
xmlhttp.setRequestHeader("Content-type", contentType);
|
|
|
xmlhttp.send(file);
|
|
|
-
|
|
|
- console.log("uploadFile end");
|
|
|
},
|
|
|
-
|
|
|
- /**
|
|
|
- * Process successful response to slot request.
|
|
|
- */
|
|
|
+
|
|
|
successfulRequestSlotCB (stanza, cb) {
|
|
|
const slot = stanza.getElementsByTagName('slot')[0];
|
|
|
|
|
@@ -220,9 +207,6 @@
|
|
|
}
|
|
|
},
|
|
|
|
|
|
- /**
|
|
|
- * Process failed response to slot request.
|
|
|
- */
|
|
|
failedRequestSlotCB (stanza, cb) {
|
|
|
alert(__('Could not upload File please try again.'));
|
|
|
},
|