ILIAS  Release_4_2_x_branch Revision 61807
 All Data Structures Namespaces Files Functions Variables Groups Pages
class.ilECSServerTableGUI.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 include_once './Services/Table/classes/class.ilTable2GUI.php';
5 
13 {
19  public function __construct($a_parent_obj, $a_parent_cmd = "")
20  {
21  $this->setId('ecs_server_list');
22  parent::__construct($a_parent_obj, $a_parent_cmd);
23  }
24 
28  public function initTable()
29  {
30  $this->setTitle($this->lng->txt('ecs_available_ecs'));
31  $this->setRowTemplate('tpl.ecs_server_row.html','Services/WebServices/ECS');
32 
33  $this->addColumn($this->lng->txt('ecs_tbl_active'), '','1%');
34  $this->addColumn($this->lng->txt('title'), '','80%');
35  $this->addColumn($this->lng->txt('actions'), '', '19%');
36  }
37 
43  public function fillRow($set)
44  {
45  global $ilCtrl;
46 
47  $ilCtrl->setParameter($this->getParentObject(),'server_id',$set['server_id']);
48  $ilCtrl->setParameterByClass('ilecsmappingsettingsgui','server_id',$set['server_id']);
49 
50  if($set['active'])
51  {
52  $this->tpl->setVariable('IMAGE_OK', ilUtil::getImagePath('icon_ok.gif'));
53  $this->tpl->setVariable('TXT_OK', $this->lng->txt('ecs_activated'));
54  }
55  else
56  {
57  $this->tpl->setVariable('IMAGE_OK', ilUtil::getImagePath('icon_not_ok.gif'));
58  $this->tpl->setVariable('TXT_OK', $this->lng->txt('ecs_inactivated'));
59  }
60 
61  $this->tpl->setVariable('VAL_TITLE', ilECSSetting::getInstanceByServerId($set['server_id'])->getTitle());
62  $this->tpl->setVariable('LINK_EDIT', $ilCtrl->getLinkTarget($this->getParentObject(),'edit'));
63  $this->tpl->setVariable('TXT_SRV_ADDR', $this->lng->txt('ecs_server_addr'));
64 
65  if(ilECSSetting::getInstanceByServerId($set['server_id'])->getServer())
66  {
67  $this->tpl->setVariable('VAL_DESC', ilECSSetting::getInstanceByServerId($set['server_id'])->getServer());
68  }
69  else
70  {
71  $this->tpl->setVariable('VAL_DESC', $this->lng->txt('ecs_not_configured'));
72  }
73 
74  $dt = ilECSSetting::getInstanceByServerId($set['server_id'])->fetchCertificateExpiration();
75  if($dt != NULL)
76  {
77  $this->tpl->setVariable('TXT_CERT_VALID', $this->lng->txt('ecs_cert_valid_until'));
78  $this->tpl->setVariable('VAL_CERT', ilDatePresentation::formatDate($dt));
79  }
80 
81  // Actions
82  include_once './Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php';
83  $list = new ilAdvancedSelectionListGUI();
84  $list->setId('actl_'.$set['server_id']);
85  $list->setListTitle($this->lng->txt('actions'));
86 
87  if(ilECSSetting::getInstanceByServerId($set['server_id'])->isEnabled())
88  {
89  $list->addItem($this->lng->txt('ecs_deactivate'), '', $ilCtrl->getLinkTarget($this->getParentObject(),'deactivate'));
90  }
91  else
92  {
93  $list->addItem($this->lng->txt('ecs_activate'), '', $ilCtrl->getLinkTarget($this->getParentObject(),'activate'));
94  }
95 
96  $list->addItem($this->lng->txt('edit'), '', $ilCtrl->getLinkTarget($this->getParentObject(),'edit'));
97  $list->addItem(
98  $this->lng->txt('ecs_dir_alloc_set'),
99  '',
100  $ilCtrl->getLinkTargetByClass('ilecsmappingsettingsgui','dSettings')
101  );
102  $list->addItem(
103  $this->lng->txt('ecs_crs_alloc_set'),
104  '',
105  $ilCtrl->getLinkTargetByClass('ilecsmappingsettingsgui','cSettings')
106  );
107  $list->addItem($this->lng->txt('copy'), '', $ilCtrl->getLinkTarget($this->getParentObject(),'cp'));
108  $list->addItem($this->lng->txt('delete'), '', $ilCtrl->getLinkTarget($this->getParentObject(),'delete'));
109  $this->tpl->setVariable('ACTIONS',$list->getHTML());
110 
111  $ilCtrl->clearParameters($this->getParentObject());
112  }
113 
118  public function parse(ilECSServerSettings $servers)
119  {
120  $rows = array();
121  foreach($servers->getServers() as $server_id => $server)
122  {
123  $tmp['server_id'] = $server->getServerId();
124  $tmp['active'] = $server->isEnabled();
125 
126  $rows[] = $tmp;
127  }
128  $this->setData($rows);
129  }
130 
131 }
132 ?>