# frozen_string_literal: true module Reports::TrendingSearch extend ActiveSupport::Concern class_methods do def report_trending_search(report) report.labels = [ { property: :term, type: :text, title: I18n.t("reports.trending_search.labels.term") }, { property: :searches, type: :number, title: I18n.t("reports.trending_search.labels.searches") }, { type: :percent, property: :ctr, title: I18n.t("reports.trending_search.labels.click_through") } ] report.data = [] report.modes = [:table] trends = SearchLog.trending_from(report.start_date, end_date: report.end_date, limit: report.limit ) trends.each do |trend| report.data << { term: trend.term, searches: trend.searches, ctr: trend.ctr } end end end end