1
0
Fork 0

upload images to the selected album

This commit is contained in:
rabuzarus 2017-03-21 23:08:37 +01:00
commit 835e54dfc3
4 changed files with 83 additions and 10 deletions

View file

@ -68,6 +68,7 @@ var FileBrowser = {
nickname : "",
type : "",
event: "",
folder: "",
id : null,
init: function(nickname, type, hash) {
@ -99,6 +100,7 @@ var FileBrowser = {
$(".fbrowser").on("click", ".folders a, .path a", function(e) {
e.preventDefault();
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + this.dataset.folder + "?mode=none";
FileBrowser.folder = this.dataset.folder;
FileBrowser.loadContent(url);
});
@ -134,7 +136,7 @@ var FileBrowser = {
this.dataset.filename,
embed,
FileBrowser.id,
this.dataset.img,
this.dataset.img
]);
// Close model
@ -157,9 +159,12 @@ var FileBrowser = {
// Initialize the AjaxUpload for the upload buttons
uploadButtons: function() {
if ($("#upload-image").length) {
// To get the albumname we need to convert it from hex
var albumname = hex2bin(FileBrowser.folder);
//AjaxUpload for images
var image_uploader = new window.AjaxUpload(
'upload-image',
{ action: 'wall_upload/'+FileBrowser.nickname+'?response=json',
{ action: 'wall_upload/'+FileBrowser.nickname+'?response=json&album=' + albumname,
name: 'userfile',
responseType: 'json',
onSubmit: function(file,ext) {
@ -178,7 +183,7 @@ var FileBrowser = {
// location = baseurl + "/fbrowser/image/?mode=none"+location['hash'];
// location.reload(true);
var url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none"
var url = baseurl + "/fbrowser/" + FileBrowser.type + "/" + FileBrowser.folder + "?mode=none";
// load new content to fbrowser window
FileBrowser.loadContent(url);
}
@ -187,9 +192,10 @@ var FileBrowser = {
}
if ($("#upload-file").length) {
//AjaxUpload for files
var file_uploader = new window.AjaxUpload(
'upload-file',
{ action: 'wall_attach/'+FileBrowser.nickname+'?response=json',
{ action: 'wall_attach/' + FileBrowser.nickname + '?response=json',
name: 'userfile',
onSubmit: function(file,ext) {
$(".fbrowser-content").hide();
@ -207,15 +213,16 @@ var FileBrowser = {
// location = baseurl + "/fbrowser/file/?mode=none"+location['hash'];
// location.reload(true);
var url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none"
var url = baseurl + "/fbrowser/" + FileBrowser.type + "?mode=none";
// Load new content to fbrowser window
FileBrowser.loadContent(url)
FileBrowser.loadContent(url);
}
}
);
}
},
// Stuff which should be executed if ne content was loaded
postLoad: function() {
FileBrowser.initGallery();
$(".fbrowser .fbswitcher .btn").removeClass("active");
@ -225,6 +232,7 @@ var FileBrowser = {
},
// Load new content (e.g. change photo album)
loadContent: function(url) {
$(".fbrowser-content").hide();
$(".fbrowser .profile-rotator-wrapper").show();
@ -239,6 +247,7 @@ var FileBrowser = {
});
},
// Initialize justified Gallery
initGallery: function() {
$(".fbrowser.image .fbrowser-content-container").justifiedGallery({
'rowHeight': 80,

View file

@ -617,3 +617,53 @@ function htmlToText(htmlString) {
return text;
}
// Decodes a hexadecimally encoded binary string
function hex2bin (s) {
// discuss at: http://locutus.io/php/hex2bin/
// original by: Dumitru Uzun (http://duzun.me)
// example 1: hex2bin('44696d61')
// returns 1: 'Dima'
// example 2: hex2bin('00')
// returns 2: '\x00'
// example 3: hex2bin('2f1q')
// returns 3: false
var ret = [];
var i = 0;
var l;
s += '';
for (l = s.length; i < l; i += 2) {
var c = parseInt(s.substr(i, 1), 16);
var k = parseInt(s.substr(i + 1, 1), 16);
if (isNaN(c) || isNaN(k)) {
return false;
}
ret.push((c << 4) | k);
}
return String.fromCharCode.apply(String, ret);
}
// Convert binary data into hexadecimal representation
function bin2hex (s) {
// From: http://phpjs.org/functions
// + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
// + bugfixed by: Onno Marsman
// + bugfixed by: Linuxworld
// + improved by: ntoniazzi (http://phpjs.org/functions/bin2hex:361#comment_177616)
// * example 1: bin2hex('Kev');
// * returns 1: '4b6576'
// * example 2: bin2hex(String.fromCharCode(0x00));
// * returns 2: '00'
var i, l, o = "", n;
s += "";
for (i = 0, l = s.length; i < l; i++) {
n = s.charCodeAt(i).toString(16);
o += n.length < 2 ? "0" + n : n;
}
return o;
}