rubycentral/cfp-app

View on GitHub
app/views/staff/program_sessions/show.html.haml

Summary

Maintainability
Test Coverage
.event-info-bar
  .row
    .col-md-8
      .event-info.event-info-dense
        %strong.event-title= current_event.name
        - if current_event.start_date? && current_event.end_date?
          %span.event-meta
            %i.fa.fa-fw.fa-calendar
            = current_event.date_range
    .col-md-4.text-right.text-right-responsive
      .event-info.event-info-dense
        %span{:class => "event-meta event-status-badge event-status-#{current_event.status}"}
          CFP
          = current_event.status
        - if current_event.open?
          %span.event-meta
            CFP closes:
            %strong= current_event.closes_at(:month_day_year)

  .page-header.page-header-slim
    .row
      .col-md-12
        .btn-navbar.pull-right
          - if current_user.organizer_for_event?(current_event)
            = link_to edit_event_staff_program_session_path(current_event, @program_session), class: 'btn btn-primary' do
              %span.glyphicon.glyphicon-edit
              Edit
            = promote_button(@program_session)
        %h1 Program Session
  .row
    .col-md-6
      .program-session-item
        %h3.control-label Title
        %p= @program_session.title
      .program-session-item
        %h3.control-label Format
        %p #{program_session.session_format_name}
      .program-session-item
        %h3.control-label Track
        %p #{program_session.track_name}
      .program-session-item
        %h3.control-label Abstract
        .markdown{ data: { 'field-id' => 'program_session_abstract' } }
          = program_session.abstract_markdown
      .program-session-item
        %h3.control-label Video URL
        = link_to program_session.video_url, program_session.complete_video_url if program_session.video_url
      .program-session-item
        %h3.control-label Slides URL
        = link_to program_session.slides_url, program_session.complete_slides_url if program_session.slides_url

    .col-md-6
      .program-session-item
        %h3.control-label Status
        %p.session-status #{program_session.state_label(large: true)}
      .program-session-item
        - if program_session.proposal.present?
          .proposal-link
            %h3.control-label Proposal
            %p= link_to program_session.proposal.title, event_staff_program_proposal_path(current_event, program_session.proposal)
          - if program_session.proposal.confirmed?
            %p= "Confirmed at: #{program_session.proposal.confirmed_at.to_s(:month_day_year)}"
          - else
            - if program_session.proposal.awaiting_confirmation?
              = link_to 'Confirm for Speaker', confirm_for_speaker_event_staff_program_session_path(slug: program_session.proposal.event.slug, uuid: program_session.proposal),
                class: "btn btn-primary btn-sm",
                method: :post
      .program-session-item
        %h3.control-label Confirmation Notes
        %p= render 'confirmation_notes', program_session: program_session
      .program-session-item.session-speakers
        .session-speakers-header.clearfix
          %h3.control-label.pull-left
            Speakers
          - if current_user.organizer_for_event?(current_event)
            = link_to "Add Speaker", new_event_staff_program_session_speaker_path(current_event, program_session), class: "btn btn-success btn-xs pull-right new-speaker"
        - @speakers.each do |speaker|
          %section
            .session-speaker-header.clearfix
              .pull-left
                %b.speaker-name= link_to speaker.name, event_staff_program_speaker_path(current_event, speaker)
                %p= speaker.email
              - if current_user.organizer_for_event?(current_event)
                .session-speaker-actions.pull-right
                  .edit-session-speaker= link_to "Edit", edit_event_staff_program_speaker_path(current_event, speaker), class: "btn btn-primary btn-xs"
                  - if program_session.multiple_speakers?
                    .remove-session-speaker= link_to "Remove", event_staff_program_speaker_path(current_event, speaker), method: :delete, data: { confirm: "Are you sure you want to remove this speaker?" }, class: "btn btn-danger btn-xs"
            %p