var divzoom = document.getElementById("bookpicszoom");
var nsteps = 20;
var cstep = 0;
var xdt = 0;
var ydt = 0;

var wdt = 0;
var intid = 0;
var sc = {};

var odt = 0;
var zoomedPicId = -1;
var onEffect = false;

var lastpic = -1;

function buildPicsDiv()
{
	var div = document.getElementById("bookpics");
	var html = "<div id=\"zoominfo\" style=\"display:none;position:absolute;z-index:3;opacity:0.8;cursor:pointer\" onclick=\"javascript:ZoomPic(lastpic)\" onmouseout=\"javascript:HideZoomInfo()\"><img src=\"img/zoominfo.gif\" alt=\"zoom\"/></div>";
	if (  pics.length == 0 )
	{
		document.getElementById("pics_space").style.display = "none";
		return;
	}
	for (i=0; i< pics.length ; i++ )
	{
		html += "<img src=\"" + dir + "prev" + pics[i] + "\" alt=\"" + pics[i] + "\" title=\"" + pics[i] +"\" id=\"pic" + i + "\" onclick=\"ZoomPic("+
			i + ")\" onmouseover=\"ShowZoomInfo(" + i +")\"  style=\"position:absolute;vertical-align:bottom;left:"+ (i * 105) + "px;\" \/>";
	}
	div.innerHTML = html;
}

buildPicsDiv();

function RollPicsLeft(e)
{
	var div = document.getElementById("bookpics");
	div.scrollLeft -= 30;
}

function RollPicsRight()
{
	var div = document.getElementById("bookpics");
	div.scrollLeft += 30;
}

function ShowZoomInfo(i)
{
	var div = document.getElementById("zoominfo");
	div.style.left = i*105 + "px";
	div.style.display="block";
	lastpic = i;
}

function HideZoomInfo()
{
	var div = document.getElementById("zoominfo");
	div.style.display="none";
}


function AbsoluteFromRelative( rel, c )
{

	var x= 0; 
	var y= 0 ;
	var el = rel;
	while (el )
	{
		if (el.tagName == "BODY" )
			break;
		x += el.offsetLeft - el.scrollLeft; 
		y += el.offsetTop - el.scrollTop;
//		alert(x + " " + y + " " + el.tagName + " " + el.offsetLeft + "," + el.offsetTop + " " + el.id );
		el = el.offsetParent;	
	}
	c.x = x;
	c.y= y;
}


function MovePic()
{

	divzoom.style.left = ( sc.x + cstep * xdt ) + "px";
	divzoom.style.top = ( sc.y + cstep * ydt ) + "px";

	divzoom.style.opacity = odt * cstep;

	document.getElementById ("zoomedpic").width = 1200 - 1100 * Math.exp ( -cstep*odt );

	cstep ++;
	if (cstep > nsteps )
	{
		window.clearInterval( intid );
		onEffect = false;
	}
}

function ZoomPic(id)
{
	if ( zoomedPicId == id  ) return;
	window.clearInterval( intid );
	divzoom.innerHTML = "Click pentru a inchide<br/><img src=\"" + dir  + pics [id] + "\" width=\"100\" id=\"zoomedpic\"/>";

	var el = document.getElementById("pic" + id);
	
	var c1 = { x:0, y:0 };

	AbsoluteFromRelative(el, c1);
	var c3 = { x:0 , y:0 };
	divzoom.style.opacity = 0;
	divzoom.style.display = "block";
	var ofsParent = divzoom.offsetParent;
	AbsoluteFromRelative(ofsParent, c3);
//	alert( divzoom.offsetParent	 );
	c1.x -= c3.x;  c1.y -= c3.y;

	var c2 = { x:0, y:0 };

	c2.x = window.pageXOffset + document.documentElement.clientWidth/2 - 400;
	c2.y = window.pageYOffset + document.documentElement.clientHeight/10;

	c2.x -= c3.x;  c2.y -= c3.y;

	cstep = 0;

	xdt = (c2.x - c1.x )/ nsteps;
	ydt = (c2.y - c1.y ) / nsteps;
	wdt = (800 - 50 ) / nsteps;
	odt = 1.0 / nsteps;

	sc = c1; 

	divzoom.style.left = c1.x + "px";
	divzoom.style.top = c1.y + "px";
	
	zoomedPicId = id;
	onEffect = true;

//	divzoom.style.display = "block";
	intid = window.setInterval("MovePic()", 50 );	
}

