Sha256: 9947b4731d1ff548a2f9cf4a6a07902b9a69993dff3c32a7e8b407c53ead5c8d
Contents?: true
Size: 1.21 KB
Versions: 9
Compression:
Stored size: 1.21 KB
Contents
module KktShoppe class DeliveryService < ActiveRecord::Base self.table_name = 'kkt_shoppe_delivery_services' # Validations validates :name, :presence => true validates :courier, :presence => true # Orders which are assigned to this delivery service has_many :orders, :dependent => :restrict_with_exception, :class_name => 'KktShoppe::Order' # Prices for the different levels of service within this delivery service has_many :delivery_service_prices, :dependent => :destroy, :class_name => 'KktShoppe::DeliveryServicePrice' # All active delivery services scope :active, -> { where(:active => true)} # Returns a tracking URL for the passed order # # @param order [KktShoppe::Order] # @return [String] the full URL for the order. def tracking_url_for(order) return nil if self.tracking_url.blank? tracking_url = self.tracking_url.dup tracking_url.gsub!("{{consignment_number}}", CGI.escape(order.consignment_number.to_s)) tracking_url.gsub!("{{delivery_postcode}}", CGI.escape(order.delivery_postcode.to_s)) tracking_url.gsub!("{{billing_postcode}}", CGI.escape(order.billing_postcode.to_s)) tracking_url end end end
Version data entries
9 entries across 9 versions & 1 rubygems