1
0
Fork 0
mirror of synced 2024-06-27 02:31:04 +12:00

Fixed project logo upload

This commit is contained in:
eldadfux 2019-08-19 07:37:58 +03:00
parent 821fc05b18
commit 928e2161af
5 changed files with 32 additions and 71 deletions

View file

@ -2436,17 +2436,13 @@ else{var nextElement=focussable[index+1]||focussable[0];nextElement.focus();}}}}
else{var words=(element.value!=='')?element.value.trim().split(' ').length:0;counter.innerText=words+' words and '+element.value.length.toString()+' chars';}};element.addEventListener('keyup',count);element.addEventListener('change',count);element.addEventListener('cut',count);element.addEventListener('paste',count);element.addEventListener('drop',count);count();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-text-direction',repeat:false,controller:function(element){var rtlStock='^ا^ب^ت^ث^ج^ح^خ^د^ذ^ر^ز^س^ش^ص^ض^ط^ظ^ع^غ^ف^ق^ك^ل^م^ن^ه^و^ي^א^ב^ג^ד^ה^ו^ז^ח^ט^י^כ^ך^ל^מ^ם^נ^ן^ס^ע^פ^ף^צ^ץ^ק^ר^ש^ת^';var special=['\n',' ','״','"','_','\'','!','@','#','$','^','&','%','*','(',')','+','=','-','[',']','\\','/','{','}','|',':','<','>','?',',','.','0','1','2','3','4','5','6','7','8','9'];var setDirection=function(){var value=(element.value[0])?element.value:'';var direction='ltr';var align='left';for(var i=0;i<value.length;i++){if(-1===special.indexOf(value[i])){var firstChar=value[i];break;}}
if(-1<rtlStock.indexOf('^'+firstChar+'^')){direction='rtl';align='right';}
element.style.direction=direction;element.style.textAlign=align;};element.addEventListener('keyup',setDirection);element.addEventListener('change',setDirection);element.addEventListener('cut',setDirection);element.addEventListener('paste',setDirection);element.addEventListener('drop',setDirection);setDirection();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-text-resize',repeat:false,controller:function(element,window){function resize(){var scrollLeft=window.pageXOffset||(window.document.documentElement||window.document.body.parentNode||window.document.body).scrollLeft;var scrollTop=window.pageYOffset||(window.document.documentElement||window.document.body.parentNode||window.document.body).scrollTop;var offset=element.offsetHeight-element.clientHeight;element.style.height='auto';element.style.height=element.scrollHeight+offset+'px';window.scrollTo(scrollLeft,scrollTop);}
element.addEventListener('keyup',resize);element.addEventListener('change',resize);element.addEventListener('cut',resize);element.addEventListener('paste',resize);element.addEventListener('drop',resize);window.addEventListener('resize',resize);resize();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-upload',repeat:false,controller:function(element,window,container,alerts,expression){var scope=element.dataset['scope'];var labelButton=element.dataset['labelButton']||'Upload';var labelLoading=element.dataset['labelLoading']||'Uploading...';var previewWidth=element.dataset['previewWidth']||null;var previewHeight=element.dataset['previewHeight']||200;var accept=element.dataset['accept']||'';var required=(element.dataset['required']||false);var multiple=(element.dataset['multiple']||false);var className=(element.dataset['class']||'upload');var max=parseInt((element.dataset['max']||4));var sdk=(scope==='sdk')?container.get('sdk'):container.get('console');var output=(element.value)?((multiple)?JSON.parse(element.value):[element.value]):[];var total=0;var wrapper=document.createElement('div');var input=document.createElement('input');var upload=document.createElement('div');var preview=document.createElement('ul');var progress=document.createElement('div');var count=document.createElement('div');wrapper.className=className;input.type='file';input.accept=accept;input.required=required;input.multiple=multiple;input.tabIndex=-1;count.className='count';upload.className='button reverse margin-bottom';upload.innerHTML='<i class="icon icon-upload"></i> '+labelButton;upload.tabIndex=0;preview.className='preview';progress.className='progress';progress.style.width='0%';progress.style.display='none';var humanFileSize=function(bytes,si){var thresh=si?1000:1024;if(Math.abs(bytes)<thresh){return bytes+' B';}
var units=si?['KB','MB','GB','TB','PB','EB','ZB','YB']:['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB'];var u=-1;do{bytes/=thresh;++u;}while(Math.abs(bytes)>=thresh&&u<units.length-1);return bytes.toFixed(1)+' '+units[u];};var onComplete=function(message){alerts.remove(message);input.disabled=false;upload.classList.remove('disabled');progress.style.width='0%';progress.style.display='none';};var onProgress=function(event){var percentage=(event.lengthComputable)?Math.round(event.loaded*100/event.total):'0';progress.style.display=(percentage!==0)?'block':'none';progress.style.width=percentage+'%';};var render=function(files){if(!Array.isArray(files)){files=[files];}
preview.innerHTML='';count.innerHTML='0 / '+max;files.map(function(obj){var file=document.createElement('li');var image=document.createElement('img');image.src=image.src=sdk.storage.getFilePreview(obj,null,previewWidth,previewHeight);file.className='file';file.tabIndex=0;file.appendChild(image);count.innerHTML=files.length+' / '+max;preview.appendChild(file);if((files.length>=max)){input.disabled=true;upload.classList.add('disabled');}
element.addEventListener('keyup',resize);element.addEventListener('change',resize);element.addEventListener('cut',resize);element.addEventListener('paste',resize);element.addEventListener('drop',resize);window.addEventListener('resize',resize);resize();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-upload',repeat:false,controller:function(element,container,alerts,expression,env){var scope=element.dataset['scope'];var labelButton=element.dataset['labelButton']||'Upload';var labelLoading=element.dataset['labelLoading']||'Uploading...';var previewWidth=element.dataset['previewWidth']||200;var previewHeight=element.dataset['previewHeight']||200;var accept=element.dataset['accept']||'';var required=(element.dataset['required']||false);var multiple=(element.dataset['multiple']||false);var className=(element.dataset['class']||'upload');var max=parseInt((element.dataset['max']||4));var sdk=(scope==='sdk')?container.get('sdk'):container.get('console');var output=(element.value)?((multiple)?JSON.parse(element.value):[element.value]):[];var total=0;var wrapper=document.createElement('div');var input=document.createElement('input');var upload=document.createElement('div');var preview=document.createElement('ul');var progress=document.createElement('div');var count=document.createElement('div');wrapper.className=className;input.type='file';input.accept=accept;input.required=required;input.multiple=multiple;input.tabIndex=-1;count.className='count';upload.className='button reverse margin-bottom';upload.innerHTML='<i class="icon icon-upload"></i> '+labelButton;upload.tabIndex=0;preview.className='preview';progress.className='progress';progress.style.width='0%';progress.style.display='none';var humanFileSize=function(bytes,si){var thresh=si?1000:1024;if(Math.abs(bytes)<thresh){return bytes+' B';}
var units=si?['KB','MB','GB','TB','PB','EB','ZB','YB']:['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB'];var u=-1;do{bytes/=thresh;++u;}while(Math.abs(bytes)>=thresh&&u<units.length-1);return bytes.toFixed(1)+' '+units[u];};var onComplete=function(message){alerts.remove(message);input.disabled=false;upload.classList.remove('disabled');progress.style.width='0%';progress.style.display='none';};var render=function(files){if(!Array.isArray(files)){files=[files];}
preview.innerHTML='';count.innerHTML='0 / '+max;files.map(function(obj){console.log('1',obj);var file=document.createElement('li');var image=document.createElement('img');image.src=image.src=env.API+'/storage/files/'+obj+'/preview?width='+previewWidth+'&height='+previewHeight;file.className='file avatar';file.tabIndex=0;file.appendChild(image);count.innerHTML=files.length+' / '+max;preview.appendChild(file);if((files.length>=max)){input.disabled=true;upload.classList.add('disabled');}
else{input.disabled=false;upload.classList.remove('disabled');}
var remove=(function(obj){return function(event){output=(Array.isArray(output))?output.filter(function(e){return e!==obj}):[];render(output);}})(obj);file.addEventListener('click',remove);file.addEventListener('keypress',remove);element.value=(multiple)?JSON.stringify(output):output[0];});};input.addEventListener('change',function(){var message=alerts.add({text:labelLoading,class:''},0);var files=input.files;var formData=new FormData();var read=JSON.parse(expression.parse(element.dataset['read']||'[]'));var write=JSON.parse(expression.parse(element.dataset['write']||'[]'));if(!multiple){output=[];}
for(var i=0;i<files.length;i++){if(output.length+(i+1)>max){break;}
var file=files[i];formData.append('files[]',file);total=total+file.size;}
for(var x=0;x<read.length;x++){formData.append('read[]',read[x]);}
for(var y=0;y<write.length;y++){formData.append('write[]',write[y]);}
sdk.storage.createFile(formData,onProgress).then(function(response){response=JSON.parse(response);response.map(function(obj){if(!Array.isArray(output)){throw new Error('Can\'t append new file to non array value');}
output[output.length]=obj['$uid'];});onComplete(message);render(output);},function(error){alerts.send({text:'An error occurred!',class:''},3000);onComplete(message);});input.disabled=true;});element.addEventListener('change',function(){if(!element.value){return;}
var remove=(function(obj){return function(event){output=(Array.isArray(output))?output.filter(function(e){return e!==obj}):[];render(output);}})(obj);file.addEventListener('click',remove);file.addEventListener('keypress',remove);element.value=(multiple)?JSON.stringify(output):output[0];});};input.addEventListener('change',function(){var message=alerts.add({text:labelLoading,class:''},0);var files=input.files;var read=JSON.parse(expression.parse(element.dataset['read']||'[]'));var write=JSON.parse(expression.parse(element.dataset['write']||'[]'));if(!multiple){output=[];}
sdk.storage.createFile(files[0],read,write,1).then(function(response){response.map(function(obj){if(!Array.isArray(output)){throw new Error('Can\'t append new file to non array value');}
output[output.length]=obj['$uid'];});onComplete(message);render(output);},function(error){alerts.add({text:'An error occurred!',class:''},3000);onComplete(message);});input.disabled=true;});element.addEventListener('change',function(){if(!element.value){return;}
output=(multiple)?JSON.parse(element.value):[element.value];render(output);});upload.addEventListener('keypress',function(){input.click();});element.parentNode.insertBefore(wrapper,element);wrapper.appendChild(preview);wrapper.appendChild(progress);wrapper.appendChild(upload);if(multiple){wrapper.appendChild(count);}
upload.appendChild(input);render(output);}});})(window);(function(window){"use strict";window.ls.view.add({selector:'data-general-oauth',repeat:false,controller:function(element,env,expression){let provider=expression.parse(element.dataset['authOauth']||'');let success=expression.parse(element.dataset['success']||'');let failure=expression.parse(element.dataset['failure']||'');element.href=env.API+'/oauth/'+provider+'?project='+env.PROJECT
+'&success='+encodeURIComponent(success)

View file

@ -343,17 +343,13 @@ else{var nextElement=focussable[index+1]||focussable[0];nextElement.focus();}}}}
else{var words=(element.value!=='')?element.value.trim().split(' ').length:0;counter.innerText=words+' words and '+element.value.length.toString()+' chars';}};element.addEventListener('keyup',count);element.addEventListener('change',count);element.addEventListener('cut',count);element.addEventListener('paste',count);element.addEventListener('drop',count);count();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-text-direction',repeat:false,controller:function(element){var rtlStock='^ا^ب^ت^ث^ج^ح^خ^د^ذ^ر^ز^س^ش^ص^ض^ط^ظ^ع^غ^ف^ق^ك^ل^م^ن^ه^و^ي^א^ב^ג^ד^ה^ו^ז^ח^ט^י^כ^ך^ל^מ^ם^נ^ן^ס^ע^פ^ף^צ^ץ^ק^ר^ש^ת^';var special=['\n',' ','״','"','_','\'','!','@','#','$','^','&','%','*','(',')','+','=','-','[',']','\\','/','{','}','|',':','<','>','?',',','.','0','1','2','3','4','5','6','7','8','9'];var setDirection=function(){var value=(element.value[0])?element.value:'';var direction='ltr';var align='left';for(var i=0;i<value.length;i++){if(-1===special.indexOf(value[i])){var firstChar=value[i];break;}}
if(-1<rtlStock.indexOf('^'+firstChar+'^')){direction='rtl';align='right';}
element.style.direction=direction;element.style.textAlign=align;};element.addEventListener('keyup',setDirection);element.addEventListener('change',setDirection);element.addEventListener('cut',setDirection);element.addEventListener('paste',setDirection);element.addEventListener('drop',setDirection);setDirection();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-text-resize',repeat:false,controller:function(element,window){function resize(){var scrollLeft=window.pageXOffset||(window.document.documentElement||window.document.body.parentNode||window.document.body).scrollLeft;var scrollTop=window.pageYOffset||(window.document.documentElement||window.document.body.parentNode||window.document.body).scrollTop;var offset=element.offsetHeight-element.clientHeight;element.style.height='auto';element.style.height=element.scrollHeight+offset+'px';window.scrollTo(scrollLeft,scrollTop);}
element.addEventListener('keyup',resize);element.addEventListener('change',resize);element.addEventListener('cut',resize);element.addEventListener('paste',resize);element.addEventListener('drop',resize);window.addEventListener('resize',resize);resize();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-upload',repeat:false,controller:function(element,window,container,alerts,expression){var scope=element.dataset['scope'];var labelButton=element.dataset['labelButton']||'Upload';var labelLoading=element.dataset['labelLoading']||'Uploading...';var previewWidth=element.dataset['previewWidth']||null;var previewHeight=element.dataset['previewHeight']||200;var accept=element.dataset['accept']||'';var required=(element.dataset['required']||false);var multiple=(element.dataset['multiple']||false);var className=(element.dataset['class']||'upload');var max=parseInt((element.dataset['max']||4));var sdk=(scope==='sdk')?container.get('sdk'):container.get('console');var output=(element.value)?((multiple)?JSON.parse(element.value):[element.value]):[];var total=0;var wrapper=document.createElement('div');var input=document.createElement('input');var upload=document.createElement('div');var preview=document.createElement('ul');var progress=document.createElement('div');var count=document.createElement('div');wrapper.className=className;input.type='file';input.accept=accept;input.required=required;input.multiple=multiple;input.tabIndex=-1;count.className='count';upload.className='button reverse margin-bottom';upload.innerHTML='<i class="icon icon-upload"></i> '+labelButton;upload.tabIndex=0;preview.className='preview';progress.className='progress';progress.style.width='0%';progress.style.display='none';var humanFileSize=function(bytes,si){var thresh=si?1000:1024;if(Math.abs(bytes)<thresh){return bytes+' B';}
var units=si?['KB','MB','GB','TB','PB','EB','ZB','YB']:['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB'];var u=-1;do{bytes/=thresh;++u;}while(Math.abs(bytes)>=thresh&&u<units.length-1);return bytes.toFixed(1)+' '+units[u];};var onComplete=function(message){alerts.remove(message);input.disabled=false;upload.classList.remove('disabled');progress.style.width='0%';progress.style.display='none';};var onProgress=function(event){var percentage=(event.lengthComputable)?Math.round(event.loaded*100/event.total):'0';progress.style.display=(percentage!==0)?'block':'none';progress.style.width=percentage+'%';};var render=function(files){if(!Array.isArray(files)){files=[files];}
preview.innerHTML='';count.innerHTML='0 / '+max;files.map(function(obj){var file=document.createElement('li');var image=document.createElement('img');image.src=image.src=sdk.storage.getFilePreview(obj,null,previewWidth,previewHeight);file.className='file';file.tabIndex=0;file.appendChild(image);count.innerHTML=files.length+' / '+max;preview.appendChild(file);if((files.length>=max)){input.disabled=true;upload.classList.add('disabled');}
element.addEventListener('keyup',resize);element.addEventListener('change',resize);element.addEventListener('cut',resize);element.addEventListener('paste',resize);element.addEventListener('drop',resize);window.addEventListener('resize',resize);resize();}});})(window);(function(window){"use strict";window.ls.container.get('view').add({selector:'data-forms-upload',repeat:false,controller:function(element,container,alerts,expression,env){var scope=element.dataset['scope'];var labelButton=element.dataset['labelButton']||'Upload';var labelLoading=element.dataset['labelLoading']||'Uploading...';var previewWidth=element.dataset['previewWidth']||200;var previewHeight=element.dataset['previewHeight']||200;var accept=element.dataset['accept']||'';var required=(element.dataset['required']||false);var multiple=(element.dataset['multiple']||false);var className=(element.dataset['class']||'upload');var max=parseInt((element.dataset['max']||4));var sdk=(scope==='sdk')?container.get('sdk'):container.get('console');var output=(element.value)?((multiple)?JSON.parse(element.value):[element.value]):[];var total=0;var wrapper=document.createElement('div');var input=document.createElement('input');var upload=document.createElement('div');var preview=document.createElement('ul');var progress=document.createElement('div');var count=document.createElement('div');wrapper.className=className;input.type='file';input.accept=accept;input.required=required;input.multiple=multiple;input.tabIndex=-1;count.className='count';upload.className='button reverse margin-bottom';upload.innerHTML='<i class="icon icon-upload"></i> '+labelButton;upload.tabIndex=0;preview.className='preview';progress.className='progress';progress.style.width='0%';progress.style.display='none';var humanFileSize=function(bytes,si){var thresh=si?1000:1024;if(Math.abs(bytes)<thresh){return bytes+' B';}
var units=si?['KB','MB','GB','TB','PB','EB','ZB','YB']:['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB'];var u=-1;do{bytes/=thresh;++u;}while(Math.abs(bytes)>=thresh&&u<units.length-1);return bytes.toFixed(1)+' '+units[u];};var onComplete=function(message){alerts.remove(message);input.disabled=false;upload.classList.remove('disabled');progress.style.width='0%';progress.style.display='none';};var render=function(files){if(!Array.isArray(files)){files=[files];}
preview.innerHTML='';count.innerHTML='0 / '+max;files.map(function(obj){console.log('1',obj);var file=document.createElement('li');var image=document.createElement('img');image.src=image.src=env.API+'/storage/files/'+obj+'/preview?width='+previewWidth+'&height='+previewHeight;file.className='file avatar';file.tabIndex=0;file.appendChild(image);count.innerHTML=files.length+' / '+max;preview.appendChild(file);if((files.length>=max)){input.disabled=true;upload.classList.add('disabled');}
else{input.disabled=false;upload.classList.remove('disabled');}
var remove=(function(obj){return function(event){output=(Array.isArray(output))?output.filter(function(e){return e!==obj}):[];render(output);}})(obj);file.addEventListener('click',remove);file.addEventListener('keypress',remove);element.value=(multiple)?JSON.stringify(output):output[0];});};input.addEventListener('change',function(){var message=alerts.add({text:labelLoading,class:''},0);var files=input.files;var formData=new FormData();var read=JSON.parse(expression.parse(element.dataset['read']||'[]'));var write=JSON.parse(expression.parse(element.dataset['write']||'[]'));if(!multiple){output=[];}
for(var i=0;i<files.length;i++){if(output.length+(i+1)>max){break;}
var file=files[i];formData.append('files[]',file);total=total+file.size;}
for(var x=0;x<read.length;x++){formData.append('read[]',read[x]);}
for(var y=0;y<write.length;y++){formData.append('write[]',write[y]);}
sdk.storage.createFile(formData,onProgress).then(function(response){response=JSON.parse(response);response.map(function(obj){if(!Array.isArray(output)){throw new Error('Can\'t append new file to non array value');}
output[output.length]=obj['$uid'];});onComplete(message);render(output);},function(error){alerts.send({text:'An error occurred!',class:''},3000);onComplete(message);});input.disabled=true;});element.addEventListener('change',function(){if(!element.value){return;}
var remove=(function(obj){return function(event){output=(Array.isArray(output))?output.filter(function(e){return e!==obj}):[];render(output);}})(obj);file.addEventListener('click',remove);file.addEventListener('keypress',remove);element.value=(multiple)?JSON.stringify(output):output[0];});};input.addEventListener('change',function(){var message=alerts.add({text:labelLoading,class:''},0);var files=input.files;var read=JSON.parse(expression.parse(element.dataset['read']||'[]'));var write=JSON.parse(expression.parse(element.dataset['write']||'[]'));if(!multiple){output=[];}
sdk.storage.createFile(files[0],read,write,1).then(function(response){response.map(function(obj){if(!Array.isArray(output)){throw new Error('Can\'t append new file to non array value');}
output[output.length]=obj['$uid'];});onComplete(message);render(output);},function(error){alerts.add({text:'An error occurred!',class:''},3000);onComplete(message);});input.disabled=true;});element.addEventListener('change',function(){if(!element.value){return;}
output=(multiple)?JSON.parse(element.value):[element.value];render(output);});upload.addEventListener('keypress',function(){input.click();});element.parentNode.insertBefore(wrapper,element);wrapper.appendChild(preview);wrapper.appendChild(progress);wrapper.appendChild(upload);if(multiple){wrapper.appendChild(count);}
upload.appendChild(input);render(output);}});})(window);(function(window){"use strict";window.ls.view.add({selector:'data-general-oauth',repeat:false,controller:function(element,env,expression){let provider=expression.parse(element.dataset['authOauth']||'');let success=expression.parse(element.dataset['success']||'');let failure=expression.parse(element.dataset['failure']||'');element.href=env.API+'/oauth/'+provider+'?project='+env.PROJECT
+'&success='+encodeURIComponent(success)

File diff suppressed because one or more lines are too long

View file

@ -5,11 +5,11 @@
{
selector: 'data-forms-upload',
repeat: false,
controller: function(element, window, container, alerts, expression) {
controller: function(element, container, alerts, expression, env) {
var scope = element.dataset['scope'];
var labelButton = element.dataset['labelButton'] || 'Upload';
var labelLoading = element.dataset['labelLoading'] || 'Uploading...';
var previewWidth = element.dataset['previewWidth'] || null;
var previewWidth = element.dataset['previewWidth'] || 200;
var previewHeight = element.dataset['previewHeight'] || 200;
var accept = element.dataset['accept'] || '';
var required = (element.dataset['required'] || false);
@ -77,29 +77,23 @@
progress.style.display = 'none';
};
var onProgress = function (event) {
var percentage = (event.lengthComputable) ? Math.round(event.loaded * 100 / event.total) : '0';
progress.style.display = (percentage !== 0) ? 'block' : 'none';
progress.style.width = percentage + '%';
};
var render = function (files) { // Generate image previews + remove buttons + input array (array only when multiple is on)
if(!Array.isArray(files)) { // Support single file
files = [files];
}
preview.innerHTML = '';
count.innerHTML = '0 / ' + max;
files.map(function(obj) {
console.log('1',obj);
var file = document.createElement('li');
var image = document.createElement('img');
image.src = image.src = sdk.storage.getFilePreview(obj, null, previewWidth, previewHeight);
image.src = image.src = env.API + '/storage/files/' + obj + '/preview?width=' + previewWidth + '&height=' + previewHeight;
file.className = 'file';
file.className = 'file avatar';
file.tabIndex = 0;
file.appendChild(image);
@ -128,23 +122,12 @@
file.addEventListener('keypress', remove);
element.value = (multiple) ? JSON.stringify(output) : output[0];
/*title.addEventListener('click', function () {
setTab(i);
});
title.addEventListener('keyup', function () {
if(event.which === 13) {
setTab(i);
}
});*/
});
};
input.addEventListener('change', function() {
var message = alerts.add({text: labelLoading, class: ''}, 0);
var files = input.files;
var formData = new FormData();
var read = JSON.parse(expression.parse(element.dataset['read'] || '[]'));
var write = JSON.parse(expression.parse(element.dataset['write'] || '[]'));
@ -152,44 +135,22 @@
output = [];
}
for (var i = 0; i < files.length; i++) {
if(output.length + (i + 1) > max) {
break;
}
var file = files[i];
formData.append('files[]', file);
total = total + file.size;
}
for (var x = 0; x < read.length; x++) {
formData.append('read[]', read[x]);
}
for (var y = 0; y < write.length; y++) {
formData.append('write[]', write[y]);
}
sdk.storage.createFile(formData, onProgress)
sdk.storage.createFile(files[0], read, write, 1)
.then(function (response) {
// parse array of $id's and assign to input value
response = JSON.parse(response);
response.map(function(obj) {
if(!Array.isArray(output)) { // Support single file
throw new Error('Can\'t append new file to non array value');
}
output[output.length] = obj['$uid'];
});
onComplete(message);
render(output);
}, function (error) {
alerts.send({text: 'An error occurred!', class: ''}, 3000); // File(s) uploaded.
alerts.add({text: 'An error occurred!', class: ''}, 3000); // File(s) uploaded.
onComplete(message);
});

View file

@ -831,6 +831,14 @@ hr {
position: relative;
.clear;
input {
position: absolute;
top: 0;
.func-start(0);
opacity: 0;
cursor: pointer;
}
&.single {
.preview {
height: 0;