module Gameball module Utils extend self def hashBody(playerUniqueId:,transactionTime:"",amount:"") # Check if transaction Key is provided else raise Exc if !Gameball.transaction_key raise Gameball::GameballError.new("Please provide transaction_key, try Gameball::transaction_key='your_key'") # Raise exception else if transactionTime=="" formatted_time="" else # begin formatted_time=transactionTime.strftime("%y%m%d%H%M%S") # rescue => exception # end end end str=playerUniqueId+":"+formatted_time+":"+amount.to_s+":"+Gameball.transaction_key puts str return Digest::SHA1.hexdigest (str) end def extractAttributesToHash(body) playerUniqueId=body[:playerUniqueId] amount=body[:amount] transactionTime=body[:transactionTime] begin body[:transactionTime]=transactionTime.iso8601 rescue NoMethodError => exception raise Gameball::GameballError.new("Invalid Date Formate, Please use Date and Time objects") end body["bodyHashed"]=Gameball::Utils::hashBody(playerUniqueId:playerUniqueId,amount:(amount||""),transactionTime:(transactionTime||"")) body end end end