Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class PurchaseOrderStatus
- attr_accessor :id, :name, :symbol
- def initialize(options = {})
- options = options.symbolize_keys
- @id, @name = options[:id], options[:name]
- end
- def symbol
- @name.to_s.downcase.intern
- end
- def self.[](value)
- @@statuses.select { |status| status.symbol == value.to_s.downcase.intern }.first
- end
- def self.find(id)
- @@statuses.select { |status| status.id.to_s == id.to_s }.first
- end
- def self.find_all
- @@statuses.dup
- end
- # 1 Pending
- # 2 Accepted
- # 3 Authorized
- # 4 Ordered
- # 5 Received
- # 6 Invoiced
- # 7 Closed
- @@statuses = [
- PurchaseOrderStatus.new(:id => 1, :symbol => :pending, :name => _('Pending')),
- PurchaseOrderStatus.new(:id => 2, :symbol => :accepted, :name => _('Accepted')),
- PurchaseOrderStatus.new(:id => 3, :symbol => :authorized, :name => _('Authorized')),
- PurchaseOrderStatus.new(:id => 4, :symbol => :ordered, :name => _('Ordered')),
- PurchaseOrderStatus.new(:id => 5, :symbol => :received, :name => _('Received')),
- PurchaseOrderStatus.new(:id => 6, :symbol => :invoiced, :name => _('Invoiced')),
- PurchaseOrderStatus.new(:id => 7, :symbol => :closed, :name => _('Closed'))
- ]
- end
Add Comment
Please, Sign In to add comment