Merge "Special:Newpages feed now shows first revision instead of latest revision"
[lhc/web/wiklou.git] / includes / specials / SpecialEmailuser.php
index c0f1c3d..830b438 100644 (file)
@@ -53,13 +53,14 @@ class SpecialEmailUser extends UnlistedSpecialPage {
        }
 
        protected function getFormFields() {
+               $linkRenderer = $this->getLinkRenderer();
                return [
                        'From' => [
                                'type' => 'info',
                                'raw' => 1,
-                               'default' => Linker::link(
+                               'default' => $linkRenderer->makeLink(
                                        $this->getUser()->getUserPage(),
-                                       htmlspecialchars( $this->getUser()->getName() )
+                                       $this->getUser()->getName()
                                ),
                                'label-message' => 'emailfrom',
                                'id' => 'mw-emailuser-sender',
@@ -67,9 +68,9 @@ class SpecialEmailUser extends UnlistedSpecialPage {
                        'To' => [
                                'type' => 'info',
                                'raw' => 1,
-                               'default' => Linker::link(
+                               'default' => $linkRenderer->makeLink(
                                        $this->mTargetObj->getUserPage(),
-                                       htmlspecialchars( $this->mTargetObj->getName() )
+                                       $this->mTargetObj->getName()
                                ),
                                'label-message' => 'emailto',
                                'id' => 'mw-emailuser-recipient',
@@ -230,14 +231,15 @@ class SpecialEmailUser extends UnlistedSpecialPage {
                        return 'usermaildisabled';
                }
 
-               if ( !$user->isAllowed( 'sendemail' ) ) {
-                       return 'badaccess';
-               }
-
+               // Run this before $user->isAllowed, to show appropriate message to anons (T160309)
                if ( !$user->isEmailConfirmed() ) {
                        return 'mailnologin';
                }
 
+               if ( !$user->isAllowed( 'sendemail' ) ) {
+                       return 'badaccess';
+               }
+
                if ( $user->isBlockedFromEmailuser() ) {
                        wfDebug( "User is blocked from sending e-mail.\n" );
 
@@ -287,7 +289,7 @@ class SpecialEmailUser extends UnlistedSpecialPage {
                                'text',
                                [
                                        'id' => 'emailusertarget',
-                                       'class' => 'mw-autocomplete-user',  // used by mediawiki.userSuggest
+                                       'class' => 'mw-autocomplete-user', // used by mediawiki.userSuggest
                                        'autofocus' => true,
                                        'size' => 30,
                                ]