barion 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +0 -0
  3. data/README.md +73 -11
  4. data/Rakefile +0 -0
  5. data/app/assets/config/barion_manifest.js +0 -0
  6. data/app/assets/stylesheets/barion/application.css +0 -0
  7. data/app/assets/stylesheets/barion/main.css +0 -0
  8. data/app/controllers/barion/main_controller.rb +0 -0
  9. data/app/helpers/barion/application_helper.rb +0 -0
  10. data/app/helpers/barion/main_helper.rb +0 -0
  11. data/app/helpers/barion/pixel_helper.rb +38 -0
  12. data/app/models/barion/application_record.rb +0 -0
  13. data/app/models/barion/gift_card_purchase.rb +0 -0
  14. data/app/models/barion/item.rb +0 -0
  15. data/app/models/barion/payment.rb +0 -0
  16. data/app/models/concerns/barion/currencies.rb +0 -0
  17. data/app/models/concerns/barion/data_formats.rb +0 -0
  18. data/app/models/concerns/barion/json_serializer.rb +0 -0
  19. data/app/views/barion/main/land.html.erb +0 -0
  20. data/config/initializers/barion.rb +1 -0
  21. data/config/routes.rb +0 -3
  22. data/db/migrate/20201222235354_create_barion_payments.rb +0 -0
  23. data/db/migrate/20201223001557_create_barion_addresses.rb +0 -0
  24. data/db/migrate/20201223002427_create_barion_payment_transactions.rb +0 -0
  25. data/db/migrate/20201223003219_create_barion_purchases.rb +0 -0
  26. data/db/migrate/20210111051233_create_barion_payer_accounts.rb +0 -0
  27. data/db/migrate/20210128220347_create_barion_items.rb +0 -0
  28. data/db/migrate/20210201120609_create_barion_gift_card_purchases.rb +0 -0
  29. data/lib/barion/engine.rb +7 -0
  30. data/lib/barion/version.rb +1 -1
  31. data/lib/barion.rb +25 -5
  32. data/lib/tasks/auto_annotate_models.rake +0 -0
  33. data/lib/tasks/barion_tasks.rake +0 -0
  34. metadata +5 -116
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aeb71eb691ad4f09c11b3f5246ad237236276876b06cc35889a48e8689f6a03c
4
- data.tar.gz: 0eb0087ca813923da627c2bea6f9b8fc5d4e990aaf751d134c7077d578602b4b
3
+ metadata.gz: 575b950187d8de272065169bce30d830c4731761b4b25b9d7533e8899b2674dd
4
+ data.tar.gz: 4465db2681c4da8f1b8b4b01b6ef34158be8d7bacb02302eae779cd1fcff7985
5
5
  SHA512:
