self.send :define_method, "total_#{quantity}" do |items = nil|
        items ||= (self.ordered_items rescue nil) || self.items
        items.collect(&quantity).inject(0) { |sum, q| sum + q.to_f }