ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
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  $title .= ', ' . $lng->txt('last_change') . ': ' .
160  }
161  $this->setTitle($title);
162 
163  $invalidLinks = $this->getLinkChecker()->getInvalidLinksFromDB();
164  if (!count($invalidLinks)) {
165  #$this->setNoEntriesText($lng->txt('no_invalid_links'));
166  } else {
167  foreach ($invalidLinks as $key => $invalidLink) {
168  $invalidLinks[$key] = $this->getRowHandler()->formatInvalidLinkArray($invalidLink);
169  }
170  }
171 
172  $this->addColumn($lng->txt('title'), 'title', '20%');
173  $this->addColumn($lng->txt('url'), 'url', '80%');
174  $this->addColumn('', '', '10%');
175  $this->setLimit(32000);
176  $this->setEnableHeader(true);
177  $this->setData($invalidLinks);
178 
179  $this->setFormAction($ilCtrl->getFormAction($this->getParentObject(), $this->getParentCmd()));
180  $this->setRowTemplate('tpl.link_checker_table_row.html', 'Services/LinkChecker');
181  $this->setEnableTitle(true);
182  $this->setEnableNumInfo(false);
183 
184  $refreshButton = $this->getRefreshButton();
185  $this->addCommandButton($refreshButton['cmd'], $refreshButton['txt']);
186 
187  return $this;
188  }
189 }
addCommandButton($a_cmd, $a_text, $a_onclick='', $a_id="", $a_class=null)
Add Command button.
setEnableNumInfo($a_val)
Set enable num info.
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false)
Format a date public.
getRefreshButton()
get refresh button attributes
class for checking external links in page objects Normally used in Cron jobs, but should be extensibl...
const IL_CAL_UNIX
getParentCmd()
Get parent command.
getParentObject()
Get parent object.
setRowHandler(ilLinkCheckerGUIRowHandling $rowHandler)
Set the row handler.
global $ilCtrl
Definition: ilias.php:18
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
class ilLinkCheckerTableGUI
setLinkChecker(ilLinkChecker $linkChecker)
Set the link checker instance.
Class ilTable2GUI.
getRowHandler()
Get the row handler.
Class ilObjectGUI Basic methods of all Output classes.
Date and time handling
interface ilLinkCheckerGUIRowHandling
getLinkChecker()
Gget the link checker instance.
$txt
Definition: error.php:11
setRowTemplate($a_template, $a_template_dir="")
Set row template.
Create styles array
The data for the language used.
setRefreshButton($txt, $cmd)
Set refresh button attributes.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
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.
setEnableHeader($a_enableheader)
Set Enable Header.
setEnableTitle($a_enabletitle)
Set Enable Title.
$key
Definition: croninfo.php:18
setLimit($a_limit=0, $a_default_limit=0)
__construct(ilObjectGUI $parentGUIObject, $parentStdCmd)
Constructor.
prepareHTML()
Call this before using getHTML()