Sha256: d22b1fd2eb36ade0e6a4cc9bcc542c822d603d49d1d6d55ec4f0a860049520cf

Contents?: true

Size: 938 Bytes

Versions: 9

Compression:

Stored size: 938 Bytes

Contents

class PatronMergeList < ActiveRecord::Base
  attr_accessible :title
  has_many :patron_merges, :dependent => :destroy
  has_many :patrons, :through => :patron_merges
  validates_presence_of :title

  def self.per_page
    10
  end

  def merge_patrons(selected_patron)
    self.patrons.each do |patron|
      Create.update_all(['patron_id = ?', selected_patron.id], ['patron_id = ?', patron.id])
      Produce.update_all(['patron_id = ?', selected_patron.id], ['patron_id = ?', patron.id])
      Own.update_all(['patron_id = ?', selected_patron.id], ['patron_id = ?', patron.id])
      Donate.update_all(['patron_id = ?', selected_patron.id], ['patron_id = ?', patron.id])
      patron.destroy unless patron == selected_patron
    end
  end
end

# == Schema Information
#
# Table name: patron_merge_lists
#
#  id         :integer         not null, primary key
#  title      :string(255)
#  created_at :datetime
#  updated_at :datetime
#

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
enju_resource_merge-0.0.17 app/models/patron_merge_list.rb
enju_resource_merge-0.0.16 app/models/patron_merge_list.rb
enju_resource_merge-0.0.15 app/models/patron_merge_list.rb
enju_resource_merge-0.0.14 app/models/patron_merge_list.rb
enju_resource_merge-0.0.13 app/models/patron_merge_list.rb
enju_resource_merge-0.0.12 app/models/patron_merge_list.rb
enju_resource_merge-0.0.11 app/models/patron_merge_list.rb
enju_resource_merge-0.0.10 app/models/patron_merge_list.rb
enju_resource_merge-0.0.9 app/models/patron_merge_list.rb