* Add UserGetReservedNames hook to allow extensions to define reserved names without loading messages at setup
* Don't try to notify nonexistent, non-IP users by inserting a username into the user_newtalk.user_ip field. It doesn't work.
&& !($minoredit && $wgUser->isAllowed('nominornewtalk') ) ) {
if (wfRunHooks('ArticleEditUpdateNewTalk', array(&$this)) ) {
$other = User::newFromName( $shortTitle );
- if( is_null( $other ) && User::isIP( $shortTitle ) ) {
+ if( User::isIP( $shortTitle ) ) {
// An anonymous user
- $other = new User();
- $other->setName( $shortTitle );
- }
- if( $other ) {
$other->setNewtalk( true );
+ } elseif( $other->isLoggedIn() ) {
+ $other->setNewtalk( true );
+ } else {
+ wfDebug( __METHOD__. ": don't need to notify a nonexistent user\n" );
}
}
}
return false;
}
+ static $reservedUsernames = false;
+ if ( !$reservedUsernames ) {
+ $reservedUsernames = $wgReservedUsernames;
+ wfRunHooks( 'UserGetReservedNames', array( &$reservedUsernames ) );
+ }
+
// Certain names may be reserved for batch processes.
- foreach ( $wgReservedUsernames as $reserved ) {
+ foreach ( $reservedUsernames as $reserved ) {
if ( substr( $reserved, 0, 4 ) == 'msg:' ) {
$reserved = wfMsgForContent( substr( $reserved, 4 ) );
}