app/views/tasks/_tasks.html.haml
- if all_tasks.empty?
%i No outstanding tasks
- else
%table.table.table-hover
%thead
%tr
%th
Task
%th
Status
%th
Entities associated
%th
Change date
%th
Options
%tbody
- all_tasks.each do |task|
%tr{:id => "task-#{task.id}"}
%td
= task.description
%td{:id => "task-#{task.id}-status"}
- if task.status == Task::STATUS[:NEW] || task.task_owner.respond_to?('each')
= task.status
- else
= "#{task.status}("
= link_to( task.task_owner.full_name, show_person_path(task.task_owner))
)
%td
- if not task.user.nil?
%p
User:
=link_to( task.person.full_name, show_person_path(task.person))
- if not task.job_application.nil?
%p
= link_to(task.job_application.job_seeker.full_name, job_seeker_path(task.job_application.job_seeker))
has
= link_to("applied", application_path(task.job_application))
to:
= link_to(task.job_application.job.title, job_path(task.job_application.job))
- if not task.company.nil?
%p
Company:
= link_to(task.company.name, company_registration_path(task.company))
%td
= task.updated_at.strftime('%F')
%td
- if task.status == Task::STATUS[:NEW] and policy(task).assign?
= link_to '#', :title => 'Assign task',
class: 'assign_button',
id: "assign-#{task.id}",
data: { :task_id => task.id,
:toggle => 'modal',
:target => '#assignTaskModal'} do
%i.fa.fa-male.fa-1
- elsif task.status == Task::STATUS[:ASSIGNED] and policy(task).in_progress?
= link_to '#', :title => 'Start working on task',
class: 'wip_button',
id: "wip-#{task.id}",
data: {:url => in_progress_task_path(task)} do
%i.fa.fa-hourglass-start.fa-1
- elsif task.status == Task::STATUS[:WIP] and policy(task).done?
= link_to '#', :title => 'Work complete',
class: 'done_button',
id: "done-#{task.id}",
data: {:url => done_task_path(task)} do
%i.fa.fa-flag-checkered.fa-1
.row.text-center
= will_paginate all_tasks, param_name: 'tasks_page', :params => {:controller => 'tasks', :action => 'tasks', :task_type => task_type}
%script{:type=>"text/javascript"}
$(document).ready( function() {
= "TaskManagerHolder('tasks-#{task_type}', '#{task_type}')"
} );