Sha256: 4bd6a22f6ed42f208c6129584408319620a66a300b19ccf4364846fb92d5ae8e

Contents?: true

Size: 538 Bytes

Versions: 9

Compression:

Stored size: 538 Bytes

Contents

# -*- encoding : utf-8 -*-
require 'rubykassa/signature_generator'

module Rubykassa
  class Notification
    include SignatureGenerator

    attr_accessor :params

    def initialize params
      @params = params
      @invoice_id = params["InvId"]
      @total = params["OutSum"]
    end

    %w(result success).map do |kind|
      define_method "valid_#{kind}_signature?" do
        @params["SignatureValue"].downcase == generate_signature_for(kind.to_sym)
      end
    end

    def success
      "OK#{@invoice_id}"
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
rubykassa-0.4.1 lib/rubykassa/notification.rb
rubykassa-0.4.0 lib/rubykassa/notification.rb
rubykassa-0.3.2 lib/rubykassa/notification.rb
rubykassa-0.3.1 lib/rubykassa/notification.rb
rubykassa-0.3.0 lib/rubykassa/notification.rb
rubykassa-0.2.6 lib/rubykassa/notification.rb
rubykassa-0.2.5 lib/rubykassa/notification.rb
rubykassa-0.2.4 lib/rubykassa/notification.rb
rubykassa-0.2.3 lib/rubykassa/notification.rb