diff --git a/module/programplan/js/create.ui.js b/module/programplan/js/create.ui.js index 7b9e255475..41c7eff0e3 100644 --- a/module/programplan/js/create.ui.js +++ b/module/programplan/js/create.ui.js @@ -131,11 +131,7 @@ window.handleRenderRow = function($row, index, data) $row.attr('data-parent', '-1'); if($prevRow.length == 1) { - while($prevLevelRow.length == 1) - { - if($prevLevelRow.attr('data-level') == level - 1) break; - $prevLevelRow = $prevLevelRow.prev(); - } + if($prevLevelRow.attr('data-level') != level - 1) $prevLevelRow = $row.prevAll('tr[data-level="' + (level - 1) + '"]').first(); if($prevLevelRow.length == 1) $row.attr('data-parent', $prevLevelRow.attr('data-gid')); } @@ -281,11 +277,7 @@ window.handleRenderRow = function($row, index, data) if($enabled.find('input.hidden').length > 0) $enabled.find('input.hidden').attr('name', $checkbox.attr('name')); let $rootRow = $row; - while($rootRow.length == 1) - { - if($rootRow.attr('data-level') == 0) break; - $rootRow = $rootRow.prev(); - } + if($rootRow.attr('data-level') != 0) $rootRow = $row.prevAll('tr[data-level="0"]').first(); if($rootRow.length == 1 && !$rootRow.find('td[data-name=enabled] input[type=checkbox]').prop('checked')) { $row.addClass('disabled'); diff --git a/module/task/js/batchcreate.ui.js b/module/task/js/batchcreate.ui.js index bb139ef6d2..b0c415a230 100644 --- a/module/task/js/batchcreate.ui.js +++ b/module/task/js/batchcreate.ui.js @@ -302,10 +302,10 @@ window.handleRenderRow = function($row, index) } else if(parentID == 0 && level > 0) { - const $prevLevelRow = $row.prev('tr[data-level="' + (level - 1) + '"]'); - const $prevLevelStarted = $prevLevelRow.find('td[data-name=estStarted]').find('[id^=estStarted]'); - const $prevLevelDeadline = $prevLevelRow.find('td[data-name=deadline]').find('[id^=deadline]'); - disabledStarted = $prevLevelStarted.val() == '' || $prevLevelStarted.prop('disabled'); + const $prevLevelRow = $row.prevAll('tr[data-level="' + (level - 1) + '"]').first(); + const $prevLevelStarted = $prevLevelRow.find('td[data-name=estStarted]').find('input[name^=estStarted]'); + const $prevLevelDeadline = $prevLevelRow.find('td[data-name=deadline]').find('input[name^=deadline]'); + disabledStarted = $prevLevelStarted.val() == '' || $prevLevelStarted.prop('disabled'); disabledDeadline = $prevLevelDeadline.val() == '' || $prevLevelDeadline.prop('disabled'); } $row.find('td[data-name=estStarted]').find('[id^=estStarted]').on('inited', function(e, info) { info[0].render({disabled: disabledStarted}); })