.container
  = render partial: 'schedule_tabs',  locals: { active: 'schedule' }

  #schedule-content
    %h1.text-center
      Schedule for
      = @conference.title
    .dropdown.schedule-dropdown
      %button{ type: "button", class: "btn btn-default dropdown-toggle", 'data-toggle' => "dropdown" }
        = @day
        %span.caret
      %ul.dropdown-menu
        - @dates.each do |date|
          %li.li-dropdown-schedule{ class: "#{ 'active' if @day == date }" }
            = link_to date, "#" + "#{date}", "data-toggle" => "tab", "class" => "date-tab"

    .tab-content
      - @dates.each do |date|
        %div{ class: "tab-pane #{ 'active' if @day == date }", id: "#{ date }" }

          .visible-xs-inline
            = render partial: 'carousel', locals: { date: date, hrs_per_slide: 1 }

          .visible-sm-inline
            = render partial: 'carousel', locals: { date: date, hrs_per_slide: 2 }

          .visible-md-inline.visible-lg-inline
            = render partial: 'carousel', locals: { date: date, hrs_per_slide: 3 }
    %p
      %span
        = link_to conference_schedule_url(protocol: 'webcal', format: 'ics') do
          Add the schedule to your calendar
      %span.pull-right
        = link_to app_conference_schedule_path do
          Get the mobile app!

:javascript
  // change of active tab and the button title when a date is clicked
  $(function() {
    $('.date-tab').on('click', function(e) {
      $('.li-dropdown-schedule').removeClass('active');
      $('.schedule-dropdown').find('button').text($(this).text());
    });
  });

  // hide the right and left controls when neccesary after moving the carousel
  $('.carousel').on('slid.bs.carousel', '',
  function(){
    $(this).children('.left.carousel-control').show();
    $(this).children('.right.carousel-control').show();
    if($(this).find('.first').hasClass('active')) {
      $(this).children('.left.carousel-control').hide();
    }
    if($(this).find('.last').hasClass('active')) {
      $(this).children('.right.carousel-control').hide();
    }
  });

  $(document).ready(function(){
    // hide the left control when the page is ready
    $('.carousel').each(function() {
      if($(this).find('.first').hasClass('active')) {
        $(this).children('.left.carousel-control').hide();
      }
      if($(this).find('.last').hasClass('active')) {
        $(this).children('.right.carousel-control').hide();
      }
    });

    // carousel swipe
    $(".carousel-inner").swiperight(function() {
      $(this).parent().carousel('prev');
    });
    $(".carousel-inner").swipeleft(function() {
      $(this).parent().carousel('next');
    });

    var day = "#{@current_day}";
    // we only go to the date tag in the url if the conference is not taking place now
    if(day === ""){
      // use the date tag in the url to select a tab and the title of the button
      var hash = window.location.hash;
      if(hash && !(hash === '#schedule')){
        hash && $('ul a[href="' + hash + '"]').tab('show');
        $('button.dropdown-toggle').text(hash.substr(1));
      }
    }
  });
