Commit | Line | Data |
---|---|---|
11ade432 AE |
1 | <?php |
2 | namespace wcf\acp\page; | |
11ade432 | 3 | use wcf\page\SortablePage; |
ec1b1daf TB |
4 | use wcf\system\menu\acp\ACPMenu; |
5 | use wcf\system\package\PackageDependencyHandler; | |
11ade432 AE |
6 | |
7 | /** | |
a987a4ac | 8 | * Shows cronjob log information. |
11ade432 AE |
9 | * |
10 | * @author Marcel Werk | |
11 | * @copyright 2001-2011 WoltLab GmbH | |
12 | * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php> | |
13 | * @package com.woltlab.wcf | |
14 | * @subpackage acp.page | |
15 | * @category Community Framework | |
16 | */ | |
17 | class CronjobLogListPage extends SortablePage { | |
11ade432 AE |
18 | /** |
19 | * @see wcf\page\AbstractPage::$neededPermissions | |
20 | */ | |
a987a4ac | 21 | public $neededPermissions = array('admin.system.cronjob.canEditCronjob'); |
11ade432 AE |
22 | |
23 | /** | |
24 | * @see wcf\page\MultipleLinkPage::$itemsPerPage | |
25 | */ | |
26 | public $itemsPerPage = 100; | |
27 | ||
28 | /** | |
29 | * @see wcf\page\SortablePage::$defaultSortField | |
30 | */ | |
31 | public $defaultSortField = 'execTime'; | |
32 | ||
33 | /** | |
34 | * @see wcf\page\SortablePage::$defaultSortOrder | |
35 | */ | |
36 | public $defaultSortOrder = 'DESC'; | |
e34164d2 MS |
37 | |
38 | /** | |
39 | * @see wcf\page\SortablePage::$validSortFields | |
40 | */ | |
c4c3440e | 41 | public $validSortFields = array('cronjobID', 'className', 'description', 'execTime', 'success'); |
11ade432 AE |
42 | |
43 | /** | |
44 | * @see wcf\page\MultipleLinkPage::$objectListClassName | |
45 | */ | |
46 | public $objectListClassName = 'wcf\data\cronjob\log\CronjobLogList'; | |
47 | ||
48 | /** | |
49 | * @see wcf\page\MultipleLinkPage::initObjectList() | |
50 | */ | |
51 | protected function initObjectList() { | |
52 | parent::initObjectList(); | |
53 | ||
54 | $this->objectList->sqlSelects = "cronjob.*"; | |
55 | $this->objectList->sqlJoins = "LEFT JOIN wcf".WCF_N."_cronjob cronjob ON (cronjob.cronjobID = cronjob_log.cronjobID)"; | |
6eb12140 | 56 | $this->objectList->getConditionBuilder()->add("cronjob_log.cronjobID IN (SELECT cronjobID FROM wcf".WCF_N."_cronjob WHERE packageID IN (?))", array(PackageDependencyHandler::getInstance()->getDependencies())); |
11ade432 AE |
57 | } |
58 | ||
59 | /** | |
60 | * @see wcf\page\MultipleLinkPage::readObjects() | |
61 | */ | |
62 | protected function readObjects() { | |
c4c3440e | 63 | $this->sqlOrderBy = (($this->sortField == 'className' || $this->sortField == 'description') ? 'cronjob.' : 'cronjob_log.').$this->sortField." ".$this->sortOrder; |
11ade432 AE |
64 | |
65 | parent::readObjects(); | |
66 | } | |
67 | ||
11ade432 | 68 | /** |
b522d4f1 | 69 | * @see wcf\page\IPage::show() |
11ade432 AE |
70 | */ |
71 | public function show() { | |
72 | // set active menu item. | |
e89c399a | 73 | ACPMenu::getInstance()->setActiveMenuItem('wcf.acp.menu.link.log.cronjob'); |
11ade432 AE |
74 | |
75 | parent::show(); | |
76 | } | |
77 | } |