var actualPic = 0;
var gpicArray = new Array();
var p=0;





function gpic_pause(numberMillis) {
	var now = new Date();
	var exitTime = now.getTime() + numberMillis;
	while (true) {
		now = new Date();
		if (now.getTime() > exitTime) {
			return;
		}
	}
}


function gpic_hideTag(disp) {
    var hideTags = "OBJECT, SELECT, EMBED";
	var hideTagsArray = new Array();
	hideTagsArray = document.getElementsByTagName("*");
	for (var i=0; i<hideTagsArray.length; i++) {
		if (String(hideTags).indexOf(hideTagsArray[i].tagName) > -1) {
			if (disp == 1) {
				hideTagsArray[i].style.display = "none";
			} else {
				hideTagsArray[i].style.display = "";
			}
		}
	}
}

function gpic_initialize(gpicRel, gpicHref) {
	gpic_hideTag(1);
	imagesPath = "/javascript/gussyPhoto/images/";
	actualStatus = false;
	inDivW = 250;
	inDivH = 250;
	var tagsArray = new Array();
	tagsArray = document.getElementsByTagName("a");
	var pic = -1;
	for (var i=0; i<tagsArray.length; i++) {
		if (tagsArray[i].getAttribute("rel") == gpicRel) {
			pic = pic +1;
			if ((tagsArray[i].getAttribute("href") == gpicHref) && (!actualStatus)) {
				actualPic = pic;
				actualStatus = true;
			}
			gpicArray[pic] = tagsArray[i];
		}
	}

	if (!document.getElementById("gpic_mainDiv")) {
		gpic_background(actualPic);
	} else {
		document.getElementById("gpic_loadingDiv").style.display = "";
		gpic_newPic(actualPic);
	}
}


function gpic_show(e) {
	if (document.all) {
		if (String(event.srcElement.parentNode.getAttribute("rel")).indexOf("gpic[") == -1) return;
		var gpicRel = event.srcElement.parentNode.getAttribute("rel");
		var gpicHref = event.srcElement.parentNode.getAttribute("href");
	} else {
		if (String(e.target.parentNode.getAttribute("rel")).indexOf("gpic[") == -1) return;
		var gpicRel = e.target.parentNode.getAttribute("rel");
		var gpicHref = e.target.parentNode.getAttribute("href");
	}
	gpic_initialize(gpicRel, gpicHref);
	return false;
}


function gpic_background(actualPic) {
	var mainDiv = document.createElement("div");
	mainDiv.setAttribute("id", "gpic_mainDiv");
	document.body.insertBefore(mainDiv, document.body.firstChild);
	var	inDivHTML = "";
			inDivHTML = inDivHTML + "<div id='gpic_inDiv' style='margin-left:-"+gpic_positioningX()+"px; margin-top:-"+gpic_positioningY()+"px;' onMouseOver='document.getElementById(\"gpic_menuDiv\").style.display=\"\";' onMouseOut='document.getElementById(\"gpic_menuDiv\").style.display=\"none\";'>";
			inDivHTML = inDivHTML + "<div id='gpic_picDiv'>";
			inDivHTML = inDivHTML + "<img id='gpic_picImg' border='0' align='absmiddle' style='display:none;'>";
			inDivHTML = inDivHTML + "<div id='gpic_loadingDiv' style='margin-left:-37px;'>";
			inDivHTML = inDivHTML + "<img id='gpic_loadingImg' border='0' align='absmiddle' src='"+imagesPath+"loading.gif' alt='LOADING'>";
			inDivHTML = inDivHTML + "<p><span id='gpic_loadingSpan'>LOADING</span>";
			inDivHTML = inDivHTML + "</div>";
			inDivHTML = inDivHTML + "</div>";
			inDivHTML = inDivHTML + "<div id='gpic_menuDiv' style='margin-left:-90px; margin-top:-20px; display:none;'>";
			inDivHTML = inDivHTML + "<div style='position:relative; width:40px; float:left;'><img id='gpic_backMenu' alt='BACK' border='0' align='left' width='40' height='40'src='"+imagesPath+"leftArrow.png' onMouseOver='this.src=\"" + imagesPath + "leftArrow_ON.png\";' onMouseOut='this.src=\"" + imagesPath + "leftArrow.png\";' onClick='gpic_newPic(parseInt(actualPic-1));'></div>";
			inDivHTML = inDivHTML + "<div style='position:relative; width:100px; float:left;'><img id='gpic_closeMenu' alt='CLOSE' border='0' align='left' width='100' height='40'src='"+imagesPath+"close.png' onMouseOver='this.src=\"" + imagesPath + "close_ON.png\";' onMouseOut='this.src=\"" + imagesPath + "close.png\";' onClick='gpic_hideAll(100);'></div>";
			inDivHTML = inDivHTML + "<div style='position:relative; width:40px; float:left;'><img id='gpic_nextMenu' alt='NEXT' border='0' align='left' width='40' height='40'src='"+imagesPath+"rightArrow.png' onMouseOver='this.src=\"" + imagesPath + "rightArrow_ON.png\";' onMouseOut='this.src=\"" + imagesPath + "rightArrow.png\";' onClick='gpic_newPic(parseInt(actualPic+1));'></div>";
			inDivHTML = inDivHTML + "</div>";
			inDivHTML = inDivHTML + "<div id='gpic_infoDiv' style='display:none;'>";
			inDivHTML = inDivHTML + "</div>";
			inDivHTML = inDivHTML + "</div>";

	document.getElementById("gpic_mainDiv").innerHTML = inDivHTML;
	document.getElementById("gpic_mainDiv").style.display = "";
	gpic_newPic(actualPic);
}


