ILIAS  Release_4_4_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
class.ilLinkCheckerTableGUI.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2010 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 require_once 'Services/Table/classes/class.ilTable2GUI.php';
5 
14 {
23  private $linkChecker = null;
24 
33  private $rowHandler = null;
34 
43  private $refreshButton = array('txt' => null, 'cmd' => null);
44 
53  public function __construct(ilObjectGUI $parentGUIObject, $parentStdCmd)
54  {
55  parent::__construct($parentGUIObject, $parentStdCmd);
56  }
57 
67  {
68  $this->linkChecker = $linkChecker;
69 
70  return $this;
71  }
72 
80  public function getLinkChecker()
81  {
82  return $this->linkChecker;
83  }
84 
94  {
95  $this->rowHandler = $rowHandler;
96 
97  return $this;
98  }
99 
107  public function getRowHandler()
108  {
109  return $this->rowHandler;
110  }
111 
121  public function setRefreshButton($txt, $cmd)
122  {
123  $this->refreshButton['txt'] = $txt;
124  $this->refreshButton['cmd'] = $cmd;
125 
126  return $this;
127  }
128 
136  public function getRefreshButton()
137  {
138  return $this->refreshButton;
139  }
140 
149  public function prepareHTML()
150  {
151  global $ilCtrl, $lng;
152 
153  // #11002
154  $lng->loadLanguageModule("webr");
155 
156  $title = $this->getParentObject()->object->getTitle().' ('.$lng->txt('invalid_links_tbl').')';
157  if($last_access = $this->getLinkChecker()->getLastCheckTimestamp())
158  {
159  $title .= ', '.$lng->txt('last_change').': '.
161  }
162  $this->setTitle($title);
163 
164  $invalidLinks = $this->getLinkChecker()->getInvalidLinksFromDB();
165  if(!count($invalidLinks))
166  {
167  #$this->setNoEntriesText($lng->txt('no_invalid_links'));
168  }
169  else
170  {
171  foreach($invalidLinks as $key => $invalidLink)
172  {
173  $invalidLinks[$key] = $this->getRowHandler()->formatInvalidLinkArray($invalidLink);
174  }
175  }
176 
177  $this->addColumn($lng->txt('title'), 'title', '20%');
178  $this->addColumn($lng->txt('url'), 'url', '80%');
179  $this->addColumn('', '', '10%');
180  $this->setLimit(32000);
181  $this->setEnableHeader(true);
182  $this->setData($invalidLinks);
183 
184  $this->setFormAction($ilCtrl->getFormAction($this->getParentObject(), $this->getParentCmd()));
185  $this->setRowTemplate('tpl.link_checker_table_row.html', 'Services/LinkChecker');
186  $this->setEnableTitle(true);
187  $this->setEnableNumInfo(false);
188 
189  $refreshButton = $this->getRefreshButton();
190  $this->addCommandButton($refreshButton['cmd'], $refreshButton['txt']);
191 
192  return $this;
193  }
194 }
195 ?>