debian-mirror-gitlab/app/views/shared/_label.html.haml

61 lines
4.7 KiB
Text
Raw Normal View History

2019-07-31 22:56:46 +05:30
- label = label.present(issuable_subject: local_assigns[:subject])
2016-11-03 12:29:30 +05:30
- label_css_id = dom_id(label)
2017-08-17 22:00:37 +05:30
- status = label_subscription_status(label, @project).inquiry if current_user
2018-11-08 19:23:39 +05:30
- use_label_priority = local_assigns.fetch(:use_label_priority, false)
- force_priority = local_assigns.fetch(:force_priority, use_label_priority ? label.priority.present? : false)
2017-09-10 17:25:29 +05:30
- toggle_subscription_path = toggle_subscription_label_path(label, @project) if current_user
2018-11-08 19:23:39 +05:30
- tooltip_title = label_status_tooltip(label, status) if status
2016-11-03 12:29:30 +05:30
2022-07-23 23:45:48 +05:30
%li.label-list-item{ id: label_css_id, class: "gl-p-5 gl-border-b", data: { id: label.id } }
2019-07-31 22:56:46 +05:30
= render "shared/label_row", label: label, force_priority: force_priority
2018-11-08 19:23:39 +05:30
%ul.label-actions-list
- if can?(current_user, :admin_label, @project)
2022-03-02 08:16:31 +05:30
%li.gl-display-inline-block.js-toggle-priority.gl-ml-3{ data: { url: remove_priority_project_label_path(@project, label),
2018-11-08 19:23:39 +05:30
dom_id: dom_id(label), type: label.type } }
2022-07-23 23:45:48 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary,
icon: 'star',
button_options: { class: 'remove-priority has-tooltip', 'title': _('Remove priority'), 'aria_label': _('Deprioritize label'), data: { placement: 'bottom' } })
= render Pajamas::ButtonComponent.new(category: :tertiary,
icon: 'star-o',
button_options: { class: 'add-priority has-tooltip', title: _('Prioritize'), aria_label: _('Prioritize label'), data: { placement: 'bottom' } })
2018-03-17 18:26:18 +05:30
- if can?(current_user, :admin_label, label)
2022-03-02 08:16:31 +05:30
%li.gl-display-inline-block
2022-07-23 23:45:48 +05:30
= render Pajamas::ButtonComponent.new(href: label.edit_path, category: :tertiary, icon: 'pencil', button_options: { class: 'edit has-tooltip', 'title': _('Edit'), 'aria_label': _('Edit'), data: { placement: 'bottom' } })
2019-02-15 15:39:39 +05:30
- if can?(current_user, :admin_label, label)
2022-03-02 08:16:31 +05:30
%li.gl-display-inline-block
2019-02-15 15:39:39 +05:30
.dropdown
2022-07-23 23:45:48 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary,
icon: 'ellipsis_v',
button_options: { class: 'js-label-options-dropdown', 'aria_label': _('Label actions dropdown'), data: { toggle: 'dropdown' } })
2019-02-15 15:39:39 +05:30
.dropdown-menu.dropdown-open-left
%ul
2019-07-31 22:56:46 +05:30
- if label.project_label? && label.project.group && can?(current_user, :admin_label, label.project.group)
2019-02-15 15:39:39 +05:30
%li
2023-05-27 22:25:52 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary, variant: :link,
2023-03-04 22:38:38 +05:30
button_options: { class: 'js-promote-project-label-button', data: { url: promote_project_label_path(label.project, label), label_title: label.title, label_color: label.color, label_text_color: label.text_color, group_name: label.project.group.name } }) do
2019-02-15 15:39:39 +05:30
= _('Promote to group label')
2021-04-29 21:17:54 +05:30
%li
2023-05-27 22:25:52 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary, variant: :link,
button_options: { class: 'text-danger js-delete-label-modal-button', data: { label_name: label.name, subject_name: label.subject_name, destroy_path: label.destroy_path } }) do
= _('Delete')
2017-09-10 17:25:29 +05:30
- if current_user
2022-03-02 08:16:31 +05:30
%li.gl-display-inline-block.label-subscription.js-label-subscription.gl-ml-3
2019-07-31 22:56:46 +05:30
- if label.can_subscribe_to_label_in_different_levels?
2023-03-04 22:38:38 +05:30
= render Pajamas::ButtonComponent.new(button_options: { class: "js-unsubscribe-button #{'hidden' if status.unsubscribed?}", data: { url: toggle_subscription_path, toggle: 'tooltip', container: 'body' }, title: tooltip_title }) do
2022-08-13 15:12:31 +05:30
= _('Unsubscribe')
2017-08-17 22:00:37 +05:30
.dropdown.dropdown-group-label{ class: ('hidden' unless status.unsubscribed?) }
2022-07-23 23:45:48 +05:30
= render Pajamas::ButtonComponent.new(button_options: { class: 'gl-w-full', data: { toggle: 'dropdown' } }) do
= _('Subscribe')
= sprite_icon('chevron-down')
2018-11-08 19:23:39 +05:30
.dropdown-menu.dropdown-open-left
%ul
%li
2023-03-04 22:38:38 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary, button_options: { class: "js-subscribe-button #{'hidden' unless status.unsubscribed?}", data: { status: status, url: toggle_subscription_project_label_path(@project, label) } }) do
2022-08-13 15:12:31 +05:30
= _('Subscribe at project level')
2018-11-08 19:23:39 +05:30
%li
2023-03-04 22:38:38 +05:30
= render Pajamas::ButtonComponent.new(category: :tertiary, button_options: { class: "js-subscribe-button js-group-level #{'hidden' unless status.unsubscribed?}", data: { status: status, url: toggle_subscription_group_label_path(label.group, label) } }) do
2022-08-13 15:12:31 +05:30
= _('Subscribe at group level')
2017-09-10 17:25:29 +05:30
- else
2023-03-04 22:38:38 +05:30
= render Pajamas::ButtonComponent.new(button_options: { class: 'js-subscribe-button gl-w-full', data: { status: status, url: toggle_subscription_path, toggle: 'tooltip', container: 'body' }, title: tooltip_title }) do
2022-08-13 15:12:31 +05:30
= label_subscription_toggle_button_text(label, @project)