6
- metadata.gz: f46e09f30aa52d8228347bf832dc8653f96fd14194dcc78e456f4ece99c02bde9496e0923829296e4b205f612bf20edc754a8d10419075f0cfed109b590f34e3
7
- data.tar.gz: 798eec6a3fc31cded9b55ac1225855d918e522ec44272d956be3865f64effb0fd121110dd0bdef6250dfbfc0ae417c432b9a53f4be2cca1fc03956d9a70cd4d1
6
+ metadata.gz: ca9acdf451e26ab69a247b8098be1db3f8f43ffada9229a9f5e0378a6db5b8c8afcf720751de5117708d2372eefd3242fbe874d2abaed5c3cf1da7930a2c15b2
7
+ data.tar.gz: 5b708506775ecb6ecb647ceeafd1fcd0fb707447f78b77d922c91a1e66c9532d73b373376ec72a34c2db38e2a579166eb8ac1339ada8ee97809044484ad3e829
data/MIT-LICENSE CHANGED
File without changes
data/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # Barion
2
+
2
3
  ![Barion](https://github.com/Meter-reader/Barion/workflows/Ruby/badge.svg)
3
4
  [![codecov](https://codecov.io/gh/Meter-Reader/barion/branch/main/graph/badge.svg?token=DCOKCM7B2J)](https://codecov.io/gh/Meter-Reader/barion)
4
5
  [![Gem Version](https://badge.fury.io/rb/barion.svg)](https://badge.fury.io/rb/barion)
@@ -6,6 +7,7 @@
6
7
  This is a Ruby-on-Rails engine to use the Barion Payment Gateway in any RoR application.
7
8
 
8
9
  ## Installation
10
+
9
11
  Add this line to your application's Gemfile:
10
12
 
11
13
  ```ruby
@@ -13,42 +15,61 @@ gem 'barion'
13
15
  ```
14
16
 
15
17
  And then execute:
18
+
16
19
  ```bash
17
- $ bundle
20
+ bundle
18
21
  ```
19
22
 
20
23
  Or install it yourself as:
24
+
21
25
  ```bash
22
- $ gem install barion
26
+ gem install barion
23
27
  ```
28
+
24
29
  ## Usage
30
+
25
31
  ### Initalization
32
+
26
33
  After installing the gem you have to initalize it.
27
34
  Just create a file in `config/initializers/barion.rb` with the below content:
35
+
28
36
  ```ruby
29
37
  ::Barion.config do |shop|
30
38
  shop.poskey = ''
31
39
  shop.publickey = ''
40
+ shop.pixel_id = ''
32
41
  shop.sandbox = true
33
42
  shop.acronym = ''
34
43
  shop.default_payee = ''
35
44
  end
36
45
  ```
46
+
37
47
  #### POSKey and PublicKey (default: empty)
48
+
38
49
  You can find your `POSKey` and `PublicKey` at the Barion Shop website:
39
50
 
40
- Test : https://secure.test.barion.com/Shop/
51
+ Test : <https://secure.test.barion.com/Shop/>
41
52
 
42
- Production : https://secure.barion.com/Shop/
53
+ Production : <https://secure.barion.com/Shop/>
43
54
 
44
55
  ![POSKey and PublicKey at Barion Shop](https://docs.barion.com/images/2/2b/Poskey.jpg "POSKey and PublicKey at Barion Shop")
45
56
 
46
57
  You have to open the shop Details from the `Action` dropdown of your shop. Please be aware that these values are different for Test and Production shops.
47
58
 
59
+ #### Pixel ID (default: '')
60
+
61
+ [Implementing the Base Barion Pixel](https://docs.barion.com/Implementing_the_Base_Barion_Pixel)
62
+
63
+ Your Barion Pixel ID can be found in the Details page of your Barion shop. Every webshop (with a unique POSKey) has a different Barion Pixel ID. You can find your Barion Pixel ID in your Barion wallet: click `Manage my shops` menu, `Actions` next to your shop and then `Details`.
64
+
65
+
66
+
48
67
  #### Sandbox (default: true)
68
+
49
69
  It is **highly recommended** to use a Test shop first to tune the code first. That's why `sandbox` is set to **true** by default.
50
70
 
51
- #### Acronym (default: empyty)
71
+ #### Acronym (default: empty)
72
+
52
73
  Acronym is used to generate the `payment_request_id` Barion requires to identify every payment request as the below code snippets shows. You can change this by overriding/decorating this method in your code.
53
74
 
54
75
  ```ruby
@@ -56,39 +77,49 @@ def create_payment_request_id
56
77
  self.payment_request_id = "#{::Barion.acronym}#{::Time.now.to_f.to_s.gsub('.', '')}" if payment_request_id.nil?
57
78
  end
58
79
  ```
80
+
59
81
  #### Default payee (Default: empty)
82
+
60
83
  Barion requires an e-mail address in every transaction to identify the recipient user of the transaction. The Barion wallet which has this e-mail address registeres will receives the money when the payment is completed by the payer.
61
84
 
62
85
  You can see this address in the Barion Shop interface below your shop icon on the top left corner.
63
86
 
64
87
  ### Set up your database
88
+
65
89
  This gem comes with predefined models. To use them, you have to copy the migrations into your application and migrate them using:
90
+
66
91
  ```bash
67
92
  bundle exec rails barion:install:migrations
68
93
  bundle exec rails db:migrate SCOPE=barion
69
94
  ```
70
95
 
71
96
  ### Mounting the engine
97
+
72
98
  You have to mount the Barion engine to be able to receive callback(s) from Barion Gateway like:
99
+
73
100
  ```ruby
74
101
  mount ::Barion::Engine, at: "/barion"
75
102
  ```
76
103
 
77
104
  ### Creating payment
105
+
78
106
  Once initialized you can create payments like below:
107
+
79
108
  ```ruby
80
109
  payment = ::Barion:Payment.new
81
110
  transaction = payment.transactions.build
82
111
  item = transaction.items.build
83
112
  ```
84
- * You can find the properties of Payment here: https://docs.barion.com/Payment-Start-v2,
85
113
 
86
- * for the properties of Transaction see here: https://docs.barion.com/PaymentTransaction
114
+ * You can find the properties of Payment here: <https://docs.barion.com/Payment-Start-v2>,
115
+
116
+ * for the properties of Transaction see here: <https://docs.barion.com/PaymentTransaction>
87
117
  (*Note*: Transaction is used not just for starting the payment but to collect transaction details during the payment lifecycle.)
88
118
 
89
- * and for Item properties: https://docs.barion.com/Item
119
+ * and for Item properties: <https://docs.barion.com/Item>
90
120
 
91
121
  To check if all required properties are filled out you can use Rails built in validation:
122
+
92
123
  ```ruby
93
124
  unless payment.valid?
94
125
  payment.errors.object.each { |error|
@@ -97,9 +128,11 @@ payment.errors.object.each { |error|
97
128
  ```
98
129
 
99
130
  Once the payment is prepared you can start it by issuing
131
+
100
132
  ```ruby
101
133
  payment.execute
102
134
  ```
135
+
103
136
  This will send the required API requests to the Barion Gateway, depending on the `::Barion.sandbox` value either to the Test or the Production environment.
104
137
 
105
138
  When the payment started you will receive callback(s) from Barion Gateway when the state of your payment has been changed. There are several routes defined by this gem:
@@ -108,6 +141,7 @@ When the payment started you will receive callback(s) from Barion Gateway when t
108
141
  post 'callback', to: 'main#callback', as: :gateway_callback
109
142
  get 'land', to: 'main#land', as: :gateway_back
110
143
  ```
144
+
111
145
  The `gateway_callback` route will receive these callbacks from Barion Gateway. Every such message contains a `PaymentId` to identify which Payment has a state change. The gem is automatically tries to call a state refresh and get all the data of the payment from the Gateway.
112
146
 
113
147
  You can call this manually too by issuing:
@@ -115,23 +149,28 @@ You can call this manually too by issuing:
115
149
  ```ruby
116
150
  payment.refresh_state
117
151
  ```
118
- You can read more about this callback mechanism at https://docs.barion.com/Callback_mechanism.
152
+
153
+ You can read more about this callback mechanism at <https://docs.barion.com/Callback_mechanism>.
119
154
 
120
155
  #### Payment successful
156
+
121
157
  When a payment is completed at the Barion Gateway it will automatically redirect the user back to your application. By default every payment request will held this redirect URL, which points to this gem's `:gateway_back` route.
122
158
  You can change this however by setting the URL in the actual payment when creating it.
123
159
 
124
160
  #### Payment failed
161
+
125
162
  When a payment hasn't been completed if will eventually timeout at the Gateway. But if there was an issue of
126
163
 
127
164
  ### Error handling
165
+
128
166
  The gem has a lightweight wrapper for errors that the Barion API reports.
129
167
 
130
168
  When executing a payment (or in fact any other method which has an API call behind) an error can happen which the Barion API returns.
131
169
 
132
170
  The gem will raise a ``::Barion::Error`` type exception when receives such error(s). If multiple errors are returned, the exception will have an `errors` property which will contains all errors in an array also wrapped by ``::Barion::Error``.
133
171
 
134
- ``::Barion::Error`` has the folowinf properties:
172
+ ``::Barion::Error`` has the following properties:
173
+
135
174
  ```ruby
136
175
  error = ::Barion::Error.new
137
176
  error.title # Holds the value of Title attribute of the API error
@@ -143,14 +182,37 @@ error.endpoint # Holds the value of Endpoint attribute of the API error
143
182
  ```
144
183
 
145
184
  ### Security
185
+
146
186
  When a payment has been sent to the gateway it will become readonly for Rails. Only the Gateway is allowed to change its state trough the callbacks.
147
187
 
148
188
  To achieve this, a has is calculated for every payment when validating it. This hash will be stored in the DB and when a record is loaded in Rails it will be checked against the stored hash. If the hash does not match with the stored data a `::Barion::TamperedData` exception will be raised and the record will not be loaded. This basically mean that the data in the DB has been tampered outside this gem and cannot be considered financially safe.
149
189
 
150
190
  ## Contributing
151
- We encourage you to contribute to Barion gem!
191
+
192
+ We encourage you to contribute to this Barion gem!
193
+ To run tests:
194
+
195
+ 1. Fork the repository
196
+ 2. Check out your fork of this repo
197
+ 3. Set up rbenv and add rbenv-vars as plugin
198
+ 4. Set up your variables in .rbenv-vars like this:
199
+
200
+ ```ruby
201
+ CODECOV_TOKEN=<your token from Codecov.io>
202
+ TEST_PAYEE=<your registered test shop email address at Barion>
203
+ TEST_PIXEL_ID=<your test pixel id from Barion>
204
+ TEST_POSKEY=<your test poskey from Barion>
205
+ TEST_PUBKEY=<your test pubkey from Barion>
206
+ ```
207
+
208
+ 5. Run ``rails t`` to see if tests are working.
209
+ 6. start modifying the code and run tests all the time.
210
+ 7. Submit pull-request when done.
211
+
152
212
  ### Reporting issues or requesting features
213
+
153
214
  This gem uses [GitHub Issue Tracking](https://github.com/meter-reader/barion/issues) to track issues (primarily bugs and contributions of new code). If you've found a bug or have a good idea of a cool feature, this is the place to start. You'll need to create a (free) GitHub account in order to submit an issue, to comment on them, or to create pull requests.
154
215
 
155
216
  ## License
217
+
156
218
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Barion related functions
4
+ module Barion
5
+ # Adds Barion Pixel javascript to views
6
+ require 'action_view'
7
+ # Provides functions for Barion Pixel implementations in views
8
+ module PixelHelper
9
+ include ActionView::Helpers::TagHelper
10
+ def pixel_basic_js
11
+ javascript_tag %(
12
+ window["bp"] = window["bp"] || function () {(window["bp"].q = window["bp"].q || []).push(arguments);};
13
+ window["bp"].l = 1 * new Date();
14
+ scriptElement = document.createElement("script");
15
+ firstScript = document.getElementsByTagName("script")[0];
16
+ scriptElement.async = true;
17
+ scriptElement.src = 'https://pixel.barion.com/bp.js';
18
+ firstScript.parentNode.insertBefore(scriptElement, firstScript);
19
+ window['barion_pixel_id'] = '#{::Barion.pixel_id}';
20
+ // Send init event
21
+ bp('init', 'addBarionPixelId', window['barion_pixel_id']);'
22
+ ).gsub!(/^#{[/\A\s*/]}/, '')
23
+ end
24
+
25
+ def pixel_basic_noscript
26
+ tag.noscript do
27
+ tag.img height: 1, width: 1,
28
+ style: 'display:none',
29
+ alt: 'Barion Pixel',
30
+ src: "https://pixel.barion.com/a.gif?ba_pixel_id='#{::Barion.pixel_id}'&ev=contentView&noscript=1"
31
+ end
32
+ end
33
+
34
+ def pixel_basic_tags
35
+ pixel_basic_js + pixel_basic_noscript
36
+ end
37
+ end
38
+ end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -5,5 +5,6 @@
5
5
  # shop.publickey = 'test2'
6
6
  # shop.sandbox = true
7
7
  # shop.acronym = ''
8
+ # shop.pixel_id = ''
8
9
  # shop.default_payee = 'me@example.org'
9
10
  # end
data/config/routes.rb CHANGED
@@ -1,8 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # == Route Map
4
- #
5
-
6
3
  Barion::Engine.routes.draw do
7
4
  root to: 'main#land'
8
5
  post 'callback', to: 'main#callback', as: :gateway_callback
File without changes
File without changes
File without changes
File without changes
data/lib/barion/engine.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # Module enclosing all Barion related functionality
3
4
  module Barion
4
5
  # Barion engine main class
5
6
  class Engine < ::Rails::Engine
@@ -11,4 +12,10 @@ module Barion
11
12
  g.factory_bot dir: 'test/factories'
12
13
  end
13
14
  end
15
+
16
+ ActiveSupport.on_load(:action_view) do
17
+ # self refers to ActiveRecord::Base here,
18
+ # so we can call .include
19
+ include ::Barion::PixelHelper
20
+ end
14
21
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Barion
4
- VERSION = '0.3.3'
4
+ VERSION = '0.4.0'
5
5
  end
data/lib/barion.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'barion/engine'
3
+ require 'barion/engine' if defined?(Rails::Engine)
4
4
 
5
5
  # Main module of Barion engine
6
6
  module Barion
@@ -9,21 +9,42 @@ module Barion
9
9
  prod: 'https://api.barion.com'
10
10
  }.freeze
11
11
 
12
+ PIXELID_PATTERN = ::Regexp.new('BP-\d{10}-\d{2}').freeze
13
+
14
+ # rubocop:disable Style/ClassVars
12
15
  mattr_accessor :poskey, default: nil
13
16
  mattr_accessor :publickey, default: nil
14
17
  mattr_accessor :acronym, default: ''
18
+ mattr_accessor :pixel_id, default: ''
15
19
  mattr_accessor :sandbox, default: true
16
20
  mattr_accessor :default_payee
17
21
  mattr_accessor :user_class
18
22
  mattr_accessor :item_class
19
23
  mattr_accessor :rest_client_class, default: '::RestClient::Resource'
20
24
 
25
+ def self.poskey=(key)
26
+ raise ArgumentError, "::Barion.poskey must be set to a String, got #{key.inspect}" unless key.is_a?(String)
27
+
28
+ @@poskey = key
29
+ end
30
+
21
31
  def self.sandbox?
22
- !!sandbox
32
+ sandbox
23
33
  end
24
34
 
25
- def sandbox=(val)
26
- super(!!val)
35
+ def self.sandbox=(val)
36
+ @@sandbox = !!val
37
+ end
38
+
39
+ def self.pixel_id=(id)
40
+ raise ArgumentError, "::Barion.pixel_id must be set to a String, got #{id.inspect}" unless id.is_a?(String)
41
+
42
+ if PIXELID_PATTERN.match(id).nil?
43
+ raise ::ArgumentError,
44
+ "String:'#{id}' is not in Barion Pixel ID format: 'BP-0000000000-00'"
45
+ end
46
+
47
+ @@pixel_id = id
27
48
  end
28
49
 
29
50
  def self.endpoint
@@ -31,7 +52,6 @@ module Barion
31
52
  rest_client_class.new BASE_URL[env]
32
53
  end
33
54
 
34
- # rubocop:disable Style/ClassVars
35
55
  def self.user_class=(class_name)
36
56
  unless class_name.is_a?(String)
37
57
  raise ArgumentError, "Barion.user_class must be set to a String, got #{class_name.inspect}"
File without changes
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: barion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Péter Nagy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-02-13 00:00:00.000000000 Z
11
+ date: 2024-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -38,118 +38,6 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.1'
41
- - !ruby/object:Gem::Dependency
42
- name: faker
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '3.1'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '3.1'
55
- - !ruby/object:Gem::Dependency
56
- name: minitest
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '5.0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '5.0'
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '13.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '13.0'
83
- - !ruby/object:Gem::Dependency
84
- name: solargraph
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '0.44'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '0.44'
97
- - !ruby/object:Gem::Dependency
98
- name: sqlite3
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '1.4'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '1.4'
111
- - !ruby/object:Gem::Dependency
112
- name: vcr
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '6.0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: '6.0'
125
- - !ruby/object:Gem::Dependency
126
- name: webmock
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '3.12'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: '3.12'
139
- - !ruby/object:Gem::Dependency
140
- name: yard
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - "~>"
144
- - !ruby/object:Gem::Version
145
- version: '0.9'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
151
- - !ruby/object:Gem::Version
152
- version: '0.9'
153
41
  description: " This is a Ruby-on-Rails engine to use the Barion Payment Gateway in
154
42
  any RoR application.\n"
155
43
  email:
@@ -168,6 +56,7 @@ files:
168
56
  - app/controllers/barion/main_controller.rb
169
57
  - app/helpers/barion/application_helper.rb
170
58
  - app/helpers/barion/main_helper.rb
59
+ - app/helpers/barion/pixel_helper.rb
171
60
  - app/models/barion/address.rb
172
61
  - app/models/barion/application_record.rb
173
62
  - app/models/barion/gift_card_purchase.rb
@@ -207,14 +96,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
207
96
  requirements:
208
97
  - - ">="
209
98
  - !ruby/object:Gem::Version
210
- version: 2.7.0
99
+ version: 3.0.0
211
100
  required_rubygems_version: !ruby/object:Gem::Requirement
212
101
  requirements:
213
102
  - - ">="
214
103
  - !ruby/object:Gem::Version
215
104
  version: '0'
216
105
  requirements: []
217
- rubygems_version: 3.2.33
106
+ rubygems_version: 3.5.3
218
107
  signing_key:
219
108
  specification_version: 4
220
109
  summary: Barion payment engine for Ruby on Rails