YaleSTC/shifts

View on GitHub
app/views/tasks/_report_tasks.html.erb

Summary

Maintainability
Test Coverage
<% all_tasks = false if local_assigns[:all_tasks].nil? %> <!-- creates default value for all_tasks
 -->

<% unless @tasks.empty? %>
  <% task_kinds = @tasks.collect{|t| t.kind}.uniq %>
  <% task_kinds.each do |task_kind| %>
    <div class="task_category"><%= task_kind %></div>
    <% these_tasks = @tasks.select{|t| t.kind == task_kind}.sort_by{|t| t.name}.sort_by{|t| t.time_of_day}%>
    <% these_tasks.each do |task| %>
      <div class="tasklist">
        <% if task.done %>
          <div class="task_entry">
            <%= "#{task.name}" %>
            <span class="task_description"> <%= task.time_of_day.strftime("%l:%M%p") %> - <%=task.description%></span>
          </div>

        <% elsif task.missed %>
          <div class="task_entry">
            <% if all_tasks %>
              <%= link_to "#{task.name} - Needs Doing ASAP!", make_entry_task_path(task, all_tasks: true), method: :post, remote: true, class: :task_title %>
            <% else %>
              <%= link_to "#{task.name} - Needs Doing ASAP!", make_entry_task_path(task), method: :post, remote: true, class: :task_title %>
            <% end %>
            <span class="task_description"> <%= task.time_of_day.strftime("%l:%M%p") %> - <%=task.description%></span>
            <%if task.link%>
              <a href=<%=task.link%>>[link]</a>
            <%end%>
          </div>

        <% else %>
          <div class="task_entry">
            <% if all_tasks %>
              <%= link_to (task.needs_doing ? "#{task.name} - Needs Doing!" : "#{task.name}"), make_entry_task_path(task, all_tasks: true), method: :post, remote: true, class: :task_title %>
            <% else %>
              <%= link_to (task.needs_doing ? "#{task.name} - Needs Doing!" : "#{task.name}"), make_entry_task_path(task), method: :post, remote: true , class: :task_title%>
            <% end %>
            <span class="task_description"> <%= task.time_of_day.strftime("%l:%M%p") %> - <%=task.description%></span>
            <%if task.link%>
              <a href=<%=task.link%>>[link]</a>
            <%end%>
          </div>
        <% end %>
      </div>
    <% end %>
  <% end %>
<% else %>
  <em>There are no tasks at this time.</em>
<% end %>