1# frozen_string_literal: true 2 3module IssueLinks 4 class DestroyService < IssuableLinks::DestroyService 5 private 6 7 def source 8 @source ||= link.source 9 end 10 11 def target 12 @target ||= link.target 13 end 14 15 def permission_to_remove_relation? 16 can?(current_user, :admin_issue_link, source) && can?(current_user, :admin_issue_link, target) 17 end 18 19 def create_notes 20 SystemNoteService.unrelate_issue(source, target, current_user) 21 SystemNoteService.unrelate_issue(target, source, current_user) 22 end 23 24 def track_event 25 track_incident_action(current_user, target, :incident_unrelate) 26 end 27 end 28end 29