batchedit.ui.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. window.renderRowData = function($row, index, row)
  2. {
  3. if(row.type != 'custom')
  4. {
  5. /* Init type cell data. */
  6. if(row.type == 'cycle')
  7. {
  8. $row.find('td[data-name="type"]').empty().html($('#cycleCellData').html());
  9. $row.find('td[data-name="type"]').find('input[name="type"]').attr('name', `type[${row.id}]`);
  10. }
  11. /* Init name cell data. */
  12. if(typeof nameItems[row.type] != 'undefined')
  13. {
  14. let $nameBox = $row.find('td[data-name="name"]');
  15. $nameBox.html("<div class='picker-box' id='name'></div>");
  16. data = {};
  17. data.name = `${row.type}[${row.id}]`;
  18. data.multiple = false;
  19. data.items = nameItems[row.type];
  20. $nameBox.find('#name').picker(data);
  21. $row.find('[data-name="name"]').find('.picker-box').on('inited', function()
  22. {
  23. $row.find('[name^="'+ row.type + '"]').zui('picker').$.setValue(row.objectID.toString());
  24. });
  25. }
  26. }
  27. $row.find('[data-name="assignedTo"]').find('.picker-box').on('inited', function(e, info)
  28. {
  29. if(row.private == 1)
  30. {
  31. $assignedTo = $(this).zui('picker');
  32. $assignedTo.options.disabled = true;
  33. $assignedTo.render($assignedTo.options);
  34. }
  35. });
  36. };
  37. window.togglePending = function(e)
  38. {
  39. $(e.target).closest('.input-group').find('.time-input').each(function()
  40. {
  41. $(this).zui('picker').render({disabled: e.target.checked});
  42. });
  43. };
  44. window.changeType = function(e)
  45. {
  46. const type = e.target.value;
  47. const $tr = $(e.target).closest('tr');
  48. const index = $tr.find('.form-control-static[data-name="id"]').text()
  49. const $nameBox = $tr.find('[data-name="name"]');
  50. if(moduleList.indexOf(type) !== -1)
  51. {
  52. items = nameItems[type];
  53. $nameBox.html("<div class='picker-box' id='" + type + "'></div>");
  54. $nameBox.find('#' + type).picker({items: items, name: `${type}[${index}]`});
  55. }
  56. else
  57. {
  58. $nameBox.html('<input class="form-control form-batch-input" type="text" autocomplete="off" name="name" data-name="name">');
  59. $nameBox.find('input[name=name]').attr('name', 'name[' + index + ']').attr('id', 'name_' + index);
  60. }
  61. };