Class: Decidim::ParticipatoryProcesses::ParticipatoryProcessMetricChartsPresenter
- Inherits:
-
MetricChartsPresenter
- Object
- MetricChartsPresenter
- Decidim::ParticipatoryProcesses::ParticipatoryProcessMetricChartsPresenter
- Defined in:
- decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb
Overview
A presenter to render metrics in ParticipatoryProcesses statistics page
Instance Method Summary collapse
- #big_stats ⇒ Object
- #highlighted ⇒ Object
- #medium_stats ⇒ Object
- #not_highlighted ⇒ Object
- #params ⇒ Object
- #participatory_process ⇒ Object
- #small_stats ⇒ Object
Instance Method Details
#big_stats ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 28 def big_stats safe_join( Decidim.metrics_registry.filtered(scope: "participatory_process", block: "big", sort: true).map do |metric_manifest| content_tag :div, class: "row" do render_metrics_descriptive(metric_manifest.metric_name, klass: "column", graph_klass: "small", title: I18n.t("decidim.metrics.#{metric_manifest.metric_name}.title"), description: I18n.t("decidim.metrics.#{metric_manifest.metric_name}.description"), download: true, data: { ratio: "11:4", axis: true }) end end ) end |
#highlighted ⇒ Object
20 21 22 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 20 def highlighted render_highlighted(Decidim.metrics_registry.filtered(highlight: true, scope: "participatory_process")) end |
#medium_stats ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 44 def medium_stats safe_join( Decidim.metrics_registry.filtered(scope: "participatory_process", block: "medium", sort: true).in_groups_of(2).map do |metrics_group| content_tag :div, class: "row" do safe_join( metrics_group.map do |metric_manifest| next "" if metric_manifest.blank? render_metrics_descriptive(metric_manifest.metric_name, klass: "column medium-6", graph_klass: "small", title: I18n.t("decidim.metrics.#{metric_manifest.metric_name}.title"), description: I18n.t("decidim.metrics.#{metric_manifest.metric_name}.description"), download: true, data: { ratio: "16:9", axis: true }) end ) end end ) end |
#not_highlighted ⇒ Object
24 25 26 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 24 def not_highlighted render_not_highlighted(Decidim.metrics_registry.filtered(highlight: false, scope: "participatory_process")) end |
#params ⇒ Object
13 14 15 16 17 18 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 13 def params capture do concat(hidden_field_tag(:metrics_space_type, participatory_process.class.name, id: :"metrics-space_type")) concat(hidden_field_tag(:metrics_space_id, participatory_process.id, id: :"metrics-space_id")) end end |
#participatory_process ⇒ Object
9 10 11 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 9 def participatory_process __getobj__.fetch(:participatory_process) end |
#small_stats ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'decidim-participatory_processes/app/presenters/decidim/participatory_processes/participatory_process_metric_charts_presenter.rb', line 66 def small_stats safe_join( Decidim.metrics_registry.filtered(scope: "participatory_process", block: "small", sort: true).in_groups_of(3).map do |metrics_group| content_tag :div, class: "row" do safe_join( metrics_group.map do |metric_manifest| next "" if metric_manifest.blank? render_metrics_data(metric_manifest.metric_name, klass: "column medium-4", ratio: "16:9", margin: "margin-top: 30px", graph_klass: "small", download: true, data: { ratio: "16:9" }) end ) end end ) end |