module Locker::Label

Label helpers

Public Instance Methods

label_dependencies(name) click to toggle source
# File lib/locker/label.rb, line 206
def label_dependencies(name)
  msg = failed(t('label.dependency')) + "\n"
  deps = []
  l = Label.new(name)
  l.membership.each do |resource_name|
    resource = Locker::Resource::Resource.new(resource_name)
    deps.push "#{resource_name} - #{resource.owner.name}" if resource.state.value == 'locked'
  end
  msg += deps.join("\n")
  msg
end
label_ownership(name) click to toggle source
# File lib/locker/label.rb, line 190
def label_ownership(name)
  l = Label.new(name)
  return label_dependencies(name) unless l.locked?
  queue = []
  l.wait_queue.each do |u|
    usr = Lita::User.find_by_id(u)
    queue.push(usr.name)
  end
  mention = render_template('mention', name: l.owner.mention_name, id: l.owner.id)
  failed(t('label.owned_lock', name: name,
                               owner_name: l.owner.name,
                               mention: mention,
                               time: l.held_for,
                               queue: queue.join(', ')))
end