class Papapi::Affiliate
Constants
- A_ALLOWED_FIELDS
- M_ALLOWED_FIELDS
Attributes
response[RW]
Public Class Methods
new(session, response = nil)
click to toggle source
# File lib/papapi/affiliate.rb, line 16 def initialize(session, response = nil) @session = session if @session.is_affiliate? @load_class = 'Pap_Affiliates_Profile_PersonalDetailsForm' @save_class = 'Pap_Affiliates_Profile_PersonalDetailsForm' else @load_class = 'Pap_Signup_AffiliateForm' @save_class = 'Pap_Merchants_User_AffiliateForm' end @response = response @user_id = nil @update_fields = {} end
Public Instance Methods
[](key)
click to toggle source
# File lib/papapi/affiliate.rb, line 93 def [] (key) @response ? @response[key.to_sym] : nil end
[]=(key, value)
click to toggle source
# File lib/papapi/affiliate.rb, line 98 def []= (key, value) raise "Field #{key} can not be modified" if (@session.is_affiliate? && ! A_ALLOWED_FIELDS.include?(key.to_sym)) || (@session.is_merchant? && ! M_ALLOWED_FIELDS.include?(key.to_sym)) @update_fields[key.to_sym] = value end
getLoginKey()
click to toggle source
# File lib/papapi/affiliate.rb, line 77 def getLoginKey raise "Merchant session is required" if @session.is_affiliate? request = Papapi::FormRequest.new('Pap_Auth_LoginKeyService', 'getLoginKey', @session) request.set_param("userId", self.id) response = request.send return response[:LoginKey] end
id()
click to toggle source
# File lib/papapi/affiliate.rb, line 73 def id @response ? @response[:userid] : @user_id end
id=(user_id)
click to toggle source
# File lib/papapi/affiliate.rb, line 88 def id=(user_id) @user_id = user_id end
load()
click to toggle source
# File lib/papapi/affiliate.rb, line 31 def load request = Papapi::FormRequest.new(@load_class, 'load', @session) unless @user_id.nil? request.set_field("Id", @user_id) request.set_field("userid", @user_id) end @response = request.send self end
save()
click to toggle source
# File lib/papapi/affiliate.rb, line 44 def save raise "Affiliate id is required" if @session.is_merchant? && ! self.id request = Papapi::FormRequest.new(@save_class, 'save', @session) if @response @response.fields.each do |key, value| request.set_field(key, value) if (@session.is_affiliate? && A_ALLOWED_FIELDS.include?(key.to_sym)) || (@session.is_merchant? && M_ALLOWED_FIELDS.include?(key.to_sym)) end end @update_fields.each do |key, value| request.set_field(key, value) if (@session.is_affiliate? && A_ALLOWED_FIELDS.include?(key.to_sym)) || (@session.is_merchant? && M_ALLOWED_FIELDS.include?(key.to_sym)) end if @session.is_affiliate? request.set_field("Id", "") else request.set_field("Id", self.id) end @response = request.send @update_fields = {} self end
to_h()
click to toggle source
# File lib/papapi/affiliate.rb, line 104 def to_h response ? response.to_h : {} end