From b86f0570df0ca41e7358ff9ea6d5f6f5df5fc3d6 Mon Sep 17 00:00:00 2001 From: Israel Barreto Sant'Anna <ibsa14@inf.ufpr.br> Date: Fri, 4 Dec 2015 11:30:22 -0200 Subject: [PATCH] Fixed search order by Signed-off-by: Israel Barreto Sant'Anna <ibsa14@inf.ufpr.br> --- app/builders/generic_builder.rb | 1 - app/services/search_service.rb | 10 +++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/builders/generic_builder.rb b/app/builders/generic_builder.rb index 99bf2693..53379676 100644 --- a/app/builders/generic_builder.rb +++ b/app/builders/generic_builder.rb @@ -18,7 +18,6 @@ class GenericBuilder < Builder if cache && !object[last_modified].blank? o = Rails.cache.fetch(cache_key(object[id], object[last_modified])) end - p object.inspect o = repository(object['class']).find object[id] if o.nil? array << o end diff --git a/app/services/search_service.rb b/app/services/search_service.rb index 93189fc9..ce350425 100644 --- a/app/services/search_service.rb +++ b/app/services/search_service.rb @@ -18,7 +18,11 @@ class SearchService private def build_search_query(params={}) - "SELECT @rid.asString(), last_modified, @class FROM ("+main_query(params)+") ORDER BY #{order_by(params[:order])}" + order = order_by(params[:order]) + ord_attr = order + ord_attr.slice!(' ASC') + ord_attr.slice!(' DESC') + "SELECT @rid.asString(), last_modified, @class, #{ord_attr} FROM ("+main_query(params)+") ORDER BY #{order}" end def main_query(params={}) @@ -88,9 +92,9 @@ class SearchService def order_by(order) case order when 'author' - 'author' + 'author ASC' when 'publicationasc' - 'published_at' + 'published_at ASC' when 'publicationdesc' 'published_at DESC' when 'title' -- GitLab