PTMagic/Monitor/wwwroot/assets/pages/nestable.js

60 lines
1.7 KiB
JavaScript
Raw Normal View History

2018-05-22 10:11:50 +02:00
/**
* Theme: Ubold Admin Template
* Author: Coderthemes
* Nestable Component
*/
!function($) {
"use strict";
var Nestable = function() {};
Nestable.prototype.updateOutput = function (e) {
var list = e.length ? e : $(e.target),
output = list.data('output');
if (window.JSON) {
output.val(window.JSON.stringify(list.nestable('serialize'))); //, null, 2));
} else {
output.val('JSON browser support required for this demo.');
}
},
//init
Nestable.prototype.init = function() {
// activate Nestable for list 1
$('#nestable_list_1').nestable({
group: 1
}).on('change', this.updateOutput);
// activate Nestable for list 2
$('#nestable_list_2').nestable({
group: 1
}).on('change', this.updateOutput);
// output initial serialised data
this.updateOutput($('#nestable_list_1').data('output', $('#nestable_list_1_output')));
this.updateOutput($('#nestable_list_2').data('output', $('#nestable_list_2_output')));
$('#nestable_list_menu').on('click', function (e) {
var target = $(e.target),
action = target.data('action');
if (action === 'expand-all') {
$('.dd').nestable('expandAll');
}
if (action === 'collapse-all') {
$('.dd').nestable('collapseAll');
}
});
$('#nestable_list_3').nestable();
},
//init
$.Nestable = new Nestable, $.Nestable.Constructor = Nestable
}(window.jQuery),
//initializing
function($) {
"use strict";
$.Nestable.init()
}(window.jQuery);