tzispa_helpers 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3e89639a5292d45bd73bb24c089a7d2e12a5af5d
4
- data.tar.gz: a913cbe727b39b40d9e0fdf9cf893c820a42baaf
3
+ metadata.gz: 30121bc329422fd4c34a6afdd1c4e9f5d3f6945e
4
+ data.tar.gz: 05cced3ec1799403953d1de06ca4477e61926ac9
5
5
  SHA512:
6
- metadata.gz: 45d66dc9fec88bdb30d7257a82bceb59bc3fb4746b22788e009d0d9f965a26ca041141465f82ffba50b67e0f921ac8b8d9061c9a499a06567d8f45bd5e9617b7
7
- data.tar.gz: b0c6b9d2f8054c820ea478c3f870811c26b6719ba87b14160bb7be4a902be31a20506bfdfc3e3a2dd48c3c1bbd3472e1ca5403f69f1b7ea8477b0b75569f85cd
6
+ metadata.gz: a170f6651ac38df50b28aca2585a0d04a7dddd30e1466a9f95426fe0b690719144ea1ebe529a6c077f1c4d90b4a8aff3e986da7e2b8bf7a41c6a59b42ba99500
7
+ data.tar.gz: ecd6a45dbd37662bc2f72fe64d5260cbe46d6a602f17fd4c3dff5bd3754ad5f7a1d104091e4302db6552508339781846c9ff135edd7c083308655620d4f3b1d5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  Tzispa Helpers
2
2
 
3
+ ## v0.3.1
4
+ - added json fields support to request_data_object
5
+ - added yesno_list builder method
6
+
3
7
  ## v0.3.0
4
8
  - bug fixes
5
9
  - code refactoring
@@ -19,6 +19,19 @@ module Tzispa
19
19
  value ? ' disabled="disabled"' : ''
20
20
  end
21
21
 
22
+ def yesno_list(yesno_text, selected = nil)
23
+ proc do
24
+ yn = yesno_text.split(';')
25
+ { yes: yn.first, no: yn.last }.map do |k, v|
26
+ loop_item(
27
+ value: k,
28
+ text: v,
29
+ selected: html_selected(selected == k.to_s)
30
+ )
31
+ end
32
+ end
33
+ end
34
+
22
35
  def html_escape(str)
23
36
  CGI.escapeHTML str
24
37
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'tzispa/utils/string'
4
+ require 'json'
4
5
 
5
6
  module Tzispa
6
7
  module Helpers
@@ -19,7 +20,7 @@ module Tzispa
19
20
  end
20
21
  end
21
22
 
22
- def request_data_object(data_object:, fields:)
23
+ def request_data_object(data_object:, fields:, json: nil)
23
24
  data_object.tap do |data|
24
25
  fields.each do |name|
25
26
  macro_field = name.split('@:')
@@ -27,6 +28,9 @@ module Tzispa
27
28
  field = macro_field.length == 2 ? macro_field.last : macro_field.first
28
29
  build_field field, macro, data
29
30
  end
31
+ json&.each do |key, value|
32
+ data.send "#{key}=", build_json_field(value)
33
+ end
30
34
  end
31
35
  end
32
36
 
@@ -66,6 +70,17 @@ module Tzispa
66
70
  end
67
71
  end
68
72
 
73
+ def build_json_field(values)
74
+ {}.tap do |data|
75
+ values.each do |name|
76
+ macro_field = name.split('@:')
77
+ macro = macro_field.first.to_sym if macro_field.length == 2
78
+ field = macro_field.length == 2 ? macro_field.last : macro_field.first
79
+ build_field field, macro, data
80
+ end
81
+ end.to_json
82
+ end
83
+
69
84
  end
70
85
  end
71
86
  end
@@ -3,7 +3,7 @@
3
3
  module Tzispa
4
4
  module Helpers
5
5
 
6
- VERSION = '0.3.0'
6
+ VERSION = '0.3.1'
7
7
  NAME = 'Tzispa Helpers'
8
8
  GEM_NAME = 'tzispa_helpers'
9
9
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tzispa_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Antonio Piñero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-13 00:00:00.000000000 Z
11
+ date: 2017-04-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n
@@ -101,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
101
101
  version: '0'
102
102
  requirements: []
103
103
  rubyforge_project:
104
- rubygems_version: 2.6.10
104
+ rubygems_version: 2.6.11
105
105
  signing_key:
106
106
  specification_version: 4
107
107
  summary: Helpers for Tzispa