module ActiveBugzilla::Bug::FlagsManagement

Public Instance Methods

changed?()
Also aliased as: changed_without_flags?
Alias for: changed_with_flags?
changed_attributes()
changed_attributes_with_flags() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 70
def changed_attributes_with_flags
  changed_attributes = changed_attributes_without_flags
  changed_attributes['flags'] = flags_previous_value if flags.changed?
  changed_attributes
end
Also aliased as: changed_attributes
changed_attributes_without_flags()
Alias for: changed_attributes
changed_with_flags?() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 52
def changed_with_flags?
  changed_without_flags? || flags.changed?
end
Also aliased as: changed?
changed_without_flags?()
Alias for: changed?
changes()
Also aliased as: changes_without_flags
Alias for: changes_with_flags
changes_with_flags() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 56
def changes_with_flags
  changes = changes_without_flags
  changes['flags'] = [flags_previous_value, flags] if flags.changed?
  changes
end
Also aliased as: changes
changes_without_flags()
Alias for: changes
flag_objects() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 17
def flag_objects
  @flag_objects ||= ActiveBugzilla::Flag.instantiate_from_raw_data(raw_flags, @id)
end
flags() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 26
def flags
  @flags ||= begin
    flags_hash = flag_objects.each_with_object(DirtyIndifferentHashy.new) do |flag, hash|
      hash[flag.name] = flag.status
    end
    flags_hash.clean_up!
    flags_hash
  end
end
flags=(value) click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 21
def flags=(value)
  flags_will_change! unless value == @flags
  @flags = value
end
flags_previous_value() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 62
def flags_previous_value
  previous_flags = flags.dup
  flags.changes.each do |key, value|
    previous_flags[key] = value.first
  end
  previous_flags
end
flags_raw_updates() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 36
def flags_raw_updates
  raw_updates = []
  flags.changes.each do |key, value|
    _old_status, new_status = value
    new_status ||= 'X'
    raw_updates << {'name' => key.to_s, "status" => new_status}
  end
  raw_updates
end
reset_flags() click to toggle source
# File lib/active_bugzilla/bug/flags_management.rb, line 46
def reset_flags
  @flag_objects = nil
  @flags        = nil
  flags
end