b34f9c31f9
Conflicts: js/id_colors.js
58 lines
1.2 KiB
JavaScript
58 lines
1.2 KiB
JavaScript
if (active_page == 'thread' || active_page == 'index') {
|
|
$(document).ready(function(){
|
|
$.hash = function(str) {
|
|
var i, j, msg = 0;
|
|
|
|
for (i = 0, j = str.length; i < j; ++i) {
|
|
msg = ((msg << 5) - msg) + str.charCodeAt(i);
|
|
}
|
|
|
|
return msg;
|
|
};
|
|
|
|
function stringToRGB(str){
|
|
var rgb, hash;
|
|
|
|
rgb = [];
|
|
hash = $.hash(str);
|
|
|
|
rgb[0] = (hash >> 24) & 0xFF;
|
|
rgb[1] = (hash >> 16) & 0xFF;
|
|
rgb[2] = (hash >> 8) & 0xFF;
|
|
|
|
return rgb;
|
|
}
|
|
|
|
function colorPostId(el) {
|
|
var rgb = IDToRGB($(el).text());
|
|
var ft = "#fff";
|
|
|
|
if ((rgb[0]*0.299 + rgb[1]*0.587 + rgb[2]*0.114) > 125)
|
|
ft = "#000";
|
|
|
|
$(el).css({
|
|
"background-color": "rgb("+rgb[0]+", "+rgb[1]+", "+rgb[2]+")",
|
|
"padding": "0px 5px",
|
|
"border-radius": "8px",
|
|
"color": ft
|
|
});
|
|
|
|
$(el).mouseover(function() {
|
|
$(this).css('color', '#800000'); // how about a CSS :hover rule instead?
|
|
}).mouseout(function() {
|
|
$(this).css('color', ft);
|
|
});
|
|
}
|
|
|
|
$(".poster_id").each(function(k, v){
|
|
colorPostId(v);
|
|
});
|
|
|
|
$(document).on('new_post', function(e, post) {
|
|
$(post).find('.poster_id').each(function(k, v) {
|
|
colorPostId(v);
|
|
});
|
|
});
|
|
});
|
|
}
|