Sha256: ab821da460e152081f5fde655b88f836f44be1884af019b9f13a2c0c552bc6a2
Contents?: true
Size: 1.37 KB
Versions: 13
Compression:
Stored size: 1.37 KB
Contents
# frozen_string_literal: true module Decidim module Proposals # This helper include some methods for rendering proposals dynamic maps. module MapHelper include Decidim::ApplicationHelper # Serialize a collection of geocoded proposals to be used by the dynamic map component # # geocoded_proposals - A collection of geocoded proposals def proposals_data_for_map(geocoded_proposals) geocoded_proposals.map do |proposal| proposal_data_for_map(proposal) end end def proposal_data_for_map(proposal) proposal .slice(:latitude, :longitude, :address) .merge( title: decidim_html_escape(present(proposal).title), link: proposal_path(proposal), items: cell("decidim/proposals/proposal_metadata", proposal).send(:proposal_items_for_map).to_json ) end def proposal_preview_data_for_map(proposal) { type: "drag-marker", marker: proposal.slice( :latitude, :longitude, :address ).merge( icon: icon("chat-new-line", width: 40, height: 70, remove_icon_class: true) ) } end def has_position?(proposal) return if proposal.address.blank? proposal.latitude.present? && proposal.longitude.present? end end end end
Version data entries
13 entries across 13 versions & 1 rubygems