payfast 1.0.6 → 1.0.7
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.
- checksums.yaml +4 -4
 - data/README.md +4 -6
 - data/lib/payfast/onsite_payments.rb +8 -11
 - data/lib/payfast/version.rb +5 -0
 - metadata +17 -16
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 7881858525522efec041474ecc6b4ee78bb427e75cc22fc2137638491c17f687
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 2f391494ef6d8758c149ebed0b2cf955e2554abf5edde05bcb6774d6f8fbf4f2
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: bd69900dbb2bef5c308bbd3e6358008aed5462b7003340211f4d3fcc3471976f2f9ac0ad7de7e01588d9c12473053d545fe7924c8390f13df9c5f49616c260fb
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 0bed2c849e943af30df1e9812e7e712464976a05fae61613559a043e384bfe943c861d62fcb2fe062211e3192e5927e606f50fd9b37fe9f0ab23f4b34c0a6a6c
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -2,6 +2,10 @@ 
     | 
|
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            Payfast is a Ruby gem that simplifies the process of integrating the PayFast payment gateway into your Ruby on Rails application. It provides a generator that helps scaffold the necessary configuration, routes, models, and controllers required to integrate PayFast seamlessly.
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
      
 5 
     | 
    
         
            +
            ## Demo 
         
     | 
| 
      
 6 
     | 
    
         
            +
            
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
       5 
9 
     | 
    
         
             
            ## Installation
         
     | 
| 
       6 
10 
     | 
    
         | 
| 
       7 
11 
     | 
    
         
             
            Add this line to your application's Gemfile:
         
     | 
| 
         @@ -9,12 +13,6 @@ Add this line to your application's Gemfile: 
     | 
|
| 
       9 
13 
     | 
    
         
             
            ```bash
         
     | 
| 
       10 
14 
     | 
    
         
             
                bundle add payfast
         
     | 
| 
       11 
15 
     | 
    
         
             
            ```
         
     | 
| 
       12 
     | 
    
         
            -
            Or install it yourseld as:
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
            ```bash
         
     | 
| 
       16 
     | 
    
         
            -
                gem install payfast
         
     | 
| 
       17 
     | 
    
         
            -
            ```
         
     | 
| 
       18 
16 
     | 
    
         | 
| 
       19 
17 
     | 
    
         
             
            ## Usage
         
     | 
| 
       20 
18 
     | 
    
         | 
| 
         @@ -1,17 +1,16 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require  
     | 
| 
       2 
     | 
    
         
            -
            require  
     | 
| 
      
 1 
     | 
    
         
            +
            require 'net/http'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'uri'
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module Payfast
         
     | 
| 
      
 5 
     | 
    
         
            +
              # Encaspulates the  utils for makeing payfast payments using their onsite feature
         
     | 
| 
       5 
6 
     | 
    
         
             
              class OnsitePayments
         
     | 
| 
       6 
7 
     | 
    
         
             
                def self.generate_signature(payload)
         
     | 
| 
       7 
8 
     | 
    
         
             
                  passphrase = Rails.application.config_for(:payfast).passphrase
         
     | 
| 
       8 
9 
     | 
    
         | 
| 
       9 
     | 
    
         
            -
                  if passphrase
         
     | 
| 
       10 
     | 
    
         
            -
                    payload[:passphrase] = passphrase
         
     | 
| 
       11 
     | 
    
         
            -
                  end
         
     | 
| 
      
 10 
     | 
    
         
            +
                  payload[:passphrase] = passphrase if passphrase
         
     | 
| 
       12 
11 
     | 
    
         | 
| 
       13 
12 
     | 
    
         
             
                  url_encoded = data_to_string(payload)
         
     | 
