Dropdown with date tags in all events

Dropdown with date tags in all events of the schedule
This commit is contained in:
Ana 2016-06-12 21:37:16 +02:00
parent cc031b9f3a
commit 70f30fcb1f
4 changed files with 73 additions and 2 deletions

View file

@ -1,4 +1,24 @@
<h1 class="text-center">Program for <%= @conference.title %></h1>
<div class="dropdown program-dropdown">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
Dates
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<% @dates.each do |date| %>
<!-- we check if there is any event that day to indicate it appropiately -->
<li class='li-dropdown-program'>
<%= link_to date, "#program-" + "#{date}", class: "program-selector#{ ' no-events-day' unless @conference.program.any_event_for_this_date?(date) }" %>
</li>
<% end %>
<% if @unscheduled_events.any? %>
<li class='li-dropdown-program'>
<%= link_to('Unscheduled', "#program-unscheduled", class: 'program-selector') %>
</li>
<% end %>
</ul>
</div>
<div class="row">
<!-- scheduled events -->
@ -46,3 +66,9 @@
</div>
<% end %>
</div>
<%= javascript_tag do %>
$('.program-selector').on('click', function(e) {
$('.li-dropdown-program').removeClass('active');
});
<% end %>

View file

@ -3,10 +3,10 @@
<div role="tabpanel">
<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active">
<li role="presentation" class="active schedule">
<a title="Timetable of the events" href="#schedule" aria-controls="schedule" role="tab" data-toggle="tab">Schedule</a>
</li>
<li role="presentation">
<li role="presentation" class="program">
<a title="All, including unscheduled Events" href="#program" aria-controls="program" role="tab" data-toggle="tab">All Events</a>
</li>
</ul>
@ -25,3 +25,19 @@
<%= render 'all_events' %>
<% end %>
</div>
<%= javascript_tag do %>
// We set the program tab to active if the url tag starts by 'program-'
$( document ).ready(function() {
if(window.location.hash.substring(1).startsWith('program-')){
schedule = $('.schedule');
schedule.removeClass('active');
schedule.find('a').attr("aria-expanded", "false");
$('#schedule').removeClass('active');
program = $('.program');
program.addClass('active');
program.find('a').attr("aria-expanded", "true");
$('#program').addClass('active');
}
});
<% end %>