class WinewooCore::Repositories::Mongo::InterproCriterionsMongoRepo
Public Instance Methods
find(filters)
click to toggle source
# File lib/winewoo_core/repositories/mongo/interpro_criterions_mongo_repo.rb, line 4 def find(filters) @filters = filters category = filters.category && filters.category.parameterize.underscore.to_sym return category && find_and_serialize_criterions(category) end
Private Instance Methods
find_and_serialize_criterions(category)
click to toggle source
# File lib/winewoo_core/repositories/mongo/interpro_criterions_mongo_repo.rb, line 13 def find_and_serialize_criterions(category) found_criterions = FinderBuilder.build(category, @filters).find found_criterions.map do |criterion| serialize_criterion(criterion) unless criterion.blank? end.compact end
serialize_criterion(criterion)
click to toggle source
# File lib/winewoo_core/repositories/mongo/interpro_criterions_mongo_repo.rb, line 21 def serialize_criterion(criterion) criterion.is_a?(String) ? { picto: nil, name: criterion, value: criterion } : { picto: criterion.read_attribute(@filters.screen_size || :iphonex2_picto), name: criterion.name, value: criterion.id } end