| 
       14 
     | 
    
         
            -
                  create_hash(url_encoded,  
     | 
| 
      
 13 
     | 
    
         
            +
                  create_hash(url_encoded, 'md5')
         
     | 
| 
       15 
14 
     | 
    
         
             
                end
         
     | 
| 
       16 
15 
     | 
    
         | 
| 
       17 
16 
     | 
    
         
             
                def self.requestPayment(payload)
         
     | 
| 
         @@ -20,7 +19,7 @@ module Payfast 
     | 
|
| 
       20 
19 
     | 
    
         
             
                    merchant_key: Rails.application.config_for(:payfast).merchant_key,
         
     | 
| 
       21 
20 
     | 
    
         
             
                    return_url: Rails.application.config_for(:payfast).return_url,
         
     | 
| 
       22 
21 
     | 
    
         
             
                    cancel_url: Rails.application.config_for(:payfast).cancel_url,
         
     | 
| 
       23 
     | 
    
         
            -
                    notify_url: Rails.application.config_for(:payfast).notify_url 
     | 
| 
      
 22 
     | 
    
         
            +
                    notify_url: Rails.application.config_for(:payfast).notify_url
         
     | 
| 
       24 
23 
     | 
    
         
             
                  }.merge(payload)
         
     | 
| 
       25 
24 
     | 
    
         | 
| 
       26 
25 
     | 
    
         
             
                  puts payload_with_config
         
     | 
| 
         @@ -35,7 +34,7 @@ module Payfast 
     | 
|
| 
       35 
34 
     | 
    
         | 
| 
       36 
35 
     | 
    
         
             
                  uri = URI.parse(base_url)
         
     | 
| 
       37 
36 
     | 
    
         
             
                  http = Net::HTTP.new(uri.host, uri.port)
         
     | 
| 
       38 
     | 
    
         
            -
                  http.use_ssl = true if uri.scheme ==  
     | 
| 
      
 37 
     | 
    
         
            +
                  http.use_ssl = true if uri.scheme == 'https'
         
     | 
| 
       39 
38 
     | 
    
         | 
| 
       40 
39 
     | 
    
         
             
                  request = Net::HTTP::Post.new(uri.path)
         
     | 
| 
       41 
40 
     | 
    
         
             
                  request.body = pf_param_string
         
     | 
| 
         @@ -45,12 +44,10 @@ module Payfast 
     | 
|
| 
       45 
44 
     | 
    
         
             
                    JSON.parse(response.body)
         
     | 
| 
       46 
45 
     | 
    
         
             
                  rescue StandardError => e
         
     | 
| 
       47 
46 
     | 
    
         
             
                    puts "Error: #{e.message}"
         
     | 
| 
       48 
     | 
    
         
            -
                     
     | 
| 
      
 47 
     | 
    
         
            +
                    false
         
     | 
| 
       49 
48 
     | 
    
         
             
                  end
         
     | 
| 
       50 
49 
     | 
    
         
             
                end
         
     | 
| 
       51 
50 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
                private
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
51 
     | 
    
         
             
                def self.data_to_string(payload)
         
     | 
| 
       55 
52 
     | 
    
         
             
                  URI.encode_www_form(payload)
         
     | 
| 
       56 
53 
     | 
    
         
             
                end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: payfast
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.7
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Dellan Muchengapadare
         
     | 
| 
       8 
     | 
    
         
            -
            autorequire: 
     | 
| 
      
 8 
     | 
    
         
            +
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2024-10-18 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     | 
| 
         @@ -55,14 +55,14 @@ dependencies: 
     | 
|
| 
       55 
55 
     | 
    
         
             
            description: "# Payfast\n\nPayfast is a Ruby gem that simplifies the process of integrating
         
     | 
| 
       56 
56 
     | 
    
         
             
              the PayFast payment gateway into your Ruby on Rails application. It provides a generator
         
     | 
| 
       57 
57 
     | 
    
         
             
              that helps scaffold the necessary configuration, routes, models, and controllers
         
     | 
| 
       58 
     | 
    
         
            -
              required to integrate PayFast seamlessly.\n\n##  
     | 
| 
       59 
     | 
    
         
            -
              your application's Gemfile:\n\n```bash\n    bundle 
     | 
| 
       60 
     | 
    
         
            -
               
     | 
| 
       61 
     | 
    
         
            -
               
     | 
| 
       62 
     | 
    
         
            -
               
     | 
| 
       63 
     | 
    
         
            -
              \   create  app/views/carts/ 
     | 
| 
       64 
     | 
    
         
            -
              \   create   
     | 
| 
       65 
     | 
    
         
            -
              \   create   
     | 
| 
      
 58 
     | 
    
         
            +
              required to integrate PayFast seamlessly.\n\n## Demo \n\n\n\n##
         
     | 
| 
      
 59 
     | 
    
         
            +
              Installation\n\nAdd this line to your application's Gemfile:\n\n```bash\n    bundle
         
     | 
| 
      
 60 
     | 
    
         
            +
              add payfast\n```\n\n## Usage\n\n```bash\n  rails generate payfast:install\n```\n\n##
         
     | 
| 
      
 61 
     | 
    
         
            +
              This generator will perform the following actions:\n\n    insert  config/routes.rb\n
         
     | 
| 
      
 62 
     | 
    
         
            +
              \   create  app/controllers/carts_controller.rb\n    create  app/views/carts/index.html.erb\n
         
     | 
| 
      
 63 
     | 
    
         
            +
              \   create  app/views/carts/make_payment.html.erb\n    create  app/helpers/carts_helper.rb\n
         
     | 
| 
      
 64 
     | 
    
         
            +
              \   create  db/migrate/20230824105530_create_carts.rb\n    create  config/payfast.yml\n
         
     | 
| 
      
 65 
     | 
    
         
            +
              \   create  app/models/cart.rb\n    insert  app/views/layouts/application.html.erb\n
         
     | 
| 
       66 
66 
     | 
    
         
             
              \   insert  config/environments/development.rb\n\n\n\n## Additional configuration\n\nSetup
         
     | 
| 
       67 
67 
     | 
    
         
             
              payfast credentials for your environment\n\n    rails EDITOR=\"code --wait\" bin/rails
         
     | 
| 
       68 
68 
     | 
    
         
             
              credentials:edit\n  \n  This will allow you to securely edit and store your credentials.
         
     | 
| 
         @@ -119,11 +119,12 @@ files: 
     | 
|
| 
       119 
119 
     | 
    
         
             
            - lib/generators/payfast/templates/model.rb
         
     | 
| 
       120 
120 
     | 
    
         
             
            - lib/generators/payfast/templates/routes.rb
         
     | 
| 
       121 
121 
     | 
    
         
             
            - lib/payfast/onsite_payments.rb
         
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
      
 122 
     | 
    
         
            +
            - lib/payfast/version.rb
         
     | 
| 
      
 123 
     | 
    
         
            +
            homepage: https://github.com/mactunechy/payfast
         
     | 
| 
       123 
124 
     | 
    
         
             
            licenses:
         
     | 
| 
       124 
125 
     | 
    
         
             
            - MIT
         
     | 
| 
       125 
126 
     | 
    
         
             
            metadata: {}
         
     | 
| 
       126 
     | 
    
         
            -
            post_install_message: 
     | 
| 
      
 127 
     | 
    
         
            +
            post_install_message:
         
     | 
| 
       127 
128 
     | 
    
         
             
            rdoc_options: []
         
     | 
| 
       128 
129 
     | 
    
         
             
            require_paths:
         
     | 
| 
       129 
130 
     | 
    
         
             
            - lib
         
     | 
| 
         @@ -131,15 +132,15 @@ required_ruby_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       131 
132 
     | 
    
         
             
              requirements:
         
     | 
| 
       132 
133 
     | 
    
         
             
              - - ">="
         
     | 
| 
       133 
134 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       134 
     | 
    
         
            -
                  version:  
     | 
| 
      
 135 
     | 
    
         
            +
                  version: 2.7.0
         
     | 
| 
       135 
136 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
       136 
137 
     | 
    
         
             
              requirements:
         
     | 
| 
       137 
138 
     | 
    
         
             
              - - ">="
         
     | 
| 
       138 
139 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       139 
140 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       140 
141 
     | 
    
         
             
            requirements: []
         
     | 
| 
       141 
     | 
    
         
            -
            rubygems_version: 3.3. 
     | 
| 
       142 
     | 
    
         
            -
            signing_key: 
     | 
| 
      
 142 
     | 
    
         
            +
            rubygems_version: 3.3.27
         
     | 
| 
      
 143 
     | 
    
         
            +
            signing_key:
         
     | 
| 
       143 
144 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       144 
145 
     | 
    
         
             
            summary: A light weight gem to setup payfast payment gateway
         
     | 
| 
       145 
146 
     | 
    
         
             
            test_files: []
         
     |