Class: Decidim::ParticipatoryProcesses::ParticipatoryProcessDemocraticQualityStatsPresenter
- Inherits:
-
Object
- Object
- Decidim::ParticipatoryProcesses::ParticipatoryProcessDemocraticQualityStatsPresenter
- Defined in:
- app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb
Overview
Presenter class for calculating and displaying democratic quality statistics for a participatory process. It handles both automatic metrics and manual auto-evaluation metrics.
Instance Attribute Summary collapse
-
#content_block ⇒ Object
readonly
Returns the value of attribute content_block.
-
#participatory_process ⇒ Object
readonly
Returns the value of attribute participatory_process.
Instance Method Summary collapse
- #finished_survey? ⇒ Boolean
-
#initialize(content_block, participatory_process) ⇒ ParticipatoryProcessDemocraticQualityStatsPresenter
constructor
A new instance of ParticipatoryProcessDemocraticQualityStatsPresenter.
- #stats ⇒ Object
Constructor Details
#initialize(content_block, participatory_process) ⇒ ParticipatoryProcessDemocraticQualityStatsPresenter
Returns a new instance of ParticipatoryProcessDemocraticQualityStatsPresenter.
11 12 13 14 |
# File 'app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb', line 11 def initialize(content_block, participatory_process) @content_block = content_block @participatory_process = participatory_process end |
Instance Attribute Details
#content_block ⇒ Object (readonly)
Returns the value of attribute content_block.
9 10 11 |
# File 'app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb', line 9 def content_block @content_block end |
#participatory_process ⇒ Object (readonly)
Returns the value of attribute participatory_process.
9 10 11 |
# File 'app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb', line 9 def participatory_process @participatory_process end |
Instance Method Details
#finished_survey? ⇒ Boolean
36 37 38 39 40 41 42 43 44 45 46 |
# File 'app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb', line 36 def finished_survey? settings.functional_diversity_invited != -1 && settings.languages_communicated != -1 && settings.mobility_meeting_access != -1 && settings.participation_scheduling_times != -1 && settings.digital_support_offered != -1 && settings.citizen_influence_level != -1 && settings.citizen_decisional_intervention != -1 && settings.published_information_clarity != -1 && settings.information_provided != -1 end |
#stats ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'app/presenters/decidim/participatory_processes/participatory_process_democratic_quality_stats_presenter.rb', line 16 def stats @stats ||= { global_score: calculate_global_score, precision: 2, # Automatic metrics based on platform data automatic: { influence: calculate_automatic_influence, hybridization: calculate_automatic_hybridization, transparency: calculate_automatic_transparency, traceability: calculate_automatic_traceability }, # Auto-evaluation metrics based on survey responses auto_evaluation: { inclusiveness: calculate_auto_evaluation_inclusiveness, citizen_influence: calculate_auto_evaluation_citizen_influence, informativeness: calculate_auto_evaluation_informativeness } } end |