manageprivpackage.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. $(function()
  2. {
  3. $list = $('#privPackageTableList');
  4. if(canSortPackage)
  5. {
  6. $list.addClass('sortable').sortable(
  7. {
  8. selector: 'tr',
  9. dragCssClass: 'drag-row',
  10. trigger: $list.find('.sort-handler').length ? '.sort-handler' : null,
  11. canMoveHere: function($ele, $target)
  12. {
  13. return $ele.data('parent') === $target.data('parent');
  14. },
  15. start: function(e)
  16. {
  17. e.targets.filter('[data-parent!="' + e.element.attr('data-parent') + '"]').addClass('drop-not-allowed');
  18. },
  19. finish: function(e)
  20. {
  21. var orders = '';
  22. var $item = $(e.element);
  23. var type = $item.data('type');
  24. var parentID = type == 'view' ? 0 : $(e.element).data('parent').id;
  25. $list.find('tr[data-parent="' + parentID + '"]').each(function(){
  26. orders += $(this).data('id') + ',';
  27. });
  28. $.post(createLink('group', 'sortPrivPackages', 'parent=' + parentID + '&type=' + type), {'orders': orders});
  29. $list.children('.drop-not-allowed').removeClass('drop-not-allowed');
  30. $('#privPackageForm').table('initNestedList')
  31. }
  32. });
  33. }
  34. })