dataisland 0.1.14 → 0.1.15

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: 8e901fd77adf926dad261fbe89dfe3f341979f8b
4
- data.tar.gz: c88593f6519304d5d1e52931e2bf7dac10bc9e09
3
+ metadata.gz: b79220d2f2e1ed4e7f298f08aa2a7a06a55ead82
4
+ data.tar.gz: 406f92a674143df5b2a8efc3b9c9d00b8dfefc3b
5
5
  SHA512:
6
- metadata.gz: 68a36884c2ad8a68d56b675b7939af57d822f6f5f80721b82ed92ec39af5d8eef9877861124eabc1ebae6b7ef7de5b1e5a002b563468266d4c4cd9efbcd4e543
7
- data.tar.gz: 81ae1c7c3d05c239d2a21d2ce3f8bc9f6c35f811eadcd1a2dd6981728801667997377625d68976654c0b519f88632821b974014ff9fd05e2453b5aaf14e89516
6
+ metadata.gz: 1fdbf4ea5bb1a5c520a7b21b3421deca002938c762faefb3899b028539e97d3f670cfb4df408697b6572f6a0bb4e07db95208f0b438df617b02650eaeeefa1e9
7
+ data.tar.gz: 09f9bfe539823e7e014652ecfb450d76fcde49977b08b3ec4783c7ab2eef1ad64de50d4affcd07488e5ec83a912ad327f39a3dcbf2e742181b29d84901d58acf
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/dataisland.rb CHANGED
@@ -16,7 +16,10 @@ class DataIsland
16
16
 
17
17
  buffer, typex = RXFHelper.read(location)
18
18
  @html_doc = Rexle.new(buffer.sub(/^<!DOCTYPE html>/,''))
19
- @html_doc.xpath('//script[@class="dataisland"]').map(&:delete)
19
+
20
+ a = @html_doc.css('//script[@class="dataisland"]')
21
+ a.map(&:delete)
22
+
20
23
  @html_doc.xpath('//div[@datactl]').map(&:delete)
21
24
 
22
25
  @html_doc.root.element('body').attributes.delete :onload
@@ -44,7 +47,7 @@ class DataIsland
44
47
  @location +'/' + h[:data]
45
48
  end
46
49
 
47
- dynarex = Dynarex.new location2
50
+ dynarex = Dynarex.new location2
48
51
 
49
52
  if (h[:order] and h[:order][/^desc|descending$/]) \
50
53
  or dynarex.order = 'descending' then
@@ -54,12 +57,14 @@ class DataIsland
54
57
  end
55
58
 
56
59
  xpath = "//*[@datasrc='" + '#' + h[:id] + "']"
57
-
60
+
58
61
  @html_doc.xpath(xpath).each do |island|
59
62
  render(records, x.attributes, island.element('//*[@datafld]'));
60
63
  end
64
+
61
65
  x.delete unless h[:data] =~ /^\{/
62
66
  end
67
+
63
68
  end
64
69
 
65
70
  private
@@ -68,7 +73,7 @@ class DataIsland
68
73
 
69
74
  parent = element.parent
70
75
  parentName = parent.name.downcase
71
-
76
+
72
77
  case parentName
73
78
  when 'body'
74
79
  return nil
@@ -92,7 +97,6 @@ class DataIsland
92
97
  rec_orig = node_to_clone(node)
93
98
 
94
99
  if rec_orig then
95
-
96
100
 
97
101
  if (h[:rows_per_page]) then
98
102
 
@@ -114,7 +118,7 @@ class DataIsland
114
118
  else
115
119
  recs = records
116
120
  end
117
-
121
+
118
122
  recs.each do |record|
119
123
 
120
124
  rec = rec_orig.deep_clone
@@ -123,8 +127,9 @@ class DataIsland
123
127
  dest_nodes = {}
124
128
 
125
129
  a = rec.xpath('.//span[@class]|.//a[@class]')
130
+
126
131
  a.each do |e|
127
- r = e.attribute(:class)[/\{([^\}]+)\}$/,1]
132
+ r = e.attribute(:class)[0][/\{([^\}]+)\}$/,1]
128
133
  add_to_destnodes(dest_nodes,r,e) if r
129
134
  end
130
135
 
@@ -161,12 +166,12 @@ class DataIsland
161
166
 
162
167
  classx = e2.attributes[:class]
163
168
 
164
- if classx then
169
+ if classx and classx.length > 0 then
165
170
 
166
- if classx[/{#{field}/] then
171
+ if classx[0][/{#{field}/] then
167
172
  val = record[field]
168
- new_class = classx.sub(/\{[^\}]+\}/,val)
169
- e2.attributes[:class] = new_class
173
+ new_class = classx[0].sub(/\{[^\}]+\}/,val)
174
+ e2.attributes[:class] = [new_class]
170
175
  elsif
171
176
  e2.text = record[field]
172
177
  end
@@ -192,11 +197,11 @@ class DataIsland
192
197
 
193
198
  classx = e2.attributes[:class]
194
199
 
195
- if classx and classx[/{#{field}/] then
200
+ if classx and classx[0][/{#{field}/] then
196
201
 
197
202
  val = record[field]
198
- new_class = classx.sub(/\{[^\}]+\}/,val)
199
- e2.attributes[:class] = new_class
203
+ new_class = classx[0].sub(/\{[^\}]+\}/,val)
204
+ e2.attributes[:class] = [new_class]
200
205
 
201
206
  elsif e2.attributes[:name] then
202
207
 
@@ -208,6 +213,7 @@ class DataIsland
208
213
  elsif e2.attributes[:href] then
209
214
 
210
215
  href = e2.attributes[:href]
216
+
211
217
  val = record[field]
212
218
  new_href = href.sub(/\{[^\}]+\}/,val)
213
219
  e2.attributes[:href] = new_href
@@ -233,4 +239,4 @@ class DataIsland
233
239
  end
234
240
  end
235
241
 
236
- end
242
+ end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dataisland
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.14
4
+ version: 0.1.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,55 +10,69 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDRDCCAiygAwIBAgIBADANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
14
  YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTEzMDIwNjIwNTUwNloXDTE0MDIwNjIwNTUwNlowSDESMBAG
15
+ 8ixkARkWAmV1MB4XDTE0MTAyNjIwMDMzOVoXDTE1MTAyNjIwMDMzOVowSDESMBAG
16
16
  A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
17
  EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAL5i7SJk39z5gjThVhP5epdyURjOG8wCKslBF7ioopMrw2bRqInKPbaELrc9
19
- DNT/0QkFQnzPReqUIJmvuxF/CtBN/xa62LwDdb2cv1ZukDgx86wFCIpkulG5ksVH
20
- OMDgVT3CMjvvOd8AcqVjjV9+75OzL/snA/aORCs5ulTasln4QtAK/BQEqNAucmmc
21
- ACqa/AXVvHuJJU4xEeWx3veZLX5gjx2tDu1NGwtQEl4v+Xvln6emyHS6ZOZ2FWc1
22
- w9iYbHgjVFsoLdKLdsqnJbAM+SmVXgUKVYFZRnjD4ZfOC5kKGME+mxKGI6rz9jhd
23
- 5bWyu2F6OHiMV0mTeqsJv/rsFxMCAwEAAaM5MDcwCQYDVR0TBAIwADAdBgNVHQ4E
24
- FgQU+ZnEadjqD5wr8hxyZKJOKmAl2rUwCwYDVR0PBAQDAgSwMA0GCSqGSIb3DQEB
25
- BQUAA4IBAQBySsz3aASz65YmFx/Jk6nHTjqHpUljt7S6TI7bzktf1C72Tq/QJ8qK
26
- SP+2tLVGC6u0LaIDeaUCkyTPMA6/xUeSkXp0b4CXBKX59L+qE2gHZiW2HvKmv6a7
27
- 4mt7nkL4APoOtHRWuheArVfldKkyfVS7vZ9EPH1GnV2ZUtQW5VMIo/kaZGoAAyAw
28
- xesY4Dp5k+h0GRrC2UlwHOMnNLfGFhTwnznfjCvsrQHKoMexArYIzEReizUfocmA
29
- oFZtyTHzE2VWZPd0gOPePU5AfG2vfTz6zJAg76LlJ02xCVzD0v8i89hTYZNacU/E
30
- BfoxzKzXuOqmc0cbx/V91e239w2ScpRv
18
+ ggEBAJT26Q1PFWuDE73UB4kWtSywhVX64gAlKkyueC9TPh3vfZLrLsZOH6NQ9IGb
19
+ bAyhZf5ssEipXjdb5zpW1hLA2+EXnP7+e2EnnR3nqnSua7EL5SQ2i5Hn1rjelQ4J
20
+ ZGf5bP7gKXiHPctKdUJNpt9hU3SbGfmacn5gLhmSEKl/hxhc5WaL09/i3bCFG0eB
21
+ K+6QBwjDLita3C+6PPxZmvE0g4IjrVqkIk3V14NTmrX8DEhFQMxI8O1vBAYgk9I0
22
+ PlfhMZnM0tCpN0ik61K2vEyBuL2EBTpVlRkPGL01D42CwwNc430y689Vzs14Sa4U
23
+ 7jASGyLD4ah+BG4FTrSTCv7qj8ECAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUdl92Ym4BQXiYru+4ezYtdNP4isEwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAjYjzqR2Q
27
+ Ye8tLT8e2owwEyNvCQtd/T6Cs/3HrPdUMllEepnw1T/zFYb3WzLvkejuFGfVpEAK
28
+ ad3NY0L8kHyc0U3+GtJTxiEQAWgdvw58UVS8SGbErccA5qwN9YDjWCOvigZBp3X9
29
+ VPmkPlc6HEAy1LfwdlGOTjbnh/5w6VCOrewqbBn8AZRbu3Bdm0Y2UUmnhmTKJPRZ
30
+ hHAfaOtCOVvDm1xVsvJ2SAAp/PsqRVZOTfXEZygGuIANnD3zQlBdFiJFByEbdDal
31
+ hfU2aUsh32EdO0lz//CAq6vJ6SOTB7aLPUBCTqjepgkYPqhbA4xLDdvXr4sd5ObL
32
+ ZuH02/86EylsSA==
31
33
  -----END CERTIFICATE-----
32
- date: 2013-10-05 00:00:00.000000000 Z
34
+ date: 2014-10-26 00:00:00.000000000 Z
33
35
  dependencies:
34
36
  - !ruby/object:Gem::Dependency
35
37
  name: dynarex
36
38
  requirement: !ruby/object:Gem::Requirement
37
39
  requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.2'
38
43
  - - ">="
39
44
  - !ruby/object:Gem::Version
40
- version: '0'
45
+ version: 1.2.90
41
46
  type: :runtime
42
47
  prerelease: false
43
48
  version_requirements: !ruby/object:Gem::Requirement
44
49
  requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '1.2'
45
53
  - - ">="
46
54
  - !ruby/object:Gem::Version
47
- version: '0'
55
+ version: 1.2.90
48
56
  - !ruby/object:Gem::Dependency
49
57
  name: rxfhelper
50
58
  requirement: !ruby/object:Gem::Requirement
51
59
  requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '0.1'
52
63
  - - ">="
53
64
  - !ruby/object:Gem::Version
54
- version: '0'
65
+ version: 0.1.12
55
66
  type: :runtime
56
67
  prerelease: false
57
68
  version_requirements: !ruby/object:Gem::Requirement
58
69
  requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '0.1'
59
73
  - - ">="
60
74
  - !ruby/object:Gem::Version
61
- version: '0'
75
+ version: 0.1.12
62
76
  description:
63
77
  email: james@r0bertson.co.uk
64
78
  executables: []
@@ -78,7 +92,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
78
92
  requirements:
79
93
  - - ">="
80
94
  - !ruby/object:Gem::Version
81
- version: '0'
95
+ version: 2.1.2
82
96
  required_rubygems_version: !ruby/object:Gem::Requirement
83
97
  requirements:
84
98
  - - ">="
@@ -86,7 +100,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
100
  version: '0'
87
101
  requirements: []
88
102
  rubyforge_project:
89
- rubygems_version: 2.0.0.rc.2
103
+ rubygems_version: 2.2.2
90
104
  signing_key:
91
105
  specification_version: 4
92
106
  summary: dataisland
metadata.gz.sig CHANGED
Binary file