From 33a6971c37f57d5730e2d5ddad0abfd4559a27aa Mon Sep 17 00:00:00 2001 From: Maciej Szlosarczyk Date: Mon, 23 Apr 2018 11:13:42 +0300 Subject: [PATCH] Fix some codeclimate issues --- app/controllers/registrar/payments_controller.rb | 16 ++++++++-------- app/models/payments.rb | 2 +- app/models/payments/bank_link.rb | 9 +++------ app/models/payments/every_pay.rb | 9 +++++---- 4 files changed, 17 insertions(+), 19 deletions(-) diff --git a/app/controllers/registrar/payments_controller.rb b/app/controllers/registrar/payments_controller.rb index 1c546014c..fbefaf50d 100644 --- a/app/controllers/registrar/payments_controller.rb +++ b/app/controllers/registrar/payments_controller.rb @@ -8,15 +8,16 @@ class Registrar def pay invoice = Invoice.find(params[:invoice_id]) + bank = params[:bank] opts = { - return_url: self.registrar_return_payment_with_url( - params[:bank], invoice_id: invoice.id + return_url: registrar_return_payment_with_url( + bank, invoice_id: invoice ), - response_url: self.registrar_response_payment_with_url( - params[:bank], invoice_id: invoice.id + response_url: registrar_response_payment_with_url( + bank, invoice_id: invoice ) } - @payment = ::Payments.create_with_type(params[:bank], invoice, opts) + @payment = ::Payments.create_with_type(bank, invoice, opts) @payment.create_transaction end @@ -53,9 +54,8 @@ class Registrar private def check_supported_payment_method - unless supported_payment_method? - raise StandardError.new("Not supported payment method") - end + return if supported_payment_method? + raise StandardError.new("Not supported payment method") end diff --git a/app/models/payments.rb b/app/models/payments.rb index f379bd455..23421f5ec 100644 --- a/app/models/payments.rb +++ b/app/models/payments.rb @@ -4,7 +4,7 @@ module Payments PAYMENT_METHODS = [PAYMENT_INTERMEDIARIES, PAYMENT_BANKLINK_BANKS].flatten.freeze def self.create_with_type(type, invoice, opts = {}) - fail ArgumentError unless PAYMENT_METHODS.include?(type) + raise ArgumentError unless PAYMENT_METHODS.include?(type) if PAYMENT_BANKLINK_BANKS.include?(type) BankLink.new(type, invoice, opts) diff --git a/app/models/payments/bank_link.rb b/app/models/payments/bank_link.rb index 35004e487..59a97e454 100644 --- a/app/models/payments/bank_link.rb +++ b/app/models/payments/bank_link.rb @@ -75,10 +75,7 @@ module Payments private def valid_successful_transaction? - return false unless valid_success_notice? - return false unless valid_amount? - return false unless valid_currency? - true + valid_success_notice? && valid_amount? && valid_currency? end def valid_cancel_notice? @@ -113,12 +110,12 @@ module Payments def calc_mac(fields) pars = NEW_MESSAGE_KEYS - data = pars.map { |e| prepend_size(fields[e]) }.join + data = pars.map { |element| prepend_size(fields[element]) }.join sign(data) end def valid_mac?(hash, keys) - data = keys.map { |e| prepend_size(hash[e]) }.join + data = keys.map { |element| prepend_size(hash[element]) }.join verify_mac(data, hash["VK_MAC"]) end diff --git a/app/models/payments/every_pay.rb b/app/models/payments/every_pay.rb index 13150e43f..aed0bcc1a 100644 --- a/app/models/payments/every_pay.rb +++ b/app/models/payments/every_pay.rb @@ -12,7 +12,7 @@ module Payments # Not all requests require use of hmac_fields, add only when needed base_json[:hmac_fields] = hmac_fields.join(',') - hmac_string = hmac_fields.map { |k, _v| "#{k}=#{base_json[k]}" }.join('&') + hmac_string = hmac_fields.map { |key, _v| "#{key}=#{base_json[key]}" }.join('&') hmac = OpenSSL::HMAC.hexdigest('sha1', KEY, hmac_string) base_json[:hmac] = hmac @@ -38,7 +38,7 @@ module Payments ) transaction.sum = response[:amount] - transaction.paid_at = DateTime.strptime(response[:timestamp], '%s') + transaction.paid_at = Date.strptime(response[:timestamp], '%s') transaction.buyer_name = response[:cc_holder_name] transaction.save! @@ -65,10 +65,11 @@ module Payments hmac_fields = response[:hmac_fields].split(',') hmac_hash = {} hmac_fields.map do |field| - hmac_hash[field.to_sym] = response[field.to_sym] + symbol = field.to_sym + hmac_hash[symbol] = response[symbol] end - hmac_string = hmac_hash.map { |k, _v| "#{k}=#{hmac_hash[k]}" }.join('&') + hmac_string = hmac_hash.map { |key, _v| "#{key}=#{hmac_hash[key]}" }.join('&') expected_hmac = OpenSSL::HMAC.hexdigest('sha1', KEY, hmac_string) expected_hmac == response[:hmac] end