TechLadies/home-web

View on GitHub
app/views/cases/show.html.erb

Summary

Maintainability
Test Coverage
<div class='page-header'>

  <div class="container">
    <h1 class="pull-left">Case #<%= @presenter.case_file.id %></h1>
    <div class="pull-right">
      <%= link_to 'Edit Case', edit_case_path(@presenter.case_file), class: 'btn btn-default' if @presenter.case_file.pending? %>
      <%= link_to 'Close Case', new_case_closure_path(@presenter.case_file), remote: true, class: 'btn btn-danger' if @presenter.case_file.pending? %>
      <%= link_to 'Reopen Case', reopen_admin_case_path(@presenter.case_file), method: :put, class: 'btn btn-danger', data: { confirm: "Are you sure?" } if current_user.is_admin? && @presenter.case_file.closed? %>
    </div>
  </div>

  <!-- *Case Information -->
  <div class='page-header-list'>
    <div class='container'>
      <ul class="list-inline">

        <li>
          <span>Case Type</span>
          <strong><%= @presenter.case_file.case_type %></strong>
        </li>

        <li>
          <span>Status</span>
          <strong><%= @presenter.case_file.status %></strong>
        </li>

        <%- if @presenter.case_file.reported_at %>
          <li>
            <span>Reported at</span>
            <strong><%= @presenter.case_file.reported_at.to_date.to_formatted_s(:long) %></strong>
          </li>
        <%- end %>

        <li>
          <span>Assigned to</span>
          <strong><%= @presenter.case_file.user.name %></strong>
          <%= link_to 'Reassign', reassign_admin_case_path(@presenter.case_file), remote: true, class: 'btn btn-primary btn-sm' if current_user.is_admin? && @presenter.case_file.pending? %>
        </li>

      </ul>
    </div>
  </div>
  <!-- Case Information* -->

</div>

<div class='container'>

  <div class="panel panel-default">
    <div class='panel-body'>

      <ul class="nav nav-tabs" role="tablist">
        <%- @presenter.tabs do |key, title, badge| %>
          <li role="presentation">
            <a href="#<%= key %>" aria-controls="<%= key %>" role="tab" data-toggle="tab">
              <span><%= title %></span>
              <%- if badge %>
                <span class="badge"><%= badge %></span>
              <%- end %>
            </a>
          </li>
        <%- end %>
      </ul>

      <div class="tab-content">
        <%- @presenter.tabs do |key, title, badge| %>
          <div role="tabpanel" class="tab-pane" id="<%= key %>">
            <%= render partial: "cases/tabs/#{key}", locals: { presenter: @presenter } %>
          </div>
        <%- end %>
      </div>

    </div>
  </div>

</div>

<%= render partial: "cases/involvements/#{@presenter.case_file.case_type.underscore}", locals: { presenter: @presenter } %>

<%- if @presenter.case_file.closed? %>
  <div class="container">

    <div class="panel panel-default">
      <div class='panel-body'>
        <h4>Resolution Notes (<%= @presenter.case_file.closed_at.to_s(:short) %>)</h4>
        <hr />
        <p><%= @presenter.case_file.resolution %></p>
      </div>
    </div>

  </div>
<%- end %>