projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' into 3219-further-docker-improvements
[arvados.git]
/
services
/
api
/
lib
/
load_param.rb
diff --git
a/services/api/lib/load_param.rb
b/services/api/lib/load_param.rb
index 11f18f707a3dc0d4649de80cfe5eff40e22ac71c..71678cd223739db6649e011b28a5eaa82c3ea31a 100644
(file)
--- a/
services/api/lib/load_param.rb
+++ b/
services/api/lib/load_param.rb
@@
-34,8
+34,10
@@
module LoadParam
elsif params[:filters].is_a? String and !params[:filters].empty?
begin
f = Oj.load params[:filters]
elsif params[:filters].is_a? String and !params[:filters].empty?
begin
f = Oj.load params[:filters]
- raise unless f.is_a? Array
- @filters += f
+ if not f.nil?
+ raise unless f.is_a? Array
+ @filters += f
+ end
rescue
raise ArgumentError.new("Could not parse \"filters\" param as an array")
end
rescue
raise ArgumentError.new("Could not parse \"filters\" param as an array")
end
@@
-72,9
+74,13
@@
module LoadParam
od = []
(case params[:order]
when String
od = []
(case params[:order]
when String
- od = Oj.load(params[:order])
- raise unless od.is_a? Array
- od
+ if params[:order].starts_with? '['
+ od = Oj.load(params[:order])
+ raise unless od.is_a? Array
+ od
+ else
+ params[:order].split(',')
+ end
when Array
params[:order]
else
when Array
params[:order]
else
@@
-101,7
+107,7
@@
module LoadParam
when String
begin
@select = Oj.load params[:select]
when String
begin
@select = Oj.load params[:select]
- raise unless @select.is_a? Array
+ raise unless @select.is_a? Array
or @select.nil?
rescue
raise ArgumentError.new("Could not parse \"select\" param as an array")
end
rescue
raise ArgumentError.new("Could not parse \"select\" param as an array")
end