function ZoomOutPic()
{
	divzoom.style.display = "none";
	window.clearInterval( intid );
	cstep=0;
	zoomedPicId= -1;
	onEffect = false;
}


var commnb = 0;
var commstart = 0;
var rowtodel = -1;

function InsertComment( i ,id)
{
	if (rowtodel == i ) return;
	else if (rowtodel > -1 ) CloseComments();
	rowtodel = i;
	var table = document.getElementById("comments_table");
	var row=table.insertRow( i );
	var cell = row.insertCell(0);
	cell.setAttribute("colspan","2");
//	cell.appendChild(comments_frag);
	cell.appendChild( form);
	form.style.display="block";
	var idinput = document.getElementById("in_id");
	idinput.value = id;
}

function DisplayComments()
{
	if (xmlhttp.readyState==4)
	{
		var d = document.getElementById("comments_space");
		var a = xmlhttp.responseText;
		a += "<table border=\"0\" width=\"100%\"><tr><td width=\"50%\" align=\"left\">";
		if ( commstart > 0) a += "<a href=\"javascript:DecreaseComm()\"><< Inapoi 20<\/a>";
		else a += "&nbsp;";
		a += "<\/td><td align=\"right\">";
		if ( ( commstart + 20) < commnb) a += "<a href=\"javascript:IncreaseComm()\"> Inainte 20 >><\/a>";
		else a += "&nbsp;";
		a += "<\/td><\/tr><\/table>";
		d.innerHTML = a;
	}
}

function CloseComments()
{
	var a = document.getElementById("commres");
	a.innerHTML = "";
	a.style.display= "none";
	form.style.display="none";
	form = form.parentNode.removeChild(form);
	var table = document.getElementById("comments_table");
	table.deleteRow(rowtodel);
	rowtodel = -1;
}

function PrepareComments()
{
	if (xmlhttp.readyState==4)
	{
		commnb = xmlhttp.responseText;
		//xmlhttp.onreadystatechange = DisplayComments;
		//xmlhttp.open("GET","comments.php?obj=" + obj , true);
		//xmlhttp.send(null);
		var d = document.getElementById("comments_space");
		var a = d.innerHTML;
		a += "<table border=\"0\" width=\"100%\"><tr><td width=\"50%\" align=\"left>\">";
		if ( commstart > 0) a += "<a href=\"javascript:DecreaseComm()\"><< Inapoi 20<\/a>";
		else a += "&nbsp;";
		a += "<\/td><td align=\"right\">";
		if ( ( commstart + 20) < commnb) a += "<a href=\"javascript:IncreaseComm()\"> Inainte 20 >><\/a>";
		else a += "&nbsp;";
		a += "<\/td><\/tr><\/table>";
		d.innerHTML = a;
	}
}

function IncreaseComm()
{
	if (rowtodel > - 1)
	{
		CloseComments();
		rowtodel = -1;
	}
	xmlhttp.onreadystatechange = DisplayComments;
	commstart += 20;
	xmlhttp.open("GET", "comments.php?obj=" + obj + "&start=" + commstart , true);
	xmlhttp.send(null);
}

function DecreaseComm()
{
	if (rowtodel > - 1)
	{
		CloseComments();
		rowtodel = -1;
	}
	xmlhttp.onreadystatechange = DisplayComments;
	commstart -= 20;
	xmlhttp.open("GET", "comments.php?obj=" + obj + "&start=" + commstart , true);
	xmlhttp.send(null);
}
function ShowCommentRes()
{
	if (xmlhttp.readyState==4)
	{
		var img= document.getElementById("imgcode");
		img.src = "imagecode.php?rand=" + (Math.random() *1000);
		var a = document.getElementById("commres");
		a.innerHTML = xmlhttp.responseText;
		a.style.display= "block";
	}
}

function SendComment()
{
	xmlhttp.onreadystatechange = ShowCommentRes;
	var n= document.getElementById("in_name");
	var l= document.getElementById("in_localitate");
	var c= document.getElementById("in_comentariu");
	var x= document.getElementById("in_code");
	var id= document.getElementById("in_id");
	xmlhttp.open("GET","addcomment.php?obj=" + obj + "&nume=" + n.value + "&localitate=" + l.value + "&comentariu=" + c.value + "&code=" + x.value + "&id=" + id.value,true);
	xmlhttp.send(null);
}


xmlhttp.onreadystatechange = PrepareComments;
xmlhttp.open("GET","comments.php?obj=" + obj + "&act=count", true);
xmlhttp.send(null);

var form = document.getElementById("div_comments");
form = form.parentNode.removeChild(form);


