class Netfira::WebConnect::RackApp::Action::Version8::Confirm
Private Class Methods
types()
click to toggle source
# File lib/netfira/web_connect/rack_app/actions/version_8/confirm.rb, line 25 def self.types @types ||= Model::Record.sendable.map { |k| [k.plural_name.camelize(:lower), k] }.to_h end
Public Instance Methods
call()
click to toggle source
# File lib/netfira/web_connect/rack_app/actions/version_8/confirm.rb, line 6 def call allow :put, Hash self.class.types.each do |type, klass| ids = input[type] ids.each { |guid| confirm_delivery klass, guid if %r`^[\w+/]{22}$` === guid } if Array === ids end {} end
Private Instance Methods
confirm_delivery(klass, guid)
click to toggle source
# File lib/netfira/web_connect/rack_app/actions/version_8/confirm.rb, line 17 def confirm_delivery(klass, guid) record = klass.find_by(shop_id: shop.id, guid: Guid.from_base64(guid).b) if record record.delivered! record.save! end end