|
|
|
!!!
|
|
|
|
%html{ lang: I18n.locale.to_s }
|
|
|
|
%head
|
|
|
|
%meta{ charset: 'utf-8' }
|
|
|
|
%meta{ name: 'viewport', content: 'width=device-width, initial-scale=1.0' }
|
|
|
|
- title = yield :title
|
|
|
|
%title=_!('Bike!Bike!' + (content_for?(:title) ? " - #{title}" : ''))
|
|
|
|
%meta{ name: 'description', content: (yield_or_default :description, I18n.t('page_descriptions.home')) }
|
|
|
|
= csrf_meta_tags
|
|
|
|
= stylesheets
|
|
|
|
%link{ href: asset_path(@favicon), rel: 'shortcut icon', type: 'image/x-icon' }
|
|
|
|
%link{ href: asset_path(@favicon), rel: 'icon', type: 'image/x-icon' }
|
|
|
|
- (@alt_lang_urls || []).each do |locale, url|
|
|
|
|
%link{ rel: :alternate, hreflang: locale, href: url }
|
|
|
|
%link{ href: canonical_url, rel: :canonical }
|
|
|
|
- if content_for?(:og_image)
|
|
|
|
- og_image = yield :og_image
|
|
|
|
- og_image = request.base_url + og_image
|
|
|
|
%meta{property: 'og:title', content: title}
|
|
|
|
%meta{property: 'og:type', content: 'website'}
|
|
|
|
%meta{property: 'og:image', content: og_image}
|
|
|
|
%meta{name: "theme-color", content: @theme_colour}
|
|
|
|
= yield :head
|
|
|
|
|
|
|
|
%body{ class: page_style }
|
|
|
|
#primary-content
|
|
|
|
= render 'shared/navbar'
|
|
|
|
%main#main
|
|
|
|
- if content_for?(:banner)
|
|
|
|
%header#banner=yield :banner
|
|
|
|
- if @submenu
|
|
|
|
=row do
|
|
|
|
= columns(medium: 12) do
|
|
|
|
%nav.sub-menu
|
|
|
|
- @submenu.each do |href,key|
|
|
|
|
%a{href: href, class: request.fullpath.start_with?(href) ? 'current' : nil}=_"menu.submenu.#{key}"
|
|
|
|
- if has_content?
|
|
|
|
#content=yield
|
|
|
|
- else
|
|
|
|
= yield
|
|
|
|
#footer
|
|
|
|
%footer= render 'shared/footer'
|
|
|
|
#content-overlay
|
|
|
|
#overlay
|
|
|
|
.dlg#contact-dlg
|
|
|
|
.dlg-content
|
|
|
|
%h2.title=_'articles.contact.headings.contact'
|
|
|
|
.dlg-inner= render 'contact', cancel_btn: true
|
|
|
|
- if @confirmation_dlg.present?
|
|
|
|
.dlg#confirmation-dlg
|
|
|
|
.dlg-content
|
|
|
|
%h2.title=_'modals.confirm'
|
|
|
|
.dlg-inner
|
|
|
|
%p.message=''
|
|
|
|
%a.button.confirm=_'modals.yes_button'
|
|
|
|
%button.delete.close=_'modals.no_button'
|
|
|
|
- if @info_dlg.present?
|
|
|
|
.dlg#info-dlg
|
|
|
|
.dlg-content
|
|
|
|
%h2.title=_'modals.info'
|
|
|
|
.dlg-inner
|
|
|
|
%p.message=''
|
|
|
|
%button.close=_'modals.done_button'
|
|
|
|
- if @help_dlg.present?
|
|
|
|
.dlg#help-dlg{data: { nofocus: 1 }}
|
|
|
|
.dlg-content
|
|
|
|
%h2.title=_'modals.help'
|
|
|
|
.dlg-inner
|
|
|
|
.message=''
|
|
|
|
%button.close=_'modals.done_button'
|
|
|
|
- if @login_dlg.present?
|
|
|
|
.dlg#login-dlg
|
|
|
|
.dlg-content
|
|
|
|
%h2.title=_'forms.actions.generic.login'
|
|
|
|
.dlg-inner
|
|
|
|
= form_tag do_confirm_path, class: 'flex-form' do
|
|
|
|
= hidden_field_tag :dest, settings_path
|
|
|
|
= emailfield :email, nil, big: true
|
|
|
|
= button :continue, value: :confirm_email
|
|
|
|
.flex-form
|
|
|
|
= link_to (_'forms.actions.generic.facebook_sign_in','Facebook Sign In'), auth_at_provider_path(provider: :facebook, dest: settings_path), class: [:button, :facebook]
|
|
|
|
%button.close.subdued=_'forms.actions.generic.cancel'
|
|
|
|
|
|
|
|
- if @event_dlg.present?
|
|
|
|
.event-dlg#event-dlg{ data: { type: :event } }
|
|
|
|
.event-details
|
|
|
|
.actions.right
|
|
|
|
%a.more-details.button{href: '#'}=_'articles.workshops.info.read_more'
|
|
|
|
%button.close-btn.subdued=_'forms.actions.generic.close'
|
|
|
|
= yield :footer_scripts if content_for?(:footer_scripts)
|
|
|
|
= javascripts
|
|
|
|
= inline_scripts
|
|
|
|
= emit_js_translations
|