Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke "Jared" Bennett <lbennett@gitlab.com>2017-07-03 19:00:59 +0300
committerLuke "Jared" Bennett <lbennett@gitlab.com>2017-07-07 16:57:28 +0300
commit55dd0d722d87a24f3b83a8a7692666a64387d668 (patch)
tree673d318330c0ca8d14b0147d74707a87686ebddf /app/assets/javascripts/issue.js
parentb8deafd0d8eacb5cbba9e868c445c92b514d537e (diff)
Dont show toggle if only one action is available and do not show report as abuse for current_user's issuables
Diffstat (limited to 'app/assets/javascripts/issue.js')
-rw-r--r--app/assets/javascripts/issue.js31
1 files changed, 28 insertions, 3 deletions
diff --git a/app/assets/javascripts/issue.js b/app/assets/javascripts/issue.js
index 62ffde6c93c..70007d4d4af 100644
--- a/app/assets/javascripts/issue.js
+++ b/app/assets/javascripts/issue.js
@@ -31,6 +31,11 @@ class Issue {
this.initCloseReopenReport();
+ if (!this.closeReopenReportToggle) {
+ this.closeButtons = $('a.btn-close');
+ this.reopenButtons = $('a.btn-reopen');
+ }
+
if (Issue.createMrDropdownWrap) {
this.createMergeRequestDropdown = new CreateMergeRequestDropdown(Issue.createMrDropdownWrap);
}
@@ -52,7 +57,7 @@ class Issue {
Issue.submitNoteForm($button.closest('form'));
}
- this.closeReopenReportToggle.setDisable(true);
+ this.disableCloseReopenButton($button, true);
url = $button.attr('href');
return $.ajax({
@@ -68,7 +73,7 @@ class Issue {
isClosedBadge.toggleClass('hidden', !isClosed);
isOpenBadge.toggleClass('hidden', isClosed);
- this.closeReopenReportToggle.updateButton(isClosed);
+ this.toggleCloseReopenButton(isClosed);
let numProjectIssues = Number(projectIssuesCounter.text().replace(/[^\d]/, ''));
numProjectIssues = isClosed ? numProjectIssues - 1 : numProjectIssues + 1;
@@ -87,13 +92,16 @@ class Issue {
new Flash(issueFailMessage);
}
- this.closeReopenReportToggle.setDisable(false);
+ this.disableCloseReopenButton($button, false);
});
});
}
initCloseReopenReport() {
const container = document.querySelector('.js-issuable-close-dropdown');
+
+ if (!container) return;
+
const dropdownTrigger = container.querySelector('.js-issuable-close-toggle');
const dropdownList = container.querySelector('.js-issuable-close-menu');
const button = container.querySelector('.js-issuable-close-button');
@@ -107,6 +115,23 @@ class Issue {
this.closeReopenReportToggle.initDroplab();
}
+ disableCloseReopenButton($button, shouldDisable) {
+ if (this.closeReopenReportToggle) {
+ this.closeReopenReportToggle.setDisable(shouldDisable);
+ } else {
+ $button.prop('disabled', shouldDisable);
+ }
+ }
+
+ toggleCloseReopenButton(isClosed) {
+ if (this.closeReopenReportToggle) {
+ this.closeReopenReportToggle.updateButton(isClosed);
+ } else {
+ this.closeButtons.toggleClass('hidden', isClosed);
+ this.reopenButtons.toggleClass('hidden', !isClosed);
+ }
+ }
+
static submitNoteForm(form) {
var noteText;
noteText = form.find("textarea.js-note-text").val();