
document.min_size = 1;
document.max_size = 1.8;
document.step_up = 0.4;
document.step_down = -0.8;
document.interval = 20;
document.coef = -0.5;

function P(spans) {
	this.spans = spans;
	this.state = 0;
}

$(document).ready(function () {
	$(".side p").each(function (k, v) {
		var str1 = $(v).text();
		var str2 = '';
		for (var i = 0, len = str1.length; i < len; i++)
			str2 += '<span sz="' + document.min_size + '">' + str1.substr(i, 1) + '</span>';
		
		$(v).replaceWith('<p>' + str2 + '</p>');
	});

	var idx = -1;
	document.ps = [];
	$(".side p").each(function (k, v) {
		document.ps.push(new P($(v).find("span")));
		idx++;
		$(v).attr("idx", idx);
		$(v).mouseenter(function () {
			var idx = parseInt(this.getAttribute("idx"));
			document.ps[idx].state = 2;
			setTimeout("p_h_mouse(" + idx + ")", document.interval);
		});
		$(v).mouseleave(function () {
			var idx = parseInt(this.getAttribute("idx"));
			document.ps[idx].state = -1;
			setTimeout("p_h_mouse(" + idx + ")", document.interval);
		});
	});
});

function p_h_mouse(idx) {
	var more = false;
	var lead_sz = 0;	
	for (var i = 0, len = document.ps[idx].spans.length; i < len; i++) {
		var sz = parseFloat(document.ps[idx].spans[i].getAttribute("sz"));
		
		if ((document.ps[idx].state >= 1 && sz < document.max_size) || (document.ps[idx].state <= 0 && sz > document.min_size))
			more = true;
		
		if (i == 0) {
			sz += document.ps[idx].state >= 1 ? document.step_up : document.step_down;
			var asz = sz;
			lead_sz = asz;
		}
		else {
			sz = lead_sz + i * document.coef;
			var asz = lead_sz + i * document.coef;
		}

		if (asz < document.min_size)
			asz = document.min_size;
		else if (asz > document.max_size)
			asz = document.max_size;

		document.ps[idx].spans[i].setAttribute("sz", sz);
		document.ps[idx].spans[i].style.fontSize = asz + "em";
	}
	
	if (more)
		setTimeout("p_h_mouse(" + idx + ")", document.interval);
	else if (document.ps[idx].state == 2)
		document.ps[idx].state = 1;
	else if (document.ps[idx].state == -1)
		document.ps[idx].state = 0;
}

document.sides_fadeout_timer = setTimeout("sides_fadeout()", 4000);
document.sides_fadeout_state = 1;
$(window).mousemove(function () {
	document.sides_fadeout_state = 1;
	$("#left_col").stop().animate({opacity: 1}, 500);
	$("#right_col").stop().animate({opacity: 1}, 500);

	clearTimeout(document.sides_fadeout_timer);
	document.sides_fadeout_timer = setTimeout("sides_fadeout()", 4000);
});

function sides_fadeout() {
	document.sides_fadeout_state = 0;
	$("#left_col").stop().animate({opacity: 0.001}, 3000);
	$("#right_col").stop().animate({opacity: 0.001}, 3000);
}

