module Transferuj
Public Class Methods
configured?()
click to toggle source
# File lib/transferuj.rb, line 40 def self.configured? self.id.present? && self.security_code.present? end
id()
click to toggle source
# File lib/transferuj.rb, line 12 def self.id @@id end
id=(new_id)
click to toggle source
# File lib/transferuj.rb, line 8 def self.id=(new_id) @@id = new_id end
pay_url(params = {})
click to toggle source
Creates URL for redirection to pay page
# File lib/transferuj.rb, line 26 def self.pay_url(params = {}) self.sanity_check! md5sum = Digest::MD5.hexdigest(self.id.to_s+params[:kwota].to_s+params[:crc].to_s+self.security_code.to_s) params.merge!({:id => self.id, :md5sum => md5sum}) URI::HTTP.build(:host => "secure.transferuj.pl", :query => params.to_query).to_s end
sanity_check!()
click to toggle source
# File lib/transferuj.rb, line 44 def self.sanity_check! unless configured? raise Exception.new("Transferuj Gem not properly configured. See README to get help how to do it.") end end
security_code()
click to toggle source
# File lib/transferuj.rb, line 21 def self.security_code @@security_code end
security_code=(new_security_code)
click to toggle source
Security code
# File lib/transferuj.rb, line 17 def self.security_code=(new_security_code) @@security_code = new_security_code end
webhook_valid?(transaction, ip)
click to toggle source
Checks MD5 checksum and IP of request
# File lib/transferuj.rb, line 34 def self.webhook_valid?(transaction, ip) self.sanity_check! md5sum = Digest::MD5.hexdigest(self.id.to_s+transaction[:tr_id].to_s+transaction[:tr_amount].to_s+transaction[:tr_crc].to_s+self.security_code.to_s) ip == '195.149.229.109' && transaction[:md5sum] == md5sum end