Merge branch 'master' of https://github.com/CactusPuppy/snapcon into 177195121-improve-email-templates

This commit is contained in:
Jimmy 2021-03-18 08:40:49 +08:00
commit 362853f4df
20 changed files with 136 additions and 149 deletions

View file

@ -16,6 +16,8 @@ before_install:
- "echo 'gem: --no-ri --no-rdoc' > ~/.gemrc" - "echo 'gem: --no-ri --no-rdoc' > ~/.gemrc"
- gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true - gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
- gem install bundler -v $(tail -n 1 Gemfile.lock) - gem install bundler -v $(tail -n 1 Gemfile.lock)
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > $CCTR
- chmod +x $CCTR
notifications: notifications:
email: email:
on_success: change on_success: change
@ -26,20 +28,17 @@ notifications:
on_success: change on_success: change
on_failure: change on_failure: change
before_script: before_script:
# install CodeClimate test reporter and tell it we are starting a test run
# - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > $CCTR
# - chmod +x $CCTR
# - $CCTR before-build
- RAILS_ENV=test bundle exec rake db:bootstrap --trace - RAILS_ENV=test bundle exec rake db:bootstrap --trace
- RAILS_ENV=test bundle exec bin/rails webdrivers:chromedriver:update - RAILS_ENV=test bundle exec bin/rails webdrivers:chromedriver:update
- $CCTR before-build
script: script:
- "bin/travis_script.sh $TEST_SUITE" - "bin/travis_script.sh $TEST_SUITE"
# TODO Get this working. # TODO Get this working.
# - $CCTR format-coverage -t simplecov --output coverage/codeclimate.$SUITE.json after_script:
# after_script:
# combine coverage from all suites, and upload3 to CodeClimate # combine coverage from all suites, and upload3 to CodeClimate
# - $CCTR sum-coverage coverage/codeclimate.*.json | $CCTR upload-coverage - $CCTR format-coverage -t simplecov --output coverage/codeclimate.$TEST_SUITE.json
# - $CCTR after-build --exit-code $TRAVIS_TEST_RESULT - $CCTR sum-coverage coverage/codeclimate.*.json
- if [[ "$TRAVIS_TEST_RESULT" == 0 ]]; then $CCTR upload-coverage; fi
env: env:
global: global:

View file

@ -266,7 +266,7 @@ group :test do
gem 'pdf-inspector', require: "pdf/inspector" gem 'pdf-inspector', require: "pdf/inspector"
end end
group :development, :test do group :development, :test, :linters do
# as debugger # as debugger
gem 'byebug' gem 'byebug'
gem 'pry' gem 'pry'

View file

@ -29,8 +29,9 @@
= render 'line_chart', = render 'line_chart',
title: 'Submissions per week', data: @submissions title: 'Submissions per week', data: @submissions
.col-md-4 .col-md-4
-# = render 'todo_list', -#
-# conference_progress: @conference_progress, conference: @conference = render 'todo_list',
conference_progress: @conference_progress, conference: @conference
.row#tickets .row#tickets
.col-md-8 .col-md-8
= render 'line_chart', = render 'line_chart',
@ -58,22 +59,27 @@
= render 'donut_chart', title: 'Event types', = render 'donut_chart', title: 'Event types',
combined_data: @event_type_distribution combined_data: @event_type_distribution
.col-md-4 .col-md-4
-# = render 'donut_chart', title: 'Difficulty levels', -#
-# combined_data: @difficulty_levels_distribution = render 'donut_chart', title: 'Difficulty levels',
combined_data: @difficulty_levels_distribution
.col-md-4 .col-md-4
-# = render 'donut_chart', title: 'Tracks', -#
-# combined_data: @tracks_distribution = render 'donut_chart', title: 'Tracks',
combined_data: @tracks_distribution
.tab-pane#distribution_confirmed .tab-pane#distribution_confirmed
.row .row
.col-md-4 .col-md-4
-# = render 'donut_chart', title: 'Event types', -#
-# combined_data: @event_type_distribution_confirmed = render 'donut_chart', title: 'Event types',
combined_data: @event_type_distribution_confirmed
.col-md-4 .col-md-4
-# = render 'donut_chart', title: 'Difficulty levels', -#
-# combined_data: @difficulty_levels_distribution_confirmed = render 'donut_chart', title: 'Difficulty levels',
combined_data: @difficulty_levels_distribution_confirmed
.col-md-4 .col-md-4
-# = render 'donut_chart', title: 'Tracks', -#
-# combined_data: @tracks_distribution_confirmed = render 'donut_chart', title: 'Tracks',
combined_data: @tracks_distribution_confirmed
.tab-pane#distribution_withdrawn .tab-pane#distribution_withdrawn
.row .row
.col-md-4 .col-md-4

View file

@ -1,9 +1,9 @@
.panel.panel-default{class: ("panel-success" if event.registrations.include?(@registration)) } .panel.panel-default{ class: ('panel-success' if event.registrations.include?(registration)) }
.panel-heading .panel-heading
%label{for: "registration_event_ids_#{event.id}"} %label{ for: "registration_event_ids_#{event.id}" }
%h3{style: 'margin: 0 auto;'} %h3{ style: 'margin: 0 auto;' }
= hidden_field_tag "registration[event_ids][]", nil = hidden_field_tag 'registration[event_ids][]', nil
= check_box_tag "registration[event_ids][]", event.id, event.registrations.include?(@registration), id: "registration_event_ids_#{event.id}" = check_box_tag 'registration[event_ids][]', event.id, event.registrations.include?(registration), id: "registration_event_ids_#{event.id}"
= event.title = event.title
%small %small
= event.subtitle = event.subtitle
@ -13,26 +13,27 @@
(Scheduled on: #{event.time.to_date}) (Scheduled on: #{event.time.to_date})
.panel-body .panel-body
-# %p -#
-# = canceled_replacement_event_label(event, event_schedule) %p
-# = replacement_event_notice(event_schedule) = canceled_replacement_event_label(event, event_schedule)
= replacement_event_notice(event_schedule)
%p %p
- if event.speakers.any? - if event.speakers.any?
presented by #{event.speaker_names} presented by #{event.speaker_names}
- if event_schedule.present? - if event_schedule.present?
.h4.track .h4.track
%span.fa.fa-clock-o %span.fa.fa-clock-o
%span.label{ style: "background-color: grey" } %span.label{ style: 'background-color: grey' }
= event_schedule.start_time.strftime('%A, %B %-d %H:%M') = event_schedule.start_time.strftime('%A, %B %-d %H:%M')
\- \-
= event_schedule.end_time.strftime('%H:%M') = event_schedule.end_time.strftime('%H:%M')
%p %p
= markdown(truncate(event.abstract, length: 250)) = markdown(truncate(event.abstract, length: 250))
-# TODO: More informative text or aria-label. -# TODO: More informative text or aria-label.
= link_to 'more', conference_program_proposal_path(@conference.short_title, event.id), target: '_blank' = link_to 'more', conference_program_proposal_path(conference.short_title, event.id), target: '_blank'
- if event.track - if event.track
%span.track %span.track
%span.fa.fa-road %span.fa.fa-road
%span.label{ style: "background-color: #{event.track.color}; color: #{ contrast_color(event.track.color) }" } %span.label{ style: "background-color: #{event.track.color}; color: #{contrast_color(event.track.color)}" }
= event.track.name = event.track.name

View file

@ -18,6 +18,6 @@
You are registered for #{pluralize(@registration.events.count, 'event')}. You are registered for #{pluralize(@registration.events.count, 'event')}.
They are at the end of this list. They are at the end of this list.
- @registration.events_ordered.each do |event| - @registration.events_ordered.each do |event|
= render 'conference_registrations/event', event: event, event_schedule: event.event_schedules.first = render 'conference_registrations/event', event: event, event_schedule: event.event_schedules.first, conference: @conference, registration: @registration
= render 'conferences/code_of_conduct', organization: @conference.organization = render 'conferences/code_of_conduct', organization: @conference.organization

View file

@ -1,14 +1,15 @@
-# .scroll-top-wrapper -#
-# = link_to "#banner", class: "smoothscroll" do scroll-top-wrapper
-# %i.fa.fa-2x.fa-arrow-circle-up = link_to "#banner", class: "smoothscroll" do
%i.fa.fa-2x.fa-arrow-circle-up
-# :javascript :javascript
-# $(function(){ $(function(){
-# $(document).on( 'scroll', function(){ $(document).on( 'scroll', function(){
-# if ($(window).scrollTop() > 100) { if ($(window).scrollTop() > 100) {
-# $('.scroll-top-wrapper').addClass('show'); $('.scroll-top-wrapper').addClass('show');
-# } else { } else {
-# $('.scroll-top-wrapper').removeClass('show'); $('.scroll-top-wrapper').removeClass('show');
-# } }
-# }); });
-# }); });

View file

@ -2,13 +2,14 @@
#banner{ style: ("background-image: url(#{conference.picture_url})" if conference.picture_url) } #banner{ style: ("background-image: url(#{conference.picture_url})" if conference.picture_url) }
.container .container
.row .row
.col-md-6.col-md-offset-3{id: (conference.picture? ? "header-image" : "header-no-image")} .col-md-6.col-md-offset-3{ id: (conference.picture? ? "header-image" : "header-no-image") }
.row .row
-# - if conference.picture? -#
-# .col-md-4 - if conference.picture?
-# = image_tag(conference.picture_url, .col-md-4
-# class: 'img-responsive img-center', = image_tag(conference.picture_url,
-# id: 'splash-logo') class: 'img-responsive img-center',
id: 'splash-logo')
.col-md-8 .col-md-8
%h1 %h1
= conference.title.html_safe = conference.title.html_safe

View file

@ -2,7 +2,7 @@
%li %li
%a.smoothscroll{ href: '#program' } Program %a.smoothscroll{ href: '#program' } Program
%li %li
= link_to('Schedule', events_conference_schedule_path(@conference)) = link_to('Schedule', events_conference_schedule_path(conference))
- cache [conference, highlights, tracks, booths, '#splash#program'] do - cache [conference, highlights, tracks, booths, '#splash#program'] do
%section#program %section#program

View file

@ -27,7 +27,7 @@
.row .row
.col-md-12 .col-md-12
%h3.text-center %h3.text-center
= "Interested in sponsoring #{conference.title}?" Interested in sponsoring #{conference.title}?
= link_to(sponsorship_mailto(conference)) do = link_to(sponsorship_mailto(conference)) do
Please, contact us! Please, contact us!
.trapezoid .trapezoid

View file

@ -22,6 +22,6 @@
.word_break .word_break
= short_ticket_description(ticket) = short_ticket_description(ticket)
%button.btn-block.btn.btn-lg.btn-success %button.btn-block.btn.btn-lg.btn-success
%i.fa.fa-ticket.fa-fw{"aria-hidden": true} %i.fa.fa-ticket.fa-fw{ "aria-hidden": true }
= humanized_money_with_symbol(ticket.price) = humanized_money_with_symbol(ticket.price)
.trapezoid .trapezoid

View file

@ -20,25 +20,23 @@
- if @unpaid_tickets - if @unpaid_tickets
.row .row
.col-md-12 .col-md-12
.alert.alert-dismissable.alert-info.text-center#unpaid-tickets{role: 'alert'} .alert.alert-dismissable.alert-info.text-center#unpaid-tickets{ role: 'alert' }
%button.button.close{"data-dismiss" => "alert", "aria-label"=>"close"} %button.button.close{ "data-dismiss" => "alert", "aria-label"=>"close" }
× ×
%p %p
You have unpaid tickets. Please complete your purchase. You have unpaid tickets. Please complete your purchase.
= link_to('Purchase Tickets', new_conference_payment_path(@conference), class: 'btn btn-success btn-lg') = link_to('Purchase Tickets', new_conference_payment_path(@conference), class: 'btn btn-success btn-lg')
- if @user_needs_to_register - if @user_needs_to_register
.row .row
.col-md-12 .col-md-12
.alert.alert-dismissable.alert-warning.text-center#flash{role: 'alert'} .alert.alert-dismissable.alert-warning.text-center#flash{ role: 'alert' }
%button.button.close{"data-dismiss" => "alert", 'aria-label': 'close'} %button.button.close{ "data-dismiss" => "alert", 'aria-label': 'close' }
× ×
%p %p
You still need to complete your registration for #{@conference.title}. You still need to complete your registration for #{@conference.title}.
= link_to('Complete Registration', new_conference_conference_registration_path(@conference), class: 'btn btn-success btn-lg') = link_to('Complete Registration', new_conference_conference_registration_path(@conference), class: 'btn btn-success btn-lg')
#splash #splash
- if @conference.code_of_conduct.present? - if @conference.code_of_conduct.present?
= render 'code_of_conduct', organization: @conference.organization = render 'code_of_conduct', organization: @conference.organization
@ -79,29 +77,8 @@
sponsorship_levels: @sponsorship_levels, sponsorship_levels: @sponsorship_levels,
sponsors: @sponsors sponsors: @sponsors
-# footer -# footer
- if @conference.splashpage.include_social_media - if @conference.splashpage.include_social_media
- if @conference.contact.has_social_media? - if @conference.contact.has_social_media?
= render 'social_media', contact: @conference.contact = render 'social_media', contact: @conference.contact
= render 'footer' = render 'footer'
-# - content_for :script_head do
-# :javascript
-# var triangle_tcs = tinycolor("#{h(@conference.color)}").monochromatic();
-# var triangle_colors = triangle_tcs.map(function(t) {
-# return t.toHexString();
-# });
-# $(function () {
-# $(document).ready(function() {
-# var triangle_width = document.body.clientWidth;
-# var triangle_height = ($( "#banner" ).height() + 200 );
-# var pattern = Trianglify({ width: triangle_width,
-# height: triangle_height,
-# cell_size: 100,
-# x_colors: triangle_colors
-# });
-# $('#banner').css('background-image', 'url(' + 0 + ')');
-# });
-# });

View file

@ -51,37 +51,38 @@
= link_to(sign_in_path) do = link_to(sign_in_path) do
%span.fa.fa-user %span.fa.fa-user
Sign In Sign In
-# %li.dropdown.visible-desktop -#
-# %a.dropdown-toggle{"data-toggle" => "dropdown", href: '#'} %li.dropdown.visible-desktop
-# %span.fa.fa-user %a.dropdown-toggle{"data-toggle" => "dropdown", href: '#'}
-# Sign In %span.fa.fa-user
-# %span.caret Sign In
-# .dropdown-menu %span.caret
-# - if ENV['OSEM_ICHAIN_ENABLED'] == 'true' .dropdown-menu
-# = form_tag User.ichain_login_url do - if ENV['OSEM_ICHAIN_ENABLED'] == 'true'
-# = text_field_tag 'username', nil, id: 'user_ichain_email_dd', class: 'form-control', placeholder: 'Username' = form_tag User.ichain_login_url do
-# = password_field_tag 'password', nil, id: 'user_ichain_password_dd', class: 'form-control', placeholder: 'Password' = text_field_tag 'username', nil, id: 'user_ichain_email_dd', class: 'form-control', placeholder: 'Username'
-# %button.btn.btn-success.btn-block Sign in = password_field_tag 'password', nil, id: 'user_ichain_password_dd', class: 'form-control', placeholder: 'Password'
-# - else %button.btn.btn-success.btn-block Sign in
-# %div{style: "padding: 6px"} - else
-# = form_tag new_user_session_path, class: 'form-group' do %div{style: "padding: 6px"}
-# = text_field_tag 'user[login]', nil, id: 'user_login_dd', class: 'form-control', placeholder: 'Username / E-Mail' = form_tag new_user_session_path, class: 'form-group' do
-# = password_field_tag 'user[password]', nil, id: 'user_password_dd', class: 'form-control', placeholder: 'Password' = text_field_tag 'user[login]', nil, id: 'user_login_dd', class: 'form-control', placeholder: 'Username / E-Mail'
-# %p.text-right = password_field_tag 'user[password]', nil, id: 'user_password_dd', class: 'form-control', placeholder: 'Password'
-# %small %p.text-right
-# %label{for: 'user_remember_me'} Remember me %small
-# = check_box_tag 'user[remember_me]' %label{for: 'user_remember_me'} Remember me
-# %br = check_box_tag 'user[remember_me]'
-# %button.btn.btn-success.btn-block Sign in %br
-# - unless omniauth_configured.empty? %button.btn.btn-success.btn-block Sign in
-# .divider - unless omniauth_configured.empty?
-# %h6.text-center .divider
-# or %h6.text-center
-# = render 'devise/shared/openid_links' or
-# %p.text-right = render 'devise/shared/openid_links'
-# %br %p.text-right
-# %a.small.btn.btn-xs.btn-default{"data-toggle" => "collapse", "data-target" => "#navbar-devise-help"} %br
-# Need Help? %a.small.btn.btn-xs.btn-default{"data-toggle" => "collapse", "data-target" => "#navbar-devise-help"}
-# #navbar-devise-help.collapse Need Help?
-# = render 'devise/shared/links' #navbar-devise-help.collapse
= render 'devise/shared/links'
.trapezoid .trapezoid

View file

@ -12,7 +12,7 @@
-# TODO: And if they have a registration ticket? -# TODO: And if they have a registration ticket?
- if !@conference.user_registered?(@user) && @has_registration_ticket - if !@conference.user_registered?(@user) && @has_registration_ticket
.col-md-12 .col-md-12
.alert.alert-success{role: 'alert'} .alert.alert-success{ role: 'alert' }
= link_to 'Complete Registration', = link_to 'Complete Registration',
new_conference_conference_registration_path(@conference), new_conference_conference_registration_path(@conference),
class: 'btn btn-info pull-right btn-lg' class: 'btn btn-info pull-right btn-lg'

View file

@ -16,7 +16,7 @@
That means you have That means you have
%b.notranslate= pluralize(@program.cfp.remaining_days, 'day') %b.notranslate= pluralize(@program.cfp.remaining_days, 'day')
left! left!
%span.notranslate #{@conference.title} %span.notranslate= @conference.title
will only be as good as the content you present. Submit early, submit often! will only be as good as the content you present. Submit early, submit often!
- else - else
The submission period is closed now. The submission period is closed now.

View file

@ -1,13 +1,13 @@
.speakerinfo .speakerinfo
.row .row
.col-md-4 .col-md-4
= image_tag speaker.profile_picture(:size => 120), class: 'img-responsive img-rounded' = image_tag speaker.profile_picture(size: 120), class: 'img-responsive img-rounded'
.col-md-8 .col-md-8
%h4 %h4
= link_to speaker.name, user_path(speaker.id) = link_to speaker.name, user_path(speaker.id)
%br %br
- if speaker.email_public? - if speaker.email_public?
= mail_to "#{ speaker.email }" do = mail_to speaker.email.to_s do
%i.fa.fa-envelope-o.fa-2x %i.fa.fa-envelope-o.fa-2x
- if speaker.affiliation? - if speaker.affiliation?
.text-muted .text-muted

View file

@ -1,7 +1,7 @@
.speakerinfo .speakerinfo
.row .row
.col-md-4 .col-md-4
= image_tag speaker.profile_picture(:size => 120), class: 'img-responsive img-rounded' = image_tag speaker.profile_picture(size: 120), class: 'img-responsive img-rounded'
.col-md-8 .col-md-8
%h4 %h4
= link_to speaker.name, user_path(speaker.id) = link_to speaker.name, user_path(speaker.id)

View file

@ -1,8 +1,8 @@
%table.table.table-striped#events %table.table.table-striped#events
- events.each do |event| - events.each do |event|
%tr %tr
%td.col-md-7{style: "padding:20px 8px 20px 8px;"} %td.col-md-7{ style: 'padding:20px 8px 20px 8px;' }
= link_to event.title, conference_program_proposal_path(@conference.short_title, event.id) = link_to event.title, conference_program_proposal_path(conference.short_title, event.id)
%br %br
%small.text-muted %small.text-muted
= event.event_type.title = event.event_type.title
@ -10,10 +10,11 @@
= "in #{event.track.name}" if event.track = "in #{event.track.name}" if event.track
- if event.require_registration - if event.require_registration
%br %br
= link_to registered_text(event), registrations_conference_program_proposal_path(@conference.short_title, event), class: 'btn btn-xs btn-danger' = link_to registered_text(event), registrations_conference_program_proposal_path(conference.short_title, event),
class: 'btn btn-xs btn-danger'
%td.col-md-2{style: "padding:20px 8px 20px 8px;"} %td.col-md-2{ style: 'padding:20px 8px 20px 8px;' }
- event_schedule = event.event_schedules.find_by(schedule_id: @program.selected_schedule_id) - event_schedule = event.event_schedules.find_by(schedule_id: program.selected_schedule_id)
- if event_schedule.present? - if event_schedule.present?
= inyourtz(event_schedule.start_time, @conference.timezone) do = inyourtz(event_schedule.start_time, conference.timezone) do
= event_schedule.start_time.strftime("%Y %B %e - %H:%M") = event_schedule.start_time.strftime('%Y %B %e - %H:%M')

View file

@ -121,7 +121,7 @@
Volunteer Duties Volunteer Duties
%small %small
Thanks for being a host at #{@conference.title} Thanks for being a host at #{@conference.title}
= render 'volunteers_table', events: @volunteer_events = render 'volunteers_table', events: @volunteer_events, conference: @conference, program: @program
.row .row
.col-md-12 .col-md-12

View file

@ -1,20 +1,20 @@
.panel.panel-default.event-panel{ onClick: 'eventClicked(event, this);', "data-url" => "#{url_for(conference_program_proposal_path(@conference.short_title, event.id))}" } .panel.panel-default.event-panel{ onClick: 'eventClicked(event, this);', 'data-url' => "#{url_for(conference_program_proposal_path(@conference.short_title, event.id))}" }
- header_color = event.event_type&.color || '#f5f5f5' - header_color = event.event_type&.color || '#f5f5f5'
.trapezoid{style: "color: white; top: 12px; z-index: 100;"} .trapezoid{ style: 'color: white; top: 12px; z-index: 100;' }
.panel-heading{ style: "background-color: #{header_color}; color: #{ contrast_color(header_color) }; border-radius: 4px" } .panel-heading{ style: "background-color: #{header_color}; color: #{ contrast_color(header_color) }; border-radius: 4px" }
- event.speakers_ordered.each do |speaker| - event.speakers_ordered.each do |speaker|
= image_tag speaker.profile_picture, class: "img-circle pull-right", alt: speaker.name, style: "padding: 2px;" = image_tag speaker.profile_picture, class: 'img-circle pull-right', alt: speaker.name, style: 'padding: 2px;'
%p %p
= canceled_replacement_event_label(event, event_schedule) = canceled_replacement_event_label(event, event_schedule)
= replacement_event_notice(event_schedule) = replacement_event_notice(event_schedule)
%span.h3{style: "margin-bottom: 14px"} %span.h3{ style: 'margin-bottom: 14px' }
= event.title = event.title
%br %br
%small{style: "color: #{contrast_color(header_color)}"} %small{ style: "color: #{contrast_color(header_color)}" }
= event.subtitle = event.subtitle
.trapezoid{style: "color: #{header_color}; top: 12px;"} .trapezoid{ style: "color: #{header_color}; top: 12px;" }
.panel-body .panel-body
%h4 %h4
@ -30,13 +30,13 @@
= inyourtz(event_schedule.start_time) do = inyourtz(event_schedule.start_time) do
%span.track %span.track
%span.fa.fa-clock-o %span.fa.fa-clock-o
%span.label{ style: "background-color: grey" } %span.label{ style: 'background-color: grey' }
= event_schedule.start_time.strftime('%l:%M %P') = event_schedule.start_time.strftime('%l:%M %P')
\- \-
= event_schedule.end_time.strftime('%l:%M %P') = event_schedule.end_time.strftime('%l:%M %P')
%span.track %span.track
%span.fa.fa-map-marker %span.fa.fa-map-marker
%span.label{ style: "background-color: grey" } %span.label{ style: 'background-color: grey' }
= event_schedule.room.name = event_schedule.room.name
- if event.track - if event.track
%span.track %span.track

View file

@ -12,7 +12,7 @@
%h3 %h3
This page was loaded at This page was loaded at
= inyourtz(Time.now) do = inyourtz(Time.now) do
#{Time.now.strftime('%a %b %d at %I:%M %P (%z)')} Time.now.strftime('%a %b %d at %I:%M %P (%z)').to_s
.row .row
/ TODO: Clean this up, merge with all events page. / TODO: Clean this up, merge with all events page.
@ -23,12 +23,15 @@
- unless event_schedule.start_time.strftime('%Y-%m-%d').eql?(date) - unless event_schedule.start_time.strftime('%Y-%m-%d').eql?(date)
.col-xs-12.col-md-12 .col-xs-12.col-md-12
.date-content .date-content
%span{ class: 'date-title', id: "#{ event_schedule.start_time.strftime('%Y-%m-%d') }" } %span.date-title{ id: event_schedule.start_time.strftime('%Y-%m-%d').to_s }
= inyourtz(event_schedule.start_time, @conference.timezone) do = inyourtz(event_schedule.start_time, @conference.timezone) do
= date = event_schedule.start_time.strftime('%Y-%m-%d') = date = event_schedule.start_time.strftime('%Y-%m-%d')
%a{ title: "Go up", class: "pull-right", href: "#program" } %a.pull-right{ title: 'Go up', href: '#program' }
%i{ class: "fa fa-angle-double-up fa-lg", 'aria-hidden' => true } %i.fa.fa-angle-double-up.fa-lg{ 'aria-hidden' => true }
- unless event_schedule.start_time.strftime('%H:%M').eql?(time) - if event_schedule.start_time.strftime('%H:%M').eql?(time)
.col-xs-12.col-md-11.col-md-offset-1
= render 'event', event: event_schedule.event, event_schedule: event_schedule
- else
.col-xs-12.col-md-1 .col-xs-12.col-md-1
.start-time .start-time
= inyourtz(event_schedule.start_time, @conference.timezone) do = inyourtz(event_schedule.start_time, @conference.timezone) do
@ -36,9 +39,6 @@
.col-xs-12.col-md-11 .col-xs-12.col-md-11
.new-time-event .new-time-event
= render 'event', event: event_schedule.event, event_schedule: event_schedule = render 'event', event: event_schedule.event, event_schedule: event_schedule
- else
.col-xs-12.col-md-11.col-md-offset-1
= render 'event', event: event_schedule.event, event_schedule: event_schedule
:javascript :javascript
// Refresh the page every 5 minutes. // Refresh the page every 5 minutes.