37 lines
1.1 KiB
JavaScript
37 lines
1.1 KiB
JavaScript
(function( $ ){
|
|
|
|
$.fn.filemanager = function(type, options) {
|
|
type = type || 'file';
|
|
|
|
this.on('click', function(e) {
|
|
var route_prefix = (options && options.prefix) ? options.prefix : '/filemanager';
|
|
var target_input = $('#' + $(this).data('input'));
|
|
var target_preview = $('#' + $(this).data('preview'));
|
|
window.open(route_prefix + '?type=' + type, 'FileManager', 'width=900,height=600');
|
|
window.SetUrl = function (items) {
|
|
var file_path = items.map(function (item) {
|
|
return item.url;
|
|
}).join(',');
|
|
|
|
// set the value of the desired input to image url
|
|
target_input.val('').val(file_path).trigger('change');
|
|
|
|
// clear previous preview
|
|
target_preview.html('');
|
|
|
|
// set or change the preview image src
|
|
items.forEach(function (item) {
|
|
target_preview.append(
|
|
$('<img>').css('height', '5rem').attr('src', item.thumb_url)
|
|
);
|
|
});
|
|
|
|
// trigger change event
|
|
target_preview.trigger('change');
|
|
};
|
|
return false;
|
|
});
|
|
}
|
|
|
|
})(jQuery);
|