function gpic_positioningX() {
	return String(parseInt(inDivW/2)+10);
}


function gpic_positioningY() {
	return String(parseInt(inDivH/2)+10);
}


function gpic_newPic(p) {
	if (p != null) {
	actualPic = p;
	flag = true;
	newPic = new Image();
	newPic.src = gpicArray[actualPic].getAttribute("href");
	document.getElementById("gpic_loadingDiv").style.display = "";
}

if (!newPic.complete) {
	var tim = setTimeout("gpic_newPic("+null+")", 0);
} else {
	clearTimeout(tim);
	document.getElementById("gpic_backMenu").style.display = "";
	document.getElementById("gpic_nextMenu").style.display = "";
	if (gpicArray.length < 2) {
		document.getElementById("gpic_backMenu").style.display = "none";
		document.getElementById("gpic_nextMenu").style.display = "none";
	} else if (actualPic < 1) {
		document.getElementById("gpic_backMenu").style.display = "none";
	} else if (actualPic >= (gpicArray.length-1)) {
		document.getElementById("gpic_nextMenu").style.display = "none";
	}
	gpic_resize(newPic.width, newPic.height);
}

}


function gpic_resize(w, h) {
	var perc = 100;
	while ((w > document.getElementById("gpic_mainDiv").offsetWidth-100) || (h > document.getElementById("gpic_mainDiv").offsetHeight-100)) {
		perc = perc -1;
		w = parseInt(w/100)*perc;
		h	= parseInt(h/100)*perc;
	}
	document.getElementById("gpic_loadingDiv").style.display = "none";
//	gpic_animateResize2(h, w);


	inDivH = h;
	document.getElementById("gpic_inDiv").style.height = String(inDivH) + "px";
	document.getElementById("gpic_inDiv").style.marginTop = String("-" + gpic_positioningY() + "px");

	inDivW=w;
	document.getElementById("gpic_inDiv").style.width = String(inDivW) + "px";
	document.getElementById("gpic_inDiv").style.marginLeft = String("-" + gpic_positioningX() + "px");

		gpic_assignImg();
		gpic_alpha("gpic_picImg", 6, 0, 100);

}




function gpic_assignImg() {
	document.getElementById("gpic_picImg").src = newPic.src;
	document.getElementById("gpic_picImg").width = inDivW;
	document.getElementById("gpic_picImg").height = inDivH;

	document.getElementById("gpic_picImg").style.display = "";
}


function gpic_alpha(id, step, minOpacity, maxOpacity) {
	if (minOpacity < maxOpacity) {
		var step = step -1;
		var minOpacity = parseInt(maxOpacity/step);
		if (document.all) {
			document.getElementById(id).style.filter = "alpha(opacity="+minOpacity+")";
		} else {
			document.getElementById(id).style.MozOpacity = minOpacity/100;
		}
		gpic_alpha_timeout = setTimeout("gpic_alpha('"+id+"', "+step+", "+minOpacity+", "+maxOpacity+")", 0);
	} else {
		clearTimeout(gpic_alpha_timeout);
		document.getElementById("gpic_infoDiv").style.width = String(document.getElementById("gpic_inDiv").offsetWidth) + "px";
		var picTitle = "no title";
		if (String(gpicArray[actualPic].getAttribute("title")) != "") {
			picTitle = String(gpicArray[actualPic].getAttribute("title"));
		}
		document.getElementById("gpic_infoDiv").innerHTML = "GALLERY: " + String(actualPic+1)+"/"+String(gpicArray.length) + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TITLE: " + picTitle;
		document.getElementById("gpic_infoDiv").style.display = "";
		return;
	}
}


function gpic_hideAll(o) {
	if (o == 100) {
		document.getElementById("gpic_menuDiv").style.display = "none";
	}
	if (o > 1) {
		o = o -33;
		if (document.all) {
			document.getElementById("gpic_inDiv").style.filter = "alpha(opacity="+o+")";
		} else {
			document.getElementById("gpic_inDiv").style.MozOpacity = o/100;
		}
		gpic_hideAll_timeout = setTimeout("gpic_hideAll("+o+")", 0);
	} else {
		clearTimeout(gpic_hideAll_timeout);
		document.getElementById("gpic_mainDiv").style.display = "none";
	  	document.body.removeChild(document.getElementById("gpic_mainDiv"));
	  	gpic_hideTag(0);
	}
}

document.onclick = gpic_show;