mirror of
https://github.com/friendica/friendica
synced 2024-12-22 18:40:17 +00:00
create factory for dropzones
This commit is contained in:
parent
39f7660a1d
commit
ada11a2c67
4 changed files with 5 additions and 43 deletions
|
@ -1141,7 +1141,7 @@ function photos_content(App $a)
|
||||||
'$qcomment' => $qcomment,
|
'$qcomment' => $qcomment,
|
||||||
'$rand_num' => Crypto::randomDigits(12),
|
'$rand_num' => Crypto::randomDigits(12),
|
||||||
// Dropzone
|
// Dropzone
|
||||||
'$max_imagesize' => floor(Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')) / 1000000),
|
'$max_imagesize' => floor(\Friendica\Util\Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')) / 1000000),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -242,7 +242,7 @@ class Compose extends BaseModule
|
||||||
]),
|
]),
|
||||||
|
|
||||||
// Dropzone
|
// Dropzone
|
||||||
'$max_imagesize' => floor(Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')) / 1000000),
|
'$max_imagesize' => floor(\Friendica\Util\Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')) / 1000000),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,45 +67,5 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
Dropzone.autoDiscover = false;
|
Dropzone.autoDiscover = false;
|
||||||
var dropzone{{$id}} = new Dropzone( '#dropzone-{{$id}}', {
|
dzFactory.setupDropzone('#dropzone-{{$id}}', $('#comment-edit-text-{{$id}}'), {{$max_imagesize}});
|
||||||
paramName: 'userfile', // The name that will be used to transfer the file
|
|
||||||
maxFilesize: {{$max_imagesize}}, // MB
|
|
||||||
url: '/media/photo/upload?response=url&album=',
|
|
||||||
accept: function(file, done) {
|
|
||||||
done();
|
|
||||||
},
|
|
||||||
init: function() {
|
|
||||||
this.on('success', function(file, serverResponse) {
|
|
||||||
var target = $('#comment-edit-text-{{$id}}')
|
|
||||||
var resp = $(serverResponse).find('div#content').text()
|
|
||||||
if (target.setRangeText) {
|
|
||||||
//if setRangeText function is supported by current browser
|
|
||||||
target.setRangeText(' ' + $.trim(resp) + ' ')
|
|
||||||
} else {
|
|
||||||
target.focus()
|
|
||||||
document.execCommand('insertText', false /*no UI*/, ' ' + $.trim(resp) + ' ');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.on('complete', function(file) {
|
|
||||||
// Remove just uploaded file from dropzone, makes interface more clear.
|
|
||||||
// Image can be seen in posting-preview
|
|
||||||
// We need preview to get optical feedback about upload-progress.
|
|
||||||
// you see success, when the bb-code link for image is inserted
|
|
||||||
setTimeout(function(){
|
|
||||||
dropzone{{$id}}.removeFile(file);
|
|
||||||
},5000);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
// Enables Copy&Paste for this dropzone
|
|
||||||
$('#dropzone-{{$id}}').on('paste', function(event){
|
|
||||||
const items = (event.clipboardData || event.originalEvent.clipboardData).items;
|
|
||||||
items.forEach((item) => {
|
|
||||||
if (item.kind === 'file') {
|
|
||||||
// adds the file to your dropzone instance
|
|
||||||
dropzone{{$id}}.addFile(item.getAsFile())
|
|
||||||
}
|
|
||||||
})
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -140,6 +140,8 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<script type="text/javascript" src="view/theme/frio/js/textedit.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
<script type="text/javascript" src="view/theme/frio/js/textedit.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||||
<script type="text/javascript" src="vendor/enyo/dropzone/dist/min/dropzone.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
<script type="text/javascript" src="vendor/enyo/dropzone/dist/min/dropzone.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||||
|
<script type="text/javascript" src="view/js/dropzone-factory.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
|
||||||
|
<script type="text/javascript"> var dzFactory = new DzFactory();</script>
|
||||||
|
|
||||||
{{* Include the strings which are needed for some js functions (e.g. translation)
|
{{* Include the strings which are needed for some js functions (e.g. translation)
|
||||||
They are loaded into the html <head> so that js functions can use them *}}
|
They are loaded into the html <head> so that js functions can use them *}}
|
||||||
|
|
Loading…
Reference in a new issue