class TrkDatatables::Neo4j
Public Instance Methods
filter_by_columns(all)
click to toggle source
# File lib/trk_datatables/neo4j.rb, line 14 def filter_by_columns(all) all end
filter_by_search_all(filtered)
click to toggle source
# File lib/trk_datatables/neo4j.rb, line 3 def filter_by_search_all(filtered) return filtered unless @dt_params.search_all.present? # https://neo4jrb.readthedocs.io/en/stable/QueryClauseMethods.html?highlight=where#where sql = @column_key_options.searchable_and_global_search.map do |column_key_option| "#{column_key_option[:column_key]} =~ ?" end.join(' or ') filtered.where sql, ".*#{@dt_params.search_all}.*" end
order_and_paginate_items(filtered)
click to toggle source
# File lib/trk_datatables/neo4j.rb, line 18 def order_and_paginate_items(filtered) filtered = order_items filtered filtered = filtered.offset(@dt_params.dt_offset).limit(dt_per_page_or_default) filtered end
order_items(filtered)
click to toggle source
# File lib/trk_datatables/neo4j.rb, line 24 def order_items(filtered) order_by = dt_orders_or_default_index_and_direction.each_with_object([]) do |(index, direction), queries| column_key_option = @column_key_options[index] next if column_key_option[:column_options][ColumnKeyOptions::ORDER_OPTION] == false queries << "#{column_key_option[:column_key]} #{direction}" end filtered.order(order_by.join(', ')) end