[ Index ] |
PHP Cross Reference of MediaWiki-1.24.0 |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * This program is free software; you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published by 5 * the Free Software Foundation; either version 2 of the License, or 6 * (at your option) any later version. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License along 14 * with this program; if not, write to the Free Software Foundation, Inc., 15 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 16 * http://www.gnu.org/copyleft/gpl.html 17 * 18 * @file 19 * @ingroup RevisionDelete 20 */ 21 22 /** 23 * Item class for a archive table row 24 */ 25 class RevDelArchiveItem extends RevDelRevisionItem { 26 public function __construct( $list, $row ) { 27 RevDelItem::__construct( $list, $row ); 28 $this->revision = Revision::newFromArchiveRow( $row, 29 array( 'page' => $this->list->title->getArticleID() ) ); 30 } 31 32 public function getIdField() { 33 return 'ar_timestamp'; 34 } 35 36 public function getTimestampField() { 37 return 'ar_timestamp'; 38 } 39 40 public function getAuthorIdField() { 41 return 'ar_user'; 42 } 43 44 public function getAuthorNameField() { 45 return 'ar_user_text'; 46 } 47 48 public function getId() { 49 # Convert DB timestamp to MW timestamp 50 return $this->revision->getTimestamp(); 51 } 52 53 public function setBits( $bits ) { 54 $dbw = wfGetDB( DB_MASTER ); 55 $dbw->update( 'archive', 56 array( 'ar_deleted' => $bits ), 57 array( 58 'ar_namespace' => $this->list->title->getNamespace(), 59 'ar_title' => $this->list->title->getDBkey(), 60 // use timestamp for index 61 'ar_timestamp' => $this->row->ar_timestamp, 62 'ar_rev_id' => $this->row->ar_rev_id, 63 'ar_deleted' => $this->getBits() 64 ), 65 __METHOD__ ); 66 67 return (bool)$dbw->affectedRows(); 68 } 69 70 protected function getRevisionLink() { 71 $date = htmlspecialchars( $this->list->getLanguage()->userTimeAndDate( 72 $this->revision->getTimestamp(), $this->list->getUser() ) ); 73 74 if ( $this->isDeleted() && !$this->canViewContent() ) { 75 return $date; 76 } 77 78 return Linker::link( 79 SpecialPage::getTitleFor( 'Undelete' ), 80 $date, 81 array(), 82 array( 83 'target' => $this->list->title->getPrefixedText(), 84 'timestamp' => $this->revision->getTimestamp() 85 ) 86 ); 87 } 88 89 protected function getDiffLink() { 90 if ( $this->isDeleted() && !$this->canViewContent() ) { 91 return $this->list->msg( 'diff' )->escaped(); 92 } 93 94 return Linker::link( 95 SpecialPage::getTitleFor( 'Undelete' ), 96 $this->list->msg( 'diff' )->escaped(), 97 array(), 98 array( 99 'target' => $this->list->title->getPrefixedText(), 100 'diff' => 'prev', 101 'timestamp' => $this->revision->getTimestamp() 102 ) 103 ); 104 } 105 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 14:03:12 2014 | Cross-referenced by PHPXref 0.7.1 |