diff options
Diffstat (limited to 'app/assets/javascripts/issue_show/actions/tasks.js')
-rw-r--r-- | app/assets/javascripts/issue_show/actions/tasks.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app/assets/javascripts/issue_show/actions/tasks.js b/app/assets/javascripts/issue_show/actions/tasks.js new file mode 100644 index 00000000000..0f6e71ce7ac --- /dev/null +++ b/app/assets/javascripts/issue_show/actions/tasks.js @@ -0,0 +1,27 @@ +export default (apiData, tasks) => { + const $tasks = $('#task_status'); + const $tasksShort = $('#task_status_short'); + const $issueableHeader = $('.issuable-header'); + const zeroData = { api: null, tasks: null }; + + if ($tasks.length === 0) { + if (!(apiData.task_status.indexOf('0 of 0') >= 0)) { + $issueableHeader.append(`<span id="task_status">${apiData.task_status}</span>`); + } else { + $issueableHeader.append('<span id="task_status"></span>'); + } + } else { + zeroData.api = apiData.task_status.indexOf('0 of 0') >= 0; + zeroData.tasks = tasks.indexOf('0 of 0') >= 0; + } + + if ($tasks && !zeroData.api) { + $tasks.text(apiData.task_status); + $tasksShort.text(apiData.task_status); + } else if (zeroData.tasks) { + $issueableHeader.append(`<span id="task_status">${apiData.task_status}</span>`); + } else if (zeroData.api) { + $tasks.remove(); + $tasksShort.remove(); + } +}; |