Content deleted Content added
adding ability to place indicators before links (instead of just after) |
performance boosts |
||
Line 13:
this.mw = mw;
this.window = window;
this.linksChecked = new Set([]);
}
async execute() {
//console.time("uri");
const defaultRoleInfoLookup = {
wmf: ['🌐', 'Wikimedia Foundation (WMF)'],
Line 42 ⟶ 43:
}
await this.getUsernames();
this.addCSS('user-role-indicator', 'font-size: smaller; display: inline; background: #b7b9ff55; padding: 0.1em; border-radius: 5px;')
Line 52 ⟶ 53:
const $links = this.$( '#article a, #bodyContent a, #mw_contentholder a' );
//
$links.each( ( index, element ) => {
this.$link = this.$( element );
if(this.linksChecked.has(element)){
return;
}
this.linksChecked.add(element);
if ( !this.linksToAUser() ) {
return;
Line 66 ⟶ 73:
this.addRoleInfoIfNeeded();
} );
//
//console.timeEnd("uri");
//console.log("-------");
}
Line 106 ⟶ 116:
async getUsernames() {
if(this.wmf){
return;
}
const dataString = await this.getWikitextFromCache( 'User:NovemBot/userlist.js' );
const dataJSON = JSON.parse( dataString );
Line 308 ⟶ 323:
}
}
var userRoleIndicator = new UserRoleIndicator( $, mw, window )
// Fire after wiki content is added to the DOM, such as when first loading a page, or when a gadget such as the XTools gadget loads.
mw.hook( 'wikipage.content' ).add( async () => {
await mw.loader.using( [ 'mediawiki.util', 'mediawiki.Uri', 'mediawiki.Title' ], async () => {
await
} );
} );
Line 319 ⟶ 336:
mw.hook( 'postEdit' ).add( async () => {
await mw.loader.using( [ 'mediawiki.util', 'mediawiki.Uri', 'mediawiki.Title' ], async () => {
await
} );
} );
|