User:Blaze fire12/chat.js

/* Function to color nicknames of users in the chat, based on their nickname. */ function colorNickNames(el) { var selector = '.username:not([style])' if ($(selector).length) { var unstyleds = $(selector); el&&el.html?unstyleds.push(el):undefined; $(unstyleds).replaceWith(function {	var string = $(this).html.replace(/ ?]*>/i,).replace(/ .{1,4}<\/span>/g, );	var strlen = string.length	var asciistr = 0;	var addnum = 0;	for (i = 0; i < strlen; i++) {		if (string.charAt(i).match(/[a-z]/i)) {			asciistr += string.charCodeAt(i) - 96;		} else if (string.charAt(i).match(/\d/)) {			asciistr += string.charCodeAt(i) - 47;		} else {			asciistr += string.charCodeAt(i);			addnum += string.charCodeAt(i);		}	}	var color = parseInt(asciistr/(26*string.replace(/[^a-zA-Z0-9]/g,'').length+addnum)*16777215).toString(16);	var nickColor = [0,0,0];	nickColor[0] = parseInt(color.charAt(0)+color.charAt(1),16);	nickColor[1] = parseInt(color.charAt(2)+color.charAt(3),16);	nickColor[2] = parseInt(color.charAt(4)+color.charAt(5),16);	nickColor[0] = nickColor[0]>200?nickColor[0]-100:nickColor[0];	nickColor[1] = nickColor[1]>200?nickColor[1]-100:nickColor[1]; nickColor[2] = nickColor[2]>200?nickColor[2]-100:nickColor[2]; nickColor = 'rgb('+nickColor[0]+','+nickColor[1]+','+nickColor[2]+')'; return ''+$(this).html+'' }) } } function pad(n) {//Function to pad the timestamps with zeroes where needed	return (n<10?'0':'') + n; }