trophonius 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trophonius_query.rb +29 -8
- data/lib/trophonius_single.rb +4 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 193ec5a1a1a35715519760565271544fe7d14e56670ff533b30449db17a9739f
|
4
|
+
data.tar.gz: 7b241ecfc24897f44d288fbb912c22fb950b1e645eddb1ed4b2cccaeb6022198
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3c4e65f40f0f8e484ebf35418c9ec26b998f0c9cbd4610e449ec5f0c0abf2c49daec033b8c0929b8f15979f785a461218607b4f075a4d877b3dab6637f50c57e
|
7
|
+
data.tar.gz: 7b64990a532ca0944514746d78b56adc39ea5b175c3d683ff284a09a101ad4f15fb94c391e8fee67223baf50bb4d5ad2dc6cb34c593f9cf8abf0a5b0fe3e5395
|
data/lib/trophonius_query.rb
CHANGED
@@ -42,6 +42,24 @@ module Trophonius
|
|
42
42
|
@current_query
|
43
43
|
end
|
44
44
|
|
45
|
+
##
|
46
|
+
# Returns the current portal limits
|
47
|
+
#
|
48
|
+
# @return [Hash] Hash representing the portal limits
|
49
|
+
def build_portal_limits()
|
50
|
+
@portal_limits ||= {}
|
51
|
+
end
|
52
|
+
|
53
|
+
##
|
54
|
+
# Adds a portal limit to the request
|
55
|
+
#
|
56
|
+
# @param [args] arguments containing a Hash with the format {portalName: requiredLimit}
|
57
|
+
# @return [Trophonius::Model] updated base model
|
58
|
+
def set_portal_limits(args)
|
59
|
+
args[1].current_query.build_portal_limits.merge!(args[0])
|
60
|
+
args[1]
|
61
|
+
end
|
62
|
+
|
45
63
|
##
|
46
64
|
# Adds a find request to the original query, resulting in an "Or" find-request for FileMaker
|
47
65
|
#
|
@@ -107,6 +125,7 @@ module Trophonius
|
|
107
125
|
}/layouts/#{@trophonius_model.layout_name}/_find"
|
108
126
|
)
|
109
127
|
)
|
128
|
+
|
110
129
|
new_field_data = @current_query.map { |_q| {} }
|
111
130
|
|
112
131
|
@trophonius_model.create_translations if @trophonius_model.translations.keys.empty?
|
@@ -120,21 +139,23 @@ module Trophonius
|
|
120
139
|
end
|
121
140
|
end
|
122
141
|
if @offset.nil? || @limit.nil? || @offset == '' || @limit == '' || @offset == 0 || @limit == 0
|
123
|
-
body =
|
124
|
-
if @current_sort.nil?
|
125
|
-
{ query: new_field_data, limit: '100000' }.to_json
|
126
|
-
else
|
127
|
-
{ query: new_field_data, sort: @current_sort, limit: '100000' }.to_json
|
128
|
-
end
|
142
|
+
body = @current_sort.nil? ? { query: new_field_data, limit: '100000' } : { query: new_field_data, sort: @current_sort, limit: '100000' }
|
129
143
|
else
|
130
144
|
body =
|
131
145
|
if @current_sort.nil?
|
132
|
-
{ query: new_field_data, limit: @limit.to_s, offset: @offset.to_s }
|
146
|
+
{ query: new_field_data, limit: @limit.to_s, offset: @offset.to_s }
|
133
147
|
else
|
134
|
-
{ query: new_field_data, sort: @current_sort, limit: @limit.to_s, offset: @offset.to_s }
|
148
|
+
{ query: new_field_data, sort: @current_sort, limit: @limit.to_s, offset: @offset.to_s }
|
135
149
|
end
|
136
150
|
end
|
137
151
|
|
152
|
+
if @portal_limits
|
153
|
+
portal_hash = { portal: @portal_limits.map { |portal_name, limit| "#{portal_name}" } }
|
154
|
+
body.merge!(portal_hash)
|
155
|
+
@portal_limits.each { |portal_name, limit| body.merge!({ "limit.#{portal_name}" => limit.to_s }) }
|
156
|
+
end
|
157
|
+
|
158
|
+
body = body.to_json
|
138
159
|
response = Request.make_request(url, "Bearer #{Request.get_token}", 'post', body)
|
139
160
|
if response['messages'][0]['code'] != '0'
|
140
161
|
if response['messages'][0]['code'] == '101' || response['messages'][0]['code'] == '401'
|
data/lib/trophonius_single.rb
CHANGED
@@ -30,6 +30,7 @@ module Trophonius
|
|
30
30
|
|
31
31
|
r_results = response['response']['data']
|
32
32
|
if response['messages'][0]['code'] != '0' && response['messages'][0]['code'] != '401'
|
33
|
+
close_connection(token)
|
33
34
|
Error.throw_error(response['messages'][0]['code'])
|
34
35
|
elsif response['messages'][0]['code'] == '401'
|
35
36
|
close_connection(token)
|
@@ -62,8 +63,10 @@ module Trophonius
|
|
62
63
|
ret_val = ''
|
63
64
|
|
64
65
|
if result['messages'][0]['code'] != '0'
|
66
|
+
close_connection(token)
|
65
67
|
Error.throw_error(result['messages'][0]['code'])
|
66
68
|
elsif result['response']['scriptResult'] == '403'
|
69
|
+
close_connection(token)
|
67
70
|
Error.throw_error(403)
|
68
71
|
else
|
69
72
|
ret_val = result['response']['scriptResult']
|
@@ -146,6 +149,7 @@ module Trophonius
|
|
146
149
|
begin
|
147
150
|
JSON.parse(temp.response_body)
|
148
151
|
rescue Exception => e
|
152
|
+
close_connection(token)
|
149
153
|
Error.throw_error('1631')
|
150
154
|
end
|
151
155
|
end
|