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
2016-10-28 14:21:45 -04:00
- subject = local_assigns[:subject]
2017-06-26 16:52:53 -04:00
- toggle_subscription_path = toggle_subscription_label_path(label, @project) if current_user
2016-09-19 23:09:57 -04:00
2016-12-26 05:47:16 -05:00
%li{ id: label_css_id, data: { id: label.id } }
2016-02-19 00:34:45 -05:00
= render "shared/label_row", label: label
2016-03-01 21:07:08 -05:00
2016-05-24 05:29:26 -04:00
.visible-xs.visible-sm-inline-block.visible-md-inline-block.dropdown
2017-06-27 06:46:01 -04:00
%button.btn.btn-default.label-options-toggle{ type: 'button', data: { toggle: "dropdown" } }
2016-05-24 05:29:26 -04:00
Options
2016-08-23 12:02:52 -04:00
= icon('caret-down')
2016-05-24 05:29:26 -04:00
.dropdown-menu.dropdown-menu-align-right
%ul
%li
2016-10-28 14:21:45 -04:00
= link_to_label(label, subject: subject, type: :merge_request) do
2017-02-17 07:28:29 -05:00
view merge requests
2016-05-24 05:29:26 -04:00
%li
2016-10-28 14:21:45 -04:00
= link_to_label(label, subject: subject) do
2017-02-17 07:28:29 -05:00
view open issues
2017-06-22 22:11:14 -04:00
- if current_user
2016-11-15 14:28:02 -05:00
%li.label-subscription
2017-06-23 14:30:13 -04:00
- if can_subscribe_to_label_in_different_levels?(label)
2017-06-23 14:17:51 -04:00
%a.js-unsubscribe-button.label-subscribe-button{ role: 'button', href: '#', class: ('hidden' if status.unsubscribed?), data: { url: toggle_subscription_path } }
2016-11-15 18:00:45 -05:00
%span Unsubscribe
2017-06-29 13:06:35 -04:00
%a.js-subscribe-button.label-subscribe-button{ role: 'button', href: '#', class: ('hidden' unless status.unsubscribed?), data: { url: toggle_subscription_project_label_path(@project, label) } }
2016-11-15 18:00:45 -05:00
%span Subscribe at project level
%a.js-subscribe-button.label-subscribe-button{ role: 'button', href: '#', class: ('hidden' unless status.unsubscribed?), data: { url: toggle_subscription_group_label_path(label.group, label) } }
%span Subscribe at group level
2017-06-23 14:30:13 -04:00
- else
%a.js-subscribe-button.label-subscribe-button{ role: 'button', href: '#', data: { status: status, url: toggle_subscription_path } }
%span= label_subscription_toggle_button_text(label, @project)
2016-11-15 18:00:45 -05:00
2016-09-20 14:50:11 -04:00
- if can?(current_user, :admin_label, label)
2016-05-24 05:29:26 -04:00
%li
2016-09-19 23:09:57 -04:00
= link_to 'Edit', edit_label_path(label)
2016-05-24 05:29:26 -04:00
%li
2016-11-12 18:51:47 -05:00
= link_to 'Delete', destroy_label_path(label), title: 'Delete', method: :delete, data: {confirm: 'Remove this label? Are you sure?'}
2016-02-19 00:34:45 -05:00
2016-05-24 05:29:26 -04:00
.pull-right.hidden-xs.hidden-sm.hidden-md
2016-10-28 14:21:45 -04:00
= link_to_label(label, subject: subject, type: :merge_request, css_class: 'btn btn-transparent btn-action') do
2017-02-17 07:28:29 -05:00
view merge requests
2016-10-28 14:21:45 -04:00
= link_to_label(label, subject: subject, css_class: 'btn btn-transparent btn-action') do
2017-02-17 07:28:29 -05:00
view open issues
2016-04-01 13:41:36 -04:00
2017-06-22 22:11:14 -04:00
- if current_user
2016-11-15 14:28:02 -05:00
.label-subscription.inline
2017-06-23 14:30:13 -04:00
- if can_subscribe_to_label_in_different_levels?(label)
2017-06-23 14:17:51 -04:00
%button.js-unsubscribe-button.label-subscribe-button.btn.btn-default{ type: 'button', class: ('hidden' if status.unsubscribed?), data: { url: toggle_subscription_path } }
2016-11-15 16:59:12 -05:00
%span Unsubscribe
= icon('spinner spin', class: 'label-subscribe-button-loading')
.dropdown.dropdown-group-label{ class: ('hidden' unless status.unsubscribed?) }
2016-12-26 05:47:16 -05:00
%button.dropdown-menu-toggle{ type: 'button', 'data-toggle' => 'dropdown' }
2016-11-15 16:59:12 -05:00
%span Subscribe
= icon('chevron-down')
%ul.dropdown-menu
%li
2017-06-29 13:06:35 -04:00
%a.js-subscribe-button{ class: ('hidden' unless status.unsubscribed?), data: { url: toggle_subscription_project_label_path(@project, label) } }
2016-11-15 16:59:12 -05:00
Project level
2017-06-26 16:52:53 -04:00
%a.js-subscribe-button{ class: ('hidden' unless status.unsubscribed?), data: { url: toggle_subscription_group_label_path(label.group, label) } }
2016-11-15 16:59:12 -05:00
Group level
2017-06-23 14:30:13 -04:00
- else
%button.js-subscribe-button.label-subscribe-button.btn.btn-default{ type: 'button', data: { status: status, url: toggle_subscription_path } }
%span= label_subscription_toggle_button_text(label, @project)
= icon('spinner spin', class: 'label-subscribe-button-loading')
2016-02-12 09:58:39 -05:00
2017-06-08 06:44:33 -04:00
- if label.is_a?(ProjectLabel) && label.project.group && can?(current_user, :admin_label, label.project.group)
2017-06-29 13:06:35 -04:00
= link_to promote_project_label_path(label.project, label), title: "Promote to Group Label", class: 'btn btn-transparent btn-action', data: {confirm: "Promoting this label will make this label available to all projects inside this group. Existing project labels with the same name will be merged. Are you sure?", toggle: "tooltip"}, method: :post do
2016-11-02 07:58:59 -04:00
%span.sr-only Promote to Group
= icon('level-up')
2016-09-20 14:50:11 -04:00
- if can?(current_user, :admin_label, label)
2016-09-19 23:09:57 -04:00
= link_to edit_label_path(label), title: "Edit", class: 'btn btn-transparent btn-action', data: {toggle: "tooltip"} do
2016-05-24 05:29:26 -04:00
%span.sr-only Edit
2016-05-25 04:43:03 -04:00
= icon('pencil-square-o')
2016-11-12 18:51:47 -05:00
= link_to destroy_label_path(label), title: "Delete", class: 'btn btn-transparent btn-action remove-row', method: :delete, data: {confirm: label_deletion_confirm_text(label), toggle: "tooltip"} do
2016-05-24 05:29:26 -04:00
%span.sr-only Delete
2016-05-25 04:43:03 -04:00
= icon('trash-o')