'$qcomment' => $qcomment,
'$rand_num' => Crypto::randomDigits(12),
// 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),
]);
}
}
<script>
Dropzone.autoDiscover = false;
- var dropzone{{$id}} = new Dropzone( '#dropzone-{{$id}}', {
- 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())
- }
- })
- });
+ dzFactory.setupDropzone('#dropzone-{{$id}}', $('#comment-edit-text-{{$id}}'), {{$max_imagesize}});
</script>
{{/if}}
<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="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)
They are loaded into the html <head> so that js functions can use them *}}