//////////////////////////////////////////////////
//ertdfgcvb - roll
//2010
//////////////////////////////////////////////////
document.addEventListener("DOMContentLoaded", initRollers, false);
var rollers = new Array();

// ////////////////////////////////////////////////
function initRollers() {
	rollers = getElementsByClassName("post-hover");
	for (var i=0; i<rollers.length; i++){
		/*
		var roller = document.createElement("div");
		roller.style.position = "relative";
		roller.style.zIndex = "2";
		roller.style.width = "100%";
		roller.style.height = "100%";
		roller.style.backgroundColor = colorA_light;
		r[i].insertBefore(roller, r[i].firstChild);
		*/
		
		rollers[i].col = {r:255, g:255, b:255};
		rollers.animate = false;
		
		//FUNCS
		rollers[i].update = function(){
			var c = this.col;
			this.style.backgroundColor = "rgb(" + c.r + "," + c.g + "," + c.b + ")";
		}
		
		rollers[i].fade = function(){
			var c = this.col;
			c.r = Math.min(255, c.r + 1);
			c.g = Math.min(255, c.g + 1);
			c.b = Math.min(255, c.b + 1);
			if (c.r == 0 && c.g == 0 && c.b == 0) {
				this.animate = false;
			}
		}
		

		//ROLL
		rollers[i].addEventListener('mouseover',function () {
			this.animate = false;
			this.col = randomColor();
			this.update();
		},false);

		//ROLL-OUT
		rollers[i].addEventListener('mouseout',function () {
			this.animate = true;
		},false);
		
		//CLICK
		rollers[i].addEventListener('click',function () {
			var url = this.getElementsByTagName('a')[0];  
			document.location.href = url.href;
		},false);
		
	}
	
	var anim = setInterval(animate, 1000 / 25);
	
}
//////////////////////////////////////////////////
function randomColor(){
	
	var m = 32;
	var red   =  240;//Math.floor(5 + Math.random() * 3) * m;
	var green =  240;//Math.floor(4 + Math.random() * 4) * m;
	var blue  =  255;//Math.floor(4 + Math.random() * 4) * m;
	
	var col = {r:red, g:green, b:blue};
	return col;
}
//////////////////////////////////////////////////
function animate(){
	for (var i=0; i<rollers.length; i++){
		if (rollers[i].animate) {
			rollers[i].fade();
			rollers[i].update();
		}
	}
}

//////////////////////////////////////////////////
function getElementsByClassName(classname, node) {
	if (!node) {
		node = document.getElementsByTagName('body')[0];
	}
	var a = [], re = new RegExp('\\b' + classname + '\\b');
	els = node.getElementsByTagName('*');
	for ( var i = 0, j = els.length; i < j; i++) {
		if (re.test(els[i].className)) {
			a.push(els[i]);
		}
	}
	return a;
}