// gallery2wiki_resize.js 2006-12-22 15:11:55 rev mindless
// looks for <ul class='image-resize'><li></li>...</ul><img class='image-view' />

addLoadEvent(prepareResizers);






//--------------------------------
function prepareResizers(){
	var imgs = document.images;
	for(var i=0; i<imgs.length; i++){
		if(imgs[i].className == "image-view" 
			&& imgs[i].previousSibling && imgs[i].previousSibling.className == "image-resizer"){
			renderSizer( imgs[i], imgs[i].previousSibling );
		}

	}
}

//--------------------------------
function _getBlock(e){
	var obj = (window.event) ? window.event.srcElement : e.target;
	if(obj.nodeType == 3)  //*safari
		obj = obj.parentNode;
	while(obj){
		var nb = obj.getAttribute("block");
		if(!nb)
			obj = obj.parentNode;
		else
			break;
	}
	return obj;
//	return (window.event) ? window.event.srcElement : obj;
}

//--------------------------------
function showResize(e){
	if(typeof _getBlock == "undefined") return; //slow rendering
	var obj = _getBlock(e);
	obj.firstChild.style.display = "block";
	//obj.firstChild.style.position = "absolute";
	var pp = obj.getElementsByTagName("IMG");
	// gallery2wiki_resize.js 2006-12-22 15:11:55 rev mindless
	//obj.firstChild.style.top = _absTop(pp[0]) + "px";
	//obj.firstChild.style.left = _absLeft(pp[0]) + "px";
}
//--------------------------------
function hideResize(e){
	if(typeof _getBlock == "undefined") return; //slow rendering
	var obj = _getBlock(e);
	obj.firstChild.style.display = "none";
}
// 
//--------------------------------
function renderSizer(obj, alinks){
	var odiv = alinks.parentNode; // surrounding div
	odiv.targetImage = obj;
	odiv.setAttribute("block","surrounding"); // for crossbrowser
	var links = alinks.getElementsByTagName("A");
	for(var i=0; i<links.length; i++){
		links[i].newSrc = links[i].href;
		//links[i].setAttribute("newSrc", links[i].href );
		links[i].onclick = resizeImage;
		links[i].targetImage = obj;
		//links[i].href="javascript:resizeImage(event);" //safari
	}
	alinks.style.display= "none";
	listen(odiv, 'mouseover', showResize);
	listen(odiv, 'mouseout', hideResize);
}

//--------------------------------
function resizeImage(e){
	var obj = this; //(window.event && window.event.srcElement) ? window.event.srcElement : e.target;
	var mthis = _getBlock(e);
	mthis.targetImage.src = obj.newSrc;
	return false; // to avoid href
}
//--------------------------------
//--------------------------------
// onload patch for macIE5 from Simon Willison ::: http://simon.incutio.com/archive/2004/05/26/ 
//--------------------------------
if (typeof addLoadEvent != 'function') {
	function addLoadEvent(func) {
	  var oldonload = window.onload;
	  if (typeof window.onload != 'function') {
	    window.onload = func;
	  } else {
	    window.onload = function() {
	      oldonload();
	      func();
	    }
	  }
	}
}