trophonius 1.3.0 → 1.3.1
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/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
|