module Opay module Helpers module PayuHelper def payu_form_for(record, options = {}, &block) options[:builder] ||= Opay::FormBuilder options[:url] = Opay::Providers::Payu.url(:new_payment) options[:html] = { id: "payu_payment_form_#{record.id}", class: 'payu_payment_form' } record.create_payment!(session_id: record.payment_session_id, provider: 'payu', amount: record.amount) form_for(record, options, &block) end def payment_info(options = {}) options[:first_name] ||= object.first_name options[:last_name] ||= object.last_name options[:email] ||= object.email options[:pos_id] ||= Opay.config.pos_id options[:pos_auth_key] ||= Opay.config.pos_auth_key options[:session_id] ||= object.payment_session_id options[:amount] ||= object.amount options[:desc] ||= object.payment_description options[:client_ip] ||= request.env['HTTP_USER_AGENT'] options[:js] = 0 fields = options.map { |key, val| @template.hidden_field_tag(key, val) }.join("\n") js = "" "#{fields}\n#{js}".html_safe end end end end