myexperiment-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[myexperiment-hackers] [2202] trunk/lib/rest.rb: added elements option t


From: noreply
Subject: [myexperiment-hackers] [2202] trunk/lib/rest.rb: added elements option to /search.xml
Date: Thu, 28 May 2009 08:36:16 -0400 (EDT)

Revision
2202
Author
dgc
Date
2009-05-28 08:36:15 -0400 (Thu, 28 May 2009)

Log Message

added elements option to /search.xml

Modified Paths

Diff

Modified: trunk/lib/rest.rb (2201 => 2202)


--- trunk/lib/rest.rb	2009-05-27 14:53:43 UTC (rev 2201)
+++ trunk/lib/rest.rb	2009-05-28 12:36:15 UTC (rev 2202)
@@ -98,6 +98,14 @@
   "#{request.protocol}#{request.host_with_port}#{path}"
 end
 
+def model_entity_to_rest_entity(model_entity)
+  TABLES['Model'][:data].each do |k,v|
+    return k if v['Model Entity'] == model_entity
+  end
+
+  nil
+end
+
 def rest_get_element(ob, user, rest_entity, rest_attribute, query, elements)
 
   # puts "rest_get_element: #{rest_entity} / #{rest_attribute}"
@@ -457,13 +465,14 @@
 
   elements = query['elements'] ? query['elements'].split(',') : nil
 
-  rest_entity = TABLES['REST'][:data][req_uri]['GET']['REST Entity']
-
   obs.each do |ob|
 
     el = rest_reference(ob, query, !elements.nil?)
 
     if elements
+
+      rest_entity = model_entity_to_rest_entity(ob.class.name)
+
       TABLES['Model'][:data][rest_entity]['REST Attribute'].each do |rest_attribute|
         data = "" user, rest_entity, rest_attribute, query, elements)
         el << data unless data.nil?
@@ -928,10 +937,10 @@
 
     obs = find_paginated_auth( { :query => search_query, :models => models }, num, page, [], user) { |args, size, page|
 
-      query  = args[:query]
+      q      = args[:query]
       models = args[:models]
 
-      search_result = models[0].multi_solr_search(query, :limit => size, :offset => size * (page - 1), :models => models)
+      search_result = models[0].multi_solr_search(q, :limit => size, :offset => size * (page - 1), :models => models)
       search_result.results unless search_result.total < (size * (page - 1))
     }
   end

reply via email to

[Prev in Thread] Current Thread [Next in Thread]