Sha256: c8012aef65c4ac59dbda0a7579b3da6eeda8b3b74ec09fffb50f53075d531b1b
Contents?: true
Size: 1.36 KB
Versions: 10
Compression:
Stored size: 1.36 KB
Contents
# frozen_string_literal: true module Decidim module Meetings # This cell renders the button to join a meeting. class JoinMeetingButtonCell < Decidim::ViewModel include MeetingCellsHelper def show return unless model.can_be_joined_by?(current_user) || model.on_different_platform? render end private delegate :current_user, to: :controller, prefix: false def current_component model.component end def button_classes "button button__xl button__secondary w-full" end def shows_remaining_slots? options[:show_remaining_slots] && model.available_slots.positive? end def i18n_join_text return I18n.t("join", scope: "decidim.meetings.meetings.show") if model.has_available_slots? I18n.t("no_slots_available", scope: "decidim.meetings.meetings.show") end def i18n_confirm_text I18n.t("confirm", scope: "decidim.meetings.meetings.registration_confirm") end def i18n_cancel_text I18n.t("cancel", scope: "decidim.meetings.meetings.registration_confirm") end def registration_terms_text decidim_sanitize_editor translated_attribute(model.registration_terms) end def registration_form @registration_form ||= Decidim::Meetings::JoinMeetingForm.new end end end end
Version data entries
10 entries across 10 versions & 1 rubygems