94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# File 'lib/brief/document_mapper.rb', line 94
def all
results = run_query
if @order_by
order_by_attr = @order_by.keys.first
direction = @order_by.values.first
results.select! do |result|
result.respond_to?(order_by_attr)
end
results.sort_by! do |result|
result.send(order_by_attr)
end
results.reverse! if direction == :desc
end
if @offset.present?
results = results.last([results.size - @offset, 0].max)
end
if @limit.present?
results = results.first(@limit)
end
results
end
|