ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilSCTaskTableGUI.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
5 include_once './Services/Table/classes/class.ilTable2GUI.php';
6 
13 {
14  private $group_id = 0;
15  private $component_task_handler = null;
16 
22  public function __construct($a_group_id, $a_parent_obj, $a_parent_cmd = "")
23  {
24  $this->group_id = $a_group_id;
25  $this->setId('sc_groups');
26 
27  parent::__construct($a_parent_obj, $a_parent_cmd);
28  }
29 
34  public function getGroupId()
35  {
36  return $this->group_id;
37  }
38 
39 
43  public function init()
44  {
45  global $ilCtrl, $lng;
46 
47  $lng->loadLanguageModule('sysc');
48  $this->addColumn($this->lng->txt('title'), 'title', '60%');
49  $this->addColumn($this->lng->txt('last_update'), 'last_update_sort', '20%');
50  $this->addColumn($this->lng->txt('status'), 'status', '10%');
51  $this->addColumn($this->lng->txt('actions'), '', '10%');
52 
53  $this->setTitle($this->lng->txt('sysc_task_overview'));
54 
55  $this->setRowTemplate('tpl.syscheck_tasks_row.html', 'Services/SystemCheck');
56  $this->setFormAction($ilCtrl->getFormAction($this->getParentObject()));
57  }
58 
63  public function fillRow($row)
64  {
65  $this->tpl->setVariable('VAL_TITLE', $row['title']);
66  $this->tpl->setVariable('VAL_DESC', $row['description']);
67 
68  include_once './Services/SystemCheck/classes/class.ilSCUtils.php';
70  switch ($row['status']) {
72  $this->tpl->setVariable('VAL_STATUS_SUCCESS', $text);
73  break;
74 
76  $this->tpl->setCurrentBlock('warning');
77  $this->tpl->setVariable('VAL_STATUS_WARNING', $text);
78  $this->tpl->parseCurrentBlock();
79  break;
80 
81  default:
82  $this->tpl->setVariable('VAL_STATUS_STANDARD', $text);
83  break;
84  }
85 
86  $this->tpl->setVariable('VAL_LAST_UPDATE', $row['last_update']);
87 
88  // Actions
89  include_once './Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php';
91  $list->setSelectionHeaderClass('small');
92  $list->setItemLinkClass('small');
93  $list->setId('sysc_' . $row['id']);
94  $list->setListTitle($this->lng->txt('actions'));
95 
96  include_once './Services/SystemCheck/classes/class.ilSCComponentTaskFactory.php';
97  $task_handler = ilSCComponentTaskFactory::getComponentTask($row['id']);
98 
99  $GLOBALS['ilCtrl']->setParameterByClass(get_class($task_handler), 'task_id', $row['id']);
100  foreach ((array) $task_handler->getActions() as $actions) {
101  $list->addItem(
102  $actions['txt'],
103  '',
104  $GLOBALS['ilCtrl']->getLinkTargetByClass(
105  get_class($task_handler),
106  $actions['command']
107  )
108  );
109  }
110 
111  $this->tpl->setVariable('ACTIONS', $list->getHTML());
112  }
113 
114 
118  public function parse()
119  {
120  $data = array();
121  include_once './Services/SystemCheck/classes/class.ilSCTasks.php';
122  foreach (ilSCTasks::getInstanceByGroupId($this->getGroupId())->getTasks() as $task) {
123  include_once './Services/SystemCheck/classes/class.ilSCComponentTaskFactory.php';
124  $task_handler = ilSCComponentTaskFactory::getComponentTask($task->getId());
125 
126 
127  $item = array();
128  $item['id'] = $task->getId();
129  $item['title'] = $task_handler->getTitle();
130  $item['description'] = $task_handler->getDescription();
131  $item['last_update'] = ilDatePresentation::formatDate($task->getLastUpdate());
132  $item['last_update_sort'] = $task->getLastUpdate()->get(IL_CAL_UNIX);
133  $item['status'] = $task->getStatus();
134 
135  $data[] = $item;
136  }
137 
138  $this->setData($data);
139  }
140 }
getGroupId()
Get group id.
if(isset($_REQUEST['delete'])) $list
Definition: registry.php:41
const STATUS_FAILED
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false)
Format a date public.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
const IL_CAL_UNIX
parse()
Parse system check groups.
setId($a_val)
Set id.
global $ilCtrl
Definition: ilias.php:18
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
Class ilTable2GUI.
$text
Definition: errorreport.php:18
static getInstanceByGroupId($a_group_id)
Get singleton instance.
setRowTemplate($a_template, $a_template_dir="")
Set row template.
Create styles array
The data for the language used.
User interface class for advanced drop-down selection lists.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
__construct($a_group_id, $a_parent_obj, $a_parent_cmd="")
Constructor.
const STATUS_COMPLETED
addColumn( $a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="", $a_tooltip="", $a_tooltip_with_html=false)
Add a column to the header.
static taskStatus2Text($a_status)
Table GUI for system check task overview.