alectrico-tbk 0.1.9.pre.beta.5 → 0.1.9.pre.beta.6

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0ed3be40db5ea641a9b900fd35cbd92658e3f985f9bcb9d33aaa6d9595fb18f
4
- data.tar.gz: 1a0f6709e41034ae8902c4cae38e1b9c335698876bf30ce98c34ff9de9d20be3
3
+ metadata.gz: 56162a9c082ae11549dee44a62f09fe7ee31b618c44898efbc05fe515ee3508d
4
+ data.tar.gz: 12a902d818f5f866aa48b70969bb4e71e6719bb5b9a3a0ec69575222c28c4b7f
5
5
  SHA512:
6
- metadata.gz: 73277ccd22fcbfcef56863f4640576d7416fc98872a1df320751e71dc9cc5932dd443bb24ad91e18ee1881deb8fb426a78b56c326f4885b38397a9ab2d6f7a18
7
- data.tar.gz: 7cc218e7a3c1767cb86490eaead4074e13f07f3f4efdd22a59d23974202ca3b46f7279b4b49a53ed57b2c9be07011724affb448f7f08d094ee89fcd8b15d1ec2
6
+ metadata.gz: 1cc2b40698ef81da077242560a474d52e730b36a74c27b250ab831e9212301e231b95a19bebcbb9ba8f2e1f71e960ada3f3cd0e2541bfd9cd0eb1a60b35d6e8a
7
+ data.tar.gz: 9481cecbcca01a8392ba40efc20c0f286cceb80f1b5311ad21ca02c3bcaa7121240d889a2ec67a554dc1f79c7e57b1d8df2d4e5e1559e9308ee11138c0d7c8e8
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alectrico-tbk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9.pre.beta.5
4
+ version: 0.1.9.pre.beta.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - alectrico®
@@ -42,7 +42,7 @@ dependencies:
42
42
  requirements:
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 8.0.0
45
+ version: 5.0.0
46
46
  - - "<"
47
47
  - !ruby/object:Gem::Version
48
48
  version: 9.0.0
@@ -52,7 +52,7 @@ dependencies:
52
52
  requirements:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: 8.0.0
55
+ version: 5.0.0
56
56
  - - "<"
57
57
  - !ruby/object:Gem::Version
58
58
  version: 9.0.0
@@ -86,18 +86,6 @@ extra_rdoc_files: []
86
86
  files:
87
87
  - README.md
88
88
  - Rakefile
89
- - lib/alectrico.rb
90
- - lib/alectrico/tbk.rb
91
- - lib/alectrico/tbk/core_ext.rb
92
- - lib/alectrico/tbk/middleware.rb
93
- - lib/alectrico/tbk/pago.rb
94
- - lib/alectrico/tbk/payable.rb
95
- - lib/alectrico/tbk/railtie.rb
96
- - lib/alectrico/tbk/tasks/alectrico_tbk_link_genera.rake
97
- - lib/alectrico/tbk/version.rb
98
- - lib/middleware.rb
99
- - lib/tasks/alectrico/tbk_tasks.rake
100
- - lib/tasks/alectrico_tasks.rake
101
89
  homepage: https://www.alectrico.cl
102
90
  licenses:
103
91
  - MIT
metadata.gz.sig CHANGED
Binary file
@@ -1,39 +0,0 @@
1
- require 'base64'
2
- class String
3
-
4
- #Esto es una sobrecarga de la clase String que agrega
5
- #un método de instancia to_squawk
6
-
7
- def to_squawk
8
- "squawk! #{self}".strip
9
- end
10
-
11
- #Decodifica un path que tenga un token
12
- #
13
- def detokeniza
14
- id = /\S*\/(?<token>\S*)\/link_de_pago_tbk/.match( self)
15
- return id['token'] if id
16
- nil
17
- end
18
-
19
- #self es el id de un modelo
20
- def tokeniza( action_url, host )
21
- puts "en tokeniza de String"
22
- puts "action_url: "
23
- puts action_url
24
- id = self.to_i
25
- puts "id: "
26
- puts id
27
- token = Base64::encode64( id.to_s )
28
- begin
29
- Rails.application.routes.url_helpers.send( action_url.to_sym, token, :only_path => false, :host => host )
30
- rescue NoMethodError => e
31
- puts "Hay un error, #{action_url} no se puede usar en su modelo"
32
- puts "Debe usar este hook en su modelo:"
33
- puts "payable alectrico_text_field: #{action_url.to_sym}"
34
- puts "O usar otro argumento en tokeniza"
35
- nil
36
- end
37
- end
38
-
39
- end
@@ -1,37 +0,0 @@
1
- module Alectrico
2
- module Tbk
3
- class Middleware
4
- def initialize(app)
5
- @app = app
6
- end
7
-
8
- def call(env)
9
- @class_name.to_s.downcase.pluralize
10
- path = env['PATH_INFO']
11
- token = path.detokeniza
12
- if token
13
- puts ")))))))))))))))))))))))))))))))))))))))))))))))))))"
14
- puts "token = #{token}"
15
- id = Base64.decode64(token)
16
- reporte = Reporte.find_by(:id => id)
17
- if reporte.present?
18
- #set_current_fono
19
- #return [200, {}, ['Yo soy tu padre, Camilo']]
20
- puts "Se encontró reporte: #{reporte.inspect}"
21
- else
22
- #return [404, {}, ['No pasa nada']]
23
- end
24
-
25
- puts "id = #{id.to_i}"
26
- puts "Request: #{env['REQUEST_METHOD']} #{env['PATH_INFO']}"
27
- puts ")))))))))))))))))))))))))))))))))))))))))))))))))))))"
28
- end
29
- #return [200, {}, ['I am a middleware']]
30
- # Modify the request or response here
31
- status, headers, response = @app.call(env)
32
- [status, headers, response]
33
- end
34
- end
35
- end
36
- end
37
-
@@ -1,52 +0,0 @@
1
- #Aquí empieza la programación
2
- #Si desde el hospedero de la gema
3
- #Se instala la gema con bundle install
4
- #Aprece el mensaje en puts
5
- #Tambíen cuando se llama a rake tasks
6
- #desde el hospedero
7
- #require "alectrico/tbk/version"
8
- #require "alectrico/tbk/core_ext"
9
- #require "alectrico/tbk/payable"
10
-
11
-
12
- module Alectrico
13
- module Tbk
14
- #las url, exceptp la de imagen, deben ser generadas por el url_helper de Rails
15
- class Pago
16
-
17
- #las url, exceptp la de imagen, deben ser generadas por el url_helper de Rails
18
- # email,
19
- # servicio,
20
- # presupuesto,
21
- # repositorio,
22
- # imagen_url,
23
- # listener_url,
24
- # return_url,
25
- # cancel_url,
26
- # notify_url
27
- def initialize(
28
- email,
29
- servicio,
30
- presupuesto,
31
- repositorio,
32
- imagen_url,
33
- listener_url,
34
- return_url,
35
- cancel_url,
36
- notify_url )
37
- puts "En Alectrico::Tbk::Pago"
38
- end
39
- #caso = ::Comercio::Compra::Unitaria::Webpay::Nominativo::Manual.new(
40
- # repositorio,
41
- # listener_url,
42
- # return_url,
43
- # cancel_url,
44
- # image_url,
45
- # notify_url
46
- #)
47
- #aso.crea {:id => servicio.id,
48
- # :amp_cliente_id => email,
49
- # :presupuesto_id => presupuesto.id }
50
- end
51
- end
52
- end
@@ -1,59 +0,0 @@
1
- module Alectrico
2
- module Tbk
3
- module Payable
4
- extend ActiveSupport::Concern
5
- class_methods do
6
- #class_methods es un hook proporcionado por extend ActiveSupport::Concern
7
- #que permite definir métodos de clases on the fly
8
- #En este caso el método acts_as_alectrico se puede usar como hook al comienzo
9
- #de las clases que lo quieran usar
10
- #El método en sí define un atribute de clase llamado alectrico_text_field
11
- #El cual tendrá como valor por defecto lo que se suministre como argumento
12
- #Si se llama acts_as_alectrico sin argumentos se usará como default el valor
13
- #que tenga el valor por defecto que proporciona el método last_squack
14
- #Pero si en opciones se ya colocado alectrico_test_field entonces se usará
15
- #el valor devuelo por el hash de optinoes con key alectrico_text_field
16
- def payable(options = {} )
17
- cattr_accessor :url, default: (options[:url] || :last_squawk).to_s
18
- end
19
- end
20
- included do
21
- #Estos son métodos de instancia incorporados
22
- #Es equivalente a usar include Module.
23
- #Pero al usar ActiveSupport::Concern es más fácil
24
- #Porque el do espera un módulo
25
- #En este caso el módulo sin nombre solo aporte el método squawk
26
- #Este método squawk solo estará accesible como método de instancia
27
- #por virtude del uso del hook inluded.
28
- def squawk( string )
29
- #escribe el valor string.to_squawk al atributo devuelto por self.class.alectrico_text_field
30
- #pero string.to_squawn ha sido sobrecargado (monkey patching en lib)
31
- #y class_alectrico_text_field responde de acuerdo a cómo se le llame
32
- write_attribute(self.class.alectrico_text_field, string.to_squawk)
33
- end
34
-
35
- # prepara un link de pago tbk para cobrar
36
- # un servicio en la clase que lo llame
37
- # la clase de fijar el campo que lo va a
38
- # recibir eso se hace
39
- # colocando el hook acts_as_alectrico y colocando el nombre del
40
- # campo que guardará el link en la tabla de ActiveRecord
41
- # debe existir ese campo para que esto funcione
42
- # debe existe el campo
43
- # cuando el usario siga el link obtenido, se tomará el precio
44
- # de la visita del colaborador para generar el link que vaya
45
- # a transbank.cl
46
- # @param [String] url args to url_helpers
47
- # @param [Numeric] id id of model
48
- # url has to be :tbk_api_v1_electrico_reporte_url
49
- #
50
- def tokeniza( action_url, host )
51
- # url = Rails.application.routes.url_helpers.send( url.to_sym, self.id, :only_path => true )
52
- #rite_attribute(self.class.alectrico_text_field, url.post_tokeniza(self.id))
53
- write_attribute(self.class.url, self.id.to_s.tokeniza( action_url, host ))
54
-
55
- end
56
- end
57
- end
58
- end
59
- end
@@ -1,25 +0,0 @@
1
- module Alectrico
2
- module Tbk
3
- class Railtie < Rails::Railtie
4
-
5
- initializer "alectrico_tbk.configure_rails_initialization" do |app|
6
-
7
- # puts "Middleware Alectrico::Tbk en uso"
8
- # some initialization behavior
9
- # app.middleware.use Alectrico::Tbk::Middleware
10
- end
11
-
12
- config.to_prepare do
13
- Alectrico::Tbk.setup!
14
- end
15
-
16
- rake_tasks do
17
- load "alectrico/tbk/tasks/alectrico_tbk_link_genera.rake"
18
- end
19
-
20
- server do
21
- #WebpackServer.start
22
- end
23
- end
24
- end
25
- end
@@ -1,12 +0,0 @@
1
- task spec: ["alectrico:tbk:link"]
2
-
3
- namespace :alectrico do
4
- namespace :tbk do
5
- desc "Genera un link de pago tbk, WIP"
6
- namespace :link do
7
- task genera: :environment do
8
- puts "Task: alectrico:tbk:link:genera"
9
- end
10
- end
11
- end
12
- end
@@ -1,5 +0,0 @@
1
- module Alectrico
2
- module Tbk
3
- VERSION = "0.1.9.pre.beta.5"
4
- end
5
- end
data/lib/alectrico/tbk.rb DELETED
@@ -1,22 +0,0 @@
1
- #Estos requires los usa el hospedero
2
- #Todas las clases de lib/alectrico/tbk
3
- #Deben estar aquí
4
- require 'alectrico/tbk/pago'
5
- require 'alectrico/tbk/payable'
6
- require 'alectrico/tbk/core_ext'
7
- require 'alectrico/tbk/middleware'
8
- require 'alectrico/tbk/version'
9
- require "alectrico/tbk/railtie" if defined?(Rails::Railtie)
10
-
11
- module Alectrico
12
- module Tbk
13
- class Hola
14
- puts "alectrico® lo saluda :)"
15
- end
16
- def self.setup!
17
- #no usar para los iinitializers
18
- #no cargar middlera
19
- #todo eso se hace en los initializers
20
- end
21
- end
22
- end
data/lib/alectrico.rb DELETED
@@ -1,4 +0,0 @@
1
- module Alectrico
2
- # Your code goes here...
3
- end
4
-
data/lib/middleware.rb DELETED
@@ -1,11 +0,0 @@
1
- #lib/middleware.rb
2
- class MyRailtie < Rails::Railtie
3
- def self.insert_middleware
4
- initializer "middle.configure_rails_initialization" do |app|
5
- app.middleware.unshift Alectrico::Tbk::Middleware
6
- end
7
- end
8
- insert_middleware
9
- end
10
-
11
-
@@ -1,5 +0,0 @@
1
- desc "Genera un link de pago"
2
- task :alectrico_tbk do
3
- puts "Generando un link de pago"
4
- # Task goes here
5
- end
@@ -1,7 +0,0 @@
1
- desc "Ejemplo de task"
2
- task :alectrico do
3
- # Task goes here
4
- end
5
- ~
6
- ~
7
- ~