X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=includes%2Factions%2FCreditsAction.php;h=d0bc22cb5dede6ec5d3168f8e9afdcbb6c88a102;hb=6c7509862659e311e545ab04937d24a8af4a5a97;hp=466c5a74924c0a1c7636e7f6f12158ae60572ae7;hpb=1679309cb50f0a835afd24b846a367408c3c91c7;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/actions/CreditsAction.php b/includes/actions/CreditsAction.php index 466c5a7492..d0bc22cb5d 100644 --- a/includes/actions/CreditsAction.php +++ b/includes/actions/CreditsAction.php @@ -29,30 +29,32 @@ class CreditsAction extends FormlessAction { return 'credits'; } - public function getRestriction() { - return null; + protected function getDescription() { + return $this->msg( 'creditspage' )->escaped(); } /** * This is largely cadged from PageHistory::history + * + * @return String HTML */ public function onView() { wfProfileIn( __METHOD__ ); if ( $this->page->getID() == 0 ) { - $s = wfMsg( 'nocredits' ); + $s = $this->msg( 'nocredits' )->parse(); } else { $s = $this->getCredits( -1 ); } wfProfileOut( __METHOD__ ); - return $s; + return Html::rawElement( 'div', array( 'id' => 'mw-credits' ), $s ); } /** - * Get a list of contributors of $article - * @param $article Article object + * Get a list of contributors + * * @param $cnt Int: maximum list of contributors to show * @param $showIfMax Bool: whether to contributors if there more than $cnt * @return String: html @@ -61,8 +63,8 @@ class CreditsAction extends FormlessAction { wfProfileIn( __METHOD__ ); $s = ''; - if ( isset( $cnt ) && $cnt != 0 ) { - $s = self::getAuthor( $this->page ); + if ( $cnt != 0 ) { + $s = $this->getAuthor( $this->page ); if ( $cnt > 1 || $cnt < 0 ) { $s .= ' ' . $this->getContributors( $cnt - 1, $showIfMax ); } @@ -75,32 +77,32 @@ class CreditsAction extends FormlessAction { /** * Get the last author with the last modification time * @param $article Article object + * @return String HTML */ - protected static function getAuthor( Article $article ) { - global $wgLang; - - $user = User::newFromId( $article->getUser() ); + protected function getAuthor( Page $article ) { + $user = User::newFromName( $article->getUserText(), false ); $timestamp = $article->getTimestamp(); if ( $timestamp ) { - $d = $wgLang->date( $article->getTimestamp(), true ); - $t = $wgLang->time( $article->getTimestamp(), true ); + $lang = $this->getLanguage(); + $d = $lang->date( $article->getTimestamp(), true ); + $t = $lang->time( $article->getTimestamp(), true ); } else { $d = ''; $t = ''; } - return wfMessage( 'lastmodifiedatby', $d, $t )->rawParams( self::userLink( $user ) )->params( $user->getName() )->escaped(); + return $this->msg( 'lastmodifiedatby', $d, $t )->rawParams( + $this->userLink( $user ) )->params( $user->getName() )->escaped(); } /** * Get a list of contributors of $article - * @param $article Article object * @param $cnt Int: maximum list of contributors to show * @param $showIfMax Bool: whether to contributors if there more than $cnt * @return String: html */ protected function getContributors( $cnt, $showIfMax ) { - global $wgLang, $wgHiddenPrefs; + global $wgHiddenPrefs; $contributors = $this->page->getContributors(); @@ -110,7 +112,8 @@ class CreditsAction extends FormlessAction { if ( $cnt > 0 && $contributors->count() > $cnt ) { $others_link = $this->othersLink(); if ( !$showIfMax ) - return wfMessage( 'othercontribs' )->rawParams( $others_link )->params( $contributors->count() )->escaped(); + return $this->msg( 'othercontribs' )->rawParams( + $others_link )->params( $contributors->count() )->escaped(); } $real_names = array(); @@ -121,14 +124,14 @@ class CreditsAction extends FormlessAction { foreach ( $contributors as $user ) { $cnt--; if ( $user->isLoggedIn() ) { - $link = self::link( $user ); + $link = $this->link( $user ); if ( !in_array( 'realname', $wgHiddenPrefs ) && $user->getRealName() ) { $real_names[] = $link; } else { $user_names[] = $link; } } else { - $anon_ips[] = self::link( $user ); + $anon_ips[] = $this->link( $user ); } if ( $cnt == 0 ) { @@ -136,23 +139,25 @@ class CreditsAction extends FormlessAction { } } + $lang = $this->getLanguage(); + if ( count( $real_names ) ) { - $real = $wgLang->listToText( $real_names ); + $real = $lang->listToText( $real_names ); } else { $real = false; } # "ThisSite user(s) A, B and C" if ( count( $user_names ) ) { - $user = wfMessage( 'siteusers' )->rawParams( $wgLang->listToText( $user_names ) )->params( + $user = $this->msg( 'siteusers' )->rawParams( $lang->listToText( $user_names ) )->params( count( $user_names ) )->escaped(); } else { $user = false; } if ( count( $anon_ips ) ) { - $anon = wfMessage( 'anonusers' )->rawParams( $wgLang->listToText( $anon_ips ) )->params( - $anon_ips )->escaped(); + $anon = $this->msg( 'anonusers' )->rawParams( $lang->listToText( $anon_ips ) )->params( + count( $anon_ips ) )->escaped(); } else { $anon = false; } @@ -168,8 +173,8 @@ class CreditsAction extends FormlessAction { $count = count( $fulllist ); # "Based on work by ..." return $count - ? wfMessage( 'othercontribs' )->rawParams( - $wgLang->listToText( $fulllist ) )->params( $count )->escaped() + ? $this->msg( 'othercontribs' )->rawParams( + $lang->listToText( $fulllist ) )->params( $count )->escaped() : ''; } @@ -178,7 +183,7 @@ class CreditsAction extends FormlessAction { * @param $user User object * @return String: html */ - protected static function link( User $user ) { + protected function link( User $user ) { global $wgHiddenPrefs; if ( !in_array( 'realname', $wgHiddenPrefs ) && !$user->isAnon() ) { $real = $user->getRealName(); @@ -198,32 +203,30 @@ class CreditsAction extends FormlessAction { * @param $user User object * @return String: html */ - protected static function userLink( User $user ) { - $link = self::link( $user ); + protected function userLink( User $user ) { + $link = $this->link( $user ); if ( $user->isAnon() ) { - return wfMsgExt( 'anonuser', array( 'parseinline', 'replaceafter' ), $link ); + return $this->msg( 'anonuser' )->rawParams( $link )->parse(); } else { global $wgHiddenPrefs; if ( !in_array( 'realname', $wgHiddenPrefs ) && $user->getRealName() ) { return $link; } else { - return wfMessage( 'siteuser' )->rawParams( $link )->params( $user->getName() )->escaped(); + return $this->msg( 'siteuser' )->rawParams( $link )->params( $user->getName() )->escaped(); } } } /** * Get a link to action=credits of $article page - * @param $article Article object - * @return String: html + * @return String: HTML link */ protected function othersLink() { - return Linker::link( + return Linker::linkKnown( $this->getTitle(), - wfMsgHtml( 'others' ), + $this->msg( 'others' )->escaped(), array(), - array( 'action' => 'credits' ), - array( 'known' ) + array( 'action' => 'credits' ) ); } }