2019-04-23 15:58:20 -04:00
|
|
|
- label = label.present(issuable_subject: local_assigns[:subject])
|
2016-05-02 19:19:46 -04:00
|
|
|
- label_css_id = dom_id(label)
|
2016-11-15 18:11:13 -05:00
|
|
|
- status = label_subscription_status(label, @project).inquiry if current_user
|
2018-05-24 08:29:00 -04:00
|
|
|
- use_label_priority = local_assigns.fetch(:use_label_priority, false)
|
2018-06-06 13:18:21 -04:00
|
|
|
- force_priority = local_assigns.fetch(:force_priority, use_label_priority ? label.priority.present? : false)
|
2017-06-26 16:52:53 -04:00
|
|
|
- toggle_subscription_path = toggle_subscription_label_path(label, @project) if current_user
|
2018-05-29 05:35:26 -04:00
|
|
|
- tooltip_title = label_status_tooltip(label, status) if status
|
2016-09-19 23:09:57 -04:00
|
|
|
|
2018-04-24 08:26:50 -04:00
|
|
|
%li.label-list-item{ id: label_css_id, data: { id: label.id } }
|
2019-04-23 15:58:20 -04:00
|
|
|
= render "shared/label_row", label: label, force_priority: force_priority
|
2018-04-18 20:17:29 -04:00
|
|
|
%ul.label-actions-list
|
2018-06-06 15:39:50 -04:00
|
|
|
- if can?(current_user, :admin_label, @project)
|
2022-01-13 16:14:07 -05:00
|
|
|
%li.gl-display-inline-block.js-toggle-priority.gl-ml-3{ data: { url: remove_priority_project_label_path(@project, label),
|
2018-06-06 15:39:50 -04:00
|
|
|
dom_id: dom_id(label), type: label.type } }
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.add-priority.btn.gl-button.btn-default-tertiary.btn-sm.has-tooltip{ title: _('Prioritize'), type: 'button', data: { placement: 'bottom' }, aria_label: _('Prioritize label') }
|
2018-06-06 15:39:50 -04:00
|
|
|
= sprite_icon('star-o')
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.remove-priority.btn.gl-button.btn-default-tertiary.btn-sm.has-tooltip{ title: _('Remove priority'), type: 'button', data: { placement: 'bottom' }, aria_label: _('Deprioritize label') }
|
2018-06-06 15:39:50 -04:00
|
|
|
= sprite_icon('star')
|
2018-06-28 09:24:54 -04:00
|
|
|
- if can?(current_user, :admin_label, label)
|
2022-01-13 16:14:07 -05:00
|
|
|
%li.gl-display-inline-block
|
2021-04-01 11:08:54 -04:00
|
|
|
= link_to label.edit_path, class: 'btn gl-button btn-default-tertiary btn-sm edit has-tooltip', title: _('Edit'), data: { placement: 'bottom' }, aria_label: _('Edit') do
|
2018-05-08 15:53:40 -04:00
|
|
|
= sprite_icon('pencil')
|
2018-11-14 03:38:34 -05:00
|
|
|
- if can?(current_user, :admin_label, label)
|
2022-01-13 16:14:07 -05:00
|
|
|
%li.gl-display-inline-block
|
2018-11-14 03:38:34 -05:00
|
|
|
.dropdown
|
2021-04-01 11:08:54 -04:00
|
|
|
%button{ type: 'button', class: 'btn gl-button btn-default-tertiary btn-sm js-label-options-dropdown', data: { toggle: 'dropdown' }, aria_label: _('Label actions dropdown') }
|
2018-11-14 03:38:34 -05:00
|
|
|
= sprite_icon('ellipsis_v')
|
|
|
|
.dropdown-menu.dropdown-open-left
|
|
|
|
%ul
|
2019-05-28 06:05:20 -04:00
|
|
|
- if label.project_label? && label.project.group && can?(current_user, :admin_label, label.project.group)
|
2018-11-14 03:38:34 -05:00
|
|
|
%li
|
2021-04-09 23:09:09 -04:00
|
|
|
%button.js-promote-project-label-button.gl-button.btn.btn-default-tertiary{ disabled: true, type: 'button',
|
2018-11-14 03:38:34 -05:00
|
|
|
data: { url: promote_project_label_path(label.project, label),
|
|
|
|
label_title: label.title,
|
|
|
|
label_color: label.color,
|
|
|
|
label_text_color: label.text_color,
|
2020-10-27 08:08:33 -04:00
|
|
|
group_name: label.project.group.name } }
|
2018-11-14 03:38:34 -05:00
|
|
|
= _('Promote to group label')
|
2021-04-12 08:09:15 -04:00
|
|
|
%li
|
|
|
|
%span
|
2021-04-14 11:09:04 -04:00
|
|
|
%button.text-danger.js-delete-label-modal-button{ type: 'button', data: { label_name: label.name, subject_name: label.subject_name, destroy_path: label.destroy_path } }
|
2021-04-12 08:09:15 -04:00
|
|
|
= _('Delete')
|
2017-06-22 22:11:14 -04:00
|
|
|
- if current_user
|
2022-01-13 16:14:07 -05:00
|
|
|
%li.gl-display-inline-block.label-subscription.js-label-subscription.gl-ml-3
|
2019-04-23 15:58:20 -04:00
|
|
|
- if label.can_subscribe_to_label_in_different_levels?
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.js-unsubscribe-button.gl-button.btn.btn-default.gl-w-full{ class: ('hidden' if status.unsubscribed?), data: { url: toggle_subscription_path, toggle: 'tooltip' }, title: tooltip_title }
|
|
|
|
%span.gl-button-text= _('Unsubscribe')
|
2018-04-24 08:19:26 -04:00
|
|
|
.dropdown.dropdown-group-label{ class: ('hidden' unless status.unsubscribed?) }
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.gl-button.btn.btn-default.gl-w-full{ data: { toggle: 'dropdown' } }
|
|
|
|
%span.gl-button-text
|
2018-05-16 22:03:09 -04:00
|
|
|
= _('Subscribe')
|
2018-05-08 15:53:40 -04:00
|
|
|
= sprite_icon('chevron-down')
|
2018-05-29 05:35:26 -04:00
|
|
|
.dropdown-menu.dropdown-open-left
|
2018-04-18 22:44:53 -04:00
|
|
|
%ul
|
|
|
|
%li
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.js-subscribe-button{ class: ('hidden' unless status.unsubscribed?), data: { status: status, url: toggle_subscription_project_label_path(@project, label) } }
|
|
|
|
%span.gl-button-text= _('Subscribe at project level')
|
2018-04-18 22:44:53 -04:00
|
|
|
%li
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.js-subscribe-button.js-group-level{ class: ('hidden' unless status.unsubscribed?), data: { status: status, url: toggle_subscription_group_label_path(label.group, label) } }
|
|
|
|
%span.gl-button-text= _('Subscribe at group level')
|
2017-06-23 14:30:13 -04:00
|
|
|
- else
|
2022-01-13 16:14:07 -05:00
|
|
|
%button.gl-button.js-subscribe-button.btn.btn-default.gl-w-full{ data: { status: status, url: toggle_subscription_path, toggle: 'tooltip' }, title: tooltip_title }
|
|
|
|
%span.gl-button-text= label_subscription_toggle_button_text(label, @project)
|