Content deleted Content added
PleaseStand (talk | contribs) don't show "54 years 2 months old" for User:!! and others where user_registration is null |
PleaseStand (talk | contribs) add support for temporary accounts Tag: Reverted |
||
Line 39:
'ps-userinfo-missing': 'username not registered',
'ps-userinfo-registration': '$1 old',
'ps-userinfo-tempuser': 'temporary account',
'ps-userinfo-user': '{{GENDER:$1|registered user}}'
} );
/**
* Check whether a username matches a pattern, such as one for the
* usernames of temporary accounts.
* @param {string} userName The username to be checked
* @param {string|string[]} patterns The pattern or list of patterns
* @return {boolean}
*/
function userNameMatchesPattern( userName, patterns ) {
if ( !Array.isArray( patterns ) ) {
patterns = [ patterns ];
}
for ( var i = 0; i < patterns.length; ++i ) {
var pattern = patterns[i];
var pfxLen = pattern.indexOf( '$1' );
if ( pfxLen < 0 ) {
continue;
}
var sfxLen = pattern.length - pfxLen - 2;
if ( userName.slice( 0, pfxLen ) === pattern.slice( 0, pfxLen ) &&
( !sfxLen || userName.slice( -sfxLen ) === pattern.slice( -sfxLen ) )
) {
return true;
}
}
return false;
}
/**
Line 52 ⟶ 80:
list: 'users|usercontribs',
maxage: 300,
meta: 'siteinfo',
siprop: 'autocreatetempuser',
uclimit: 1,
ucprop: 'timestamp',
Line 66 ⟶ 96:
isIPv6: mw.util.isIPv6Address( userName ),
isMissing: 'missing' in user,
isTemp: userNameMatchesPattern( userName, query.autocreatetempuser.matchPattern || [] ),
groups: user.groups || [],
editCount: 'editcount' in user ? user.editcount : null,
Line 101 ⟶ 132:
} else if ( info.isIPv6 ) {
items.push( mw.message( 'ps-userinfo-ipv6' ).escaped() );
} else if ( info.isTemp ) {
items.push( mw.message( 'ps-userinfo-tempuser' ).escaped() );
} else if ( info.isInvalid ) {
items.push( mw.message( 'ps-userinfo-invalid' ).escaped() );
|