PageRenderTime 52ms CodeModel.GetById 17ms RepoModel.GetById 1ms app.codeStats 0ms

/application/views/task/task_list.php

https://github.com/fb83/Project-Pier
PHP | 170 lines | 170 code | 0 blank | 0 comment | 48 complexity | 13bab9d43588f3111815335c1981cd62 MD5 | raw file
Possible License(s): AGPL-1.0, GPL-2.0, AGPL-3.0, LGPL-2.1, GPL-3.0
  1. <?php
  2. add_stylesheet_to_page('project/task_list.css');
  3. $task_list_options = array();
  4. if ($task_list->canEdit(logged_user())) {
  5. $task_list_options[] = '<a href="' . $task_list->getEditUrl() . '">' . lang('edit') . '</a>';
  6. } // if
  7. if (ProjectTaskList::canAdd(logged_user(), active_project())) {
  8. $task_list_options[] = '<a href="' . $task_list->getCopyUrl() . '">' . lang('copy') . '</a>';
  9. $task_list_options[] = '<a href="' . $task_list->getMoveUrl() . '">' . lang('move') . '</a>';
  10. } // if
  11. if ($task_list->canDelete(logged_user())) {
  12. $task_list_options[] = '<a href="' . $task_list->getDeleteUrl() . '">' . lang('delete') . '</a>';
  13. } // if
  14. if ($task_list->canAddTask(logged_user())) {
  15. $task_list_options[] = '<a href="' . $task_list->getAddTaskUrl() . '">' . lang('add task') . '</a>';
  16. } // if
  17. if ($task_list->canReorderTasks(logged_user())) {
  18. $task_list_options[] = '<a href="' . $task_list->getReorderTasksUrl($on_list_page) . '">' . lang('reorder tasks') . '</a>';
  19. } // if
  20. if ($cc = $task_list->countComments()) {
  21. $task_list_options[] = '<span><a href="'. $task_list->getViewUrl() .'#objectComments">'. lang('comments') .'('. $cc .')</a></span>';
  22. }
  23. $task_list_options[] = '<span><a href="'. $task_list->getDownloadUrl() .'">'. lang('download') . '</a></span>';
  24. $task_list_options[] = '<span><a href="'. $task_list->getDownloadUrl('pdf') .'">'. lang('pdf') . '</a></span>';
  25. ?>
  26. <div class="taskList">
  27. <div class="block" id="taskList<?php echo $task_list->getId() ?>">
  28. <div class="header"><a href="<?php echo $task_list->getViewUrl() ?>"><?php echo clean($task_list->getName()) ?></a>
  29. <?php if ($task_list->isPrivate()) { ?>
  30. <div class="private" title="<?php echo lang('private task list') ?>"><span><?php echo lang('private task list') ?></span></div>
  31. <?php } // if ?>
  32. <?php $this->includeTemplate(get_template_path('view_progressbar', 'task')); ?>
  33. </div>
  34. <div class="content">
  35. <?php if (!is_null($task_list->getDueDate())) { ?>
  36. <?php if ($task_list->getDueDate()->getYear() > DateTimeValueLib::now()->getYear()) { ?>
  37. <div class="dueDate"><span><?php echo lang('due date') ?>:</span> <?php echo format_date($task_list->getDueDate(), null, 0) ?></div>
  38. <?php } else { ?>
  39. <div class="dueDate"><span><?php echo lang('due date') ?>:</span> <?php echo format_descriptive_date($task_list->getDueDate(), 0) ?></div>
  40. <?php } // if ?>
  41. <?php } // if ?>
  42. <?php if ($task_list->getScore()>0) { ?>
  43. <div class="score"><span><?php echo lang('score') ?>:</span> <?php echo $task_list->getScore() ?></div>
  44. <?php } // if ?>
  45. <?php if ($task_list->getDescription()) { ?>
  46. <div class="desc"><?php echo (do_textile($task_list->getDescription())) ?></div>
  47. <?php } // if ?>
  48. <?php if (plugin_active('tags')) { ?>
  49. <div class="tags"><span><?php echo lang('tags') ?>:</span> <?php echo project_object_tags($task_list, $task_list->getProject()) ?></div>
  50. <?php } ?>
  51. <?php if (count($task_list_options)) { ?>
  52. <div class="options"><?php echo implode(' | ', $task_list_options) ?></div>
  53. <?php } // if ?>
  54. <?php if (is_array($task_list->getOpenTasks())) { ?>
  55. <?php $task_list_ln = 0; ?>
  56. <div class="openTasks">
  57. <table class="blank">
  58. <?php foreach ($task_list->getOpenTasks() as $task) { ?>
  59. <?php $task_list_ln++; ?>
  60. <tr class="<?php echo (($task_list_ln % 2) == 0 ? 'even' : 'odd'); ?>">
  61. <!-- Task text and options -->
  62. <td class="taskText">
  63. <?php echo (do_textile('[' .$task->getId() . '] ' . $task->getText())) ?>
  64. <?php if (!is_null($task->getStartDate())) { ?>
  65. <?php if ($task->getStartDate()->getYear() > DateTimeValueLib::now()->getYear()) { ?>
  66. <div class="startDate"><span><?php echo lang('start date') ?>:</span> <?php echo format_date($task->getStartDate(), null, 0) ?></div>
  67. <?php } else { ?>
  68. <div class="startDate"><span><?php echo lang('start date') ?>:</span> <?php echo format_descriptive_date($task->getStartDate(), 0) ?></div>
  69. <?php } // if ?>
  70. <?php } // if ?>
  71. <?php if (!is_null($task->getDueDate())) { ?>
  72. <?php if ($task->getDueDate()->getYear() > DateTimeValueLib::now()->getYear()) { ?>
  73. <div class="dueDate"><span><?php echo lang('due date') ?>:</span> <?php echo format_date($task->getDueDate(), null, 0) ?></div>
  74. <?php } else { ?>
  75. <div class="dueDate"><span><?php echo lang('due date') ?>:</span> <?php echo format_descriptive_date($task->getDueDate(), 0) ?></div>
  76. <?php } // if ?>
  77. <?php } // if ?>
  78. <?php
  79. $task_options = array();
  80. if ($task->getAssignedTo()) {
  81. $task_options[] = '<span class="assignedTo">' . clean($task->getAssignedTo()->getObjectName()) . '</span>';
  82. } // if
  83. if ($task->canEdit(logged_user())) {
  84. $task_options[] = '<a href="' . $task->getEditUrl() . '">' . lang('edit') . '</a>';
  85. } // if
  86. if ($task->canDelete(logged_user())) {
  87. $task_options[] = '<a href="' . $task->getDeleteUrl() . '">' . lang('delete') . '</a>';
  88. } // if
  89. if ($task->canView(logged_user())) {
  90. $task_options[] = '<a href="' . $task->getViewUrl($on_list_page) . '">' . lang('view') . '</a>';
  91. } // if
  92. if ($cc = $task->countComments()) {
  93. $task_options[] = '<a href="' . $task->getViewUrl() .'#objectComments">'. lang('comments') .'('. $cc .')</a>';
  94. }
  95. if ($task->canChangeStatus(logged_user())) {
  96. if ($task->isOpen()) {
  97. $task_options[] = '<a href="' . $task->getCompleteUrl() . '">' . lang('mark task as completed') . '</a>';
  98. } else {
  99. $task_options[] = '<span>' . lang('open task') . '</span>';
  100. } // if
  101. } // if
  102. ?>
  103. <?php if (count($task_list_options)) { ?>
  104. <div class="options"><?php echo implode(' | ', $task_options) ?></div>
  105. <?php } // if ?>
  106. </td>
  107. </tr>
  108. <?php } // foreach ?>
  109. </table>
  110. </div>
  111. <?php } else { ?>
  112. <?php //echo lang('no open task in task list') ?>
  113. <?php } // if ?>
  114. <?php if (is_array($task_list->getCompletedTasks())) { ?>
  115. <div class="completedTasks expand-container-completed">
  116. <?php if ($on_list_page) { ?>
  117. <?php echo lang('completed tasks') ?>:
  118. <?php } else { ?>
  119. <?php echo lang('recently completed tasks') ?>:
  120. <?php } // if ?>
  121. <table class="blank expand-block-completed">
  122. <?php $counter = 0; ?>
  123. <?php foreach ($task_list->getCompletedTasks() as $task) { ?>
  124. <?php $counter++; ?>
  125. <?php if ($on_list_page || ($counter <= 5)) { ?>
  126. <tr>
  127. <td class="taskText"><?php echo (do_textile('[' .$task->getId() . '] ' . $task->getText())) ?>
  128. <?php
  129. $task_options = array();
  130. if ($task->getCompletedBy()) {
  131. $task_options[] = '<span class="taskCompletedOnBy">' . lang('completed on by', format_date($task->getCompletedOn()), $task->getCompletedBy()->getCardUrl(), clean($task->getCompletedBy()->getDisplayName())) . '</span>';
  132. } else {
  133. $task_options[] = '<span class="taskCompletedOnBy">' . lang('completed on', format_date($task->getCompletedOn())) . '</span>';
  134. } //if
  135. if ($task->canEdit(logged_user())) {
  136. $task_options[] = '<a href="' . $task->getEditUrl() . '">' . lang('edit') . '</a>';
  137. } // if
  138. if ($task->canDelete(logged_user())) {
  139. $task_options[] = '<a href="' . $task->getDeleteUrl() . '">' . lang('delete') . '</a>';
  140. } // if
  141. if ($task->canView(logged_user())) {
  142. $task_options[] = '<a href="' . $task->getViewUrl($on_list_page) . '">' . lang('view') . '</a>';
  143. } // if
  144. if ($cc = $task->countComments()) {
  145. $task_options[] = '<a href="' . $task->getViewUrl() .'#objectComments">'. lang('comments') .'('. $cc .')</a>';
  146. }
  147. if ($task->canChangeStatus(logged_user())) {
  148. $task_options[] = '<a href="' . $task->getOpenUrl() . '">' . lang('mark task as open') . '</a>';
  149. } else {
  150. $task_options[] = '<span>' . lang('completed task') . '</span>';
  151. } // if
  152. ?>
  153. <?php if (count($task_list_options)) { ?>
  154. <div class="options"><?php echo implode(' | ', $task_options) ?></div>
  155. <?php } // if ?>
  156. </td>
  157. </tr>
  158. <?php } // if ?>
  159. <?php } // foreach ?>
  160. <?php if (!$on_list_page && $counter > 5) { ?>
  161. <tr>
  162. <td colspan="2"><a href="<?php echo $task_list->getViewUrl() ?>"><?php echo lang('view all completed tasks', $counter) ?></a></td>
  163. </tr>
  164. <?php } // if ?>
  165. </table>
  166. </div>
  167. <?php } // if (is_array($task_list->getCompletedTasks())) ?>
  168. </div><?php // div class="taskListExpanded" ?>
  169. </div>
  170. </div>