function iswapF(iswap) {
	document.getElementById('i1').src='/images/pyjamas-women.gif';
	fname=iswap.src.substr(iswap.src.lastIndexOf('/'));
	document.getElementById('i1').style.width='244px';
	document.getElementById('i1').style.height='366px';
	document.getElementById('i1').src='/photos/zooms/'+fname;
	document.getElementById('i2').style.width='244px';
	document.getElementById('i2').style.height='366px';
	document.getElementById('i2').src='/photos/zooms/'+fname;
	document.getElementById('i3').src='/photos/zooms/'+fname;
}

function fPosition(e) {
	e = e || window.event;
	var cursor = {x:0, y:0};
	if (e.pageX || e.pageY) {
		cursor.x = e.pageX;
		cursor.y = e.pageY;
	} else {
		var de = document.documentElement;
		var b = document.body;
		cursor.x = e.clientX + (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
		cursor.y = e.clientY + (de.scrollTop || b.scrollTop) - (de.clientTop || 0);   
	}
	return cursor;
}

function findPos(obj) {
	if (obj != null) {
		var curleft = curtop = 0;
		if (obj.offsetParent) {
			curleft = obj.offsetLeft
			curtop = obj.offsetTop
			while (obj = obj.offsetParent) {
				curleft += obj.offsetLeft
				curtop += obj.offsetTop
			}
		}
		return [curleft, curtop];
	}
	else {
		return [0, 0];
	}
}

var TopDivName;

function fGetDivAbsPos(obj, curs) {
	var cursor = {x:0, y:0};
	if (obj != null) {
		if (curs == null) {
			curs = {x:0, y:0};
		}
		if (curs.x == NaN) {curs.x = 0;}
		if (curs.y == NaN) {curs.y = 0;}
		x1 = parseInt(obj.style.left);
		y1 = parseInt(obj.style.top);
		if (x1 == NaN) {x1 = 0;}
		if (y1 == NaN) {y1 = 0;}
		cursor.x = curs.x + x1;
		cursor.y = curs.y + y1;
		var parent = obj.parentNode;
		
		if ((parent != null) && (parent.id != '') && (parent.id != TopDivName)) {
		
			var parCurs = fGetDivAbsPos(parent, cursor);
			if (parCurs != null) {
				cursor = parCurs;
			}
		}
	}
	return cursor;

}

var faderDirection = 0;
var fadeValue = 0;

var faderDirections = new Array();
var fadeValues = new Array();

function fnSetOpacity(obj, value) {
	if (obj != null) {
		if (value < 0.001 ) {value = 0;}
		if (value > 0.999 ) {value = 1;}
		obj.style.filter = 'alpha(opacity=' + 100*value + ')';
		obj.style.MozOpacity = value;
		obj.style.opacity = value;
		if(value == 1)
		{
			obj.style.filter = null;
		}
	}
}

function fSmoothShow(divName, delay, min, max, cur, dx) {
	if (faderDirections[divName] * dx <= 0) {
		return;
	}
	var obj = document.getElementById(divName);
	if (obj != null) {

		if (cur > 0) {
			if ((obj.style.display == 'none') || (obj.style.visibility == 'hidden')) {
				obj.style.display = '';
				obj.style.visibility = 'visible';
			}
		}
		else if ((dx <= 0) && (cur <= 0 - dx)) {
			obj.style.display = 'none';
			fadeValues[divName] = 1;

			fnSetOpacity(obj, cur);
//			fadeValues[divName] = fadeValues[divName];
			return;
		}
	
		if (((dx > 0) && (cur < max)) || ((dx < 0) && (cur > max))) {
			cur += dx;
			fnSetOpacity(obj, cur);
			fadeValues[divName] = cur;
			if (faderDirections[divName] * dx > 0) {
				setTimeout("fSmoothShow('" + divName + "', " + delay + ', ' + min +', ' + max + ', ' + cur + ', ' + dx + ')', delay);
	        }
		}
	}
}

function fnInitZoomVariables(_photo_w, _photo_h, _photo2_w, _photo2_h, _zoom_w, _zoom_h, _border, _smallPhotoDivName, _smallPhotoShadowDivName, _bigPhotoDivName, _flyBoxDivName, _flyBoxPhotoDivName, _zoomBoxDivName, _popupDivName, _objName) {

		var SettingsObject = new Object; 

		SettingsObject.photo_w = _photo_w;
		SettingsObject.photo_h = _photo_h;
		SettingsObject.photo2_w = _photo2_w;
		SettingsObject.photo2_h = _photo2_h;
		SettingsObject.zoom_w = _zoom_w;
		SettingsObject.zoom_h = _zoom_h;
		SettingsObject.border = _border;

		SettingsObject.ratio_x = _photo2_w / _photo_w;
		SettingsObject.ratio_y = _photo2_h / _photo_h;

		SettingsObject.fly_w = _zoom_w / SettingsObject.ratio_x - 1;
		SettingsObject.fly_h = _zoom_h / SettingsObject.ratio_y - 1;
		
		SettingsObject.smallPhotoDivName = _smallPhotoDivName;
		SettingsObject.smallPhotoShadowDivName = _smallPhotoShadowDivName;
		SettingsObject.bigPhotoDivName = _bigPhotoDivName;
		SettingsObject.flyBoxDivName = _flyBoxDivName;
		SettingsObject.flyBoxPhotoDivName = _flyBoxPhotoDivName;
		SettingsObject.zoomBoxDivName = _zoomBoxDivName;
		SettingsObject.popupDivName = _popupDivName;
		SettingsObject.objName = _objName;

		SettingsObject.smallPhotoOffset = {x:0, y:0};
		SettingsObject.bigPhotoOffset = {x:0, y:0};

		SettingsObject.popupOffset = {x:0, y:0};

		if (_popupDivName != '') {
			var popupDiv = document.getElementById(_popupDivName);
			if (popupDiv != null) {
				offsetPair = findPos(document.getElementById(_popupDivName));
				SettingsObject.popupOffset.x = offsetPair[0];
				SettingsObject.popupOffset.y = offsetPair[1];
			}
		}

		return SettingsObject;
	}
	
	function fnTrackMouse(setObj, evt) {
		if (setObj == null) {return;}
		max_x = setObj.photo_w + setObj.border - setObj.fly_w - setObj.border*2;
		max_y = setObj.photo_h + setObj.border - setObj.fly_h - setObj.border*2;

		min_x = setObj.border;
		min_y = setObj.border;

		max_x2 = setObj.zoom_w/1 - setObj.photo2_w;
		max_y2 = setObj.zoom_h/1 - setObj.photo2_h;
		min_x2 = 0;
		min_y2 = 0;

		var bigPhoto = document.getElementById(setObj.bigPhotoDivName);
		var flyDiv = document.getElementById(setObj.flyBoxDivName);
		var flyPhotoDiv = document.getElementById(setObj.flyBoxPhotoDivName);
		if (flyPhotoDiv != null) {
			var o = fPosition(evt);
			
			var smallPhoto = document.getElementById(setObj.smallPhotoDivName);
			
			real_x = o.x - setObj.smallPhotoOffset.x - setObj.popupOffset.x;
			real_y = o.y - setObj.smallPhotoOffset.y - setObj.popupOffset.y;
			
			x = real_x - setObj.fly_w/2;
			y = real_y - setObj.fly_h/2;

			if (x > max_x) {x = max_x;}
			if (y > max_y) {y = max_y;}
			if (x < min_x) {x = min_x;}
			if (y < min_y) {y = min_y;}
			
			x2 = 0 - (real_x) * setObj.ratio_x + (setObj.zoom_w)/2;
			y2 = 0 - (real_y) * setObj.ratio_y + (setObj.zoom_h)/2;
			
			if (x2 > min_x2) {x2 = min_x2;}
			if (y2 > min_y2) {y2 = min_y2;}
			if (x2 < max_x2) {x2 = max_x2;}
			if (y2 < max_y2) {y2 = max_y2;}
			
			bigPhoto.style.left = x2 + 'px';
			bigPhoto.style.top = y2 + 'px';

			flyDiv.style.left = setObj.smallPhotoOffset.x - setObj.border + x + 'px';
			flyDiv.style.top = setObj.smallPhotoOffset.y - setObj.border + y + 'px';
			
			flyPhotoDiv.style.left = 0 - x + 'px';
			flyPhotoDiv.style.top = 0 - y + 'px';
		}
	}

	function fnStepOnOff(setObj, onoff) {
		if (setObj == null) {return;}
		var intObj = document.getElementById('outer_bg');
		if (onoff == true) {
			document.getElementById(setObj.smallPhotoShadowDivName).style.display = '';
			document.getElementById(setObj.flyBoxDivName).style.display = '';
			faderDirections[setObj.zoomBoxDivName] = 1;
			fSmoothShow(setObj.zoomBoxDivName, 25, 0, 1, 0, 0.1);

			if (setObj.objName != '') {
				if (navigator.appName.indexOf("Microsoft") != -1) {
				  intObj.onmousemove = function() {return fDblCheckZoom(setObj, event);}
				}
				else { // Firefox, Opera, Safari etc.
				  intObj.setAttribute("onmousemove", "fDblCheckZoom(" + setObj.objName + ", event);");
				}
			}
		}
		else {
			document.getElementById(setObj.smallPhotoShadowDivName).style.display = 'none';
			document.getElementById(setObj.flyBoxDivName).style.display = 'none';
			faderDirections[setObj.zoomBoxDivName] = -1;
			fSmoothShow(setObj.zoomBoxDivName, 25, 1, 0, 1, -0.1);

			if (setObj.objName != '') {
				if (navigator.appName.indexOf("Microsoft") != -1) {
				  intObj.onmousemove = "";
				}
				else { // Firefox, Opera, Safari etc.
				  intObj.setAttribute("onmousemove", "");
				}
			}
		}
	}

	function fSetFlySize(setObj) {
		if (setObj == null) {return;}
		var targetDiv = document.getElementById(setObj.flyBoxDivName);
		if (targetDiv != null) {
			targetDiv.style.width = setObj.fly_w + 'px';
			targetDiv.style.height = setObj.fly_h + 'px';
		}
	}
	
	function fDblCheckZoom(setObj, evt) {
		if (setObj == null) {return;}
		var flyDiv = document.getElementById(setObj.flyBoxDivName);
		var o = fPosition(evt);
		if ((flyDiv.style.display == '') && ((o.x < (setObj.smallPhotoOffset.x + setObj.popupOffset.x)) || (o.x > ((setObj.smallPhotoOffset.x + setObj.popupOffset.x) + setObj.photo_w)) || (o.y < (setObj.smallPhotoOffset.y + setObj.popupOffset.y)) || (o.y > ((setObj.smallPhotoOffset.y + setObj.popupOffset.y) + setObj.photo_h )))) {
			fnStepOnOff(setObj, false);
		}
	}


	function fnCalculateZoomPos(setObj) {
		if (setObj == null) {return;}
		var imgplace = 	document.getElementById(setObj.smallPhotoDivName);
		var imgpos = findPos(imgplace);
		var detpos = findPos(imgplace);

		dx = parseInt(imgplace.style.width);
		detpos[0] = imgpos[0] + dx;


		var photoplace = document.getElementById(setObj.smallPhotoDivName);
		var photoplaceshadow = document.getElementById(setObj.smallPhotoShadowDivName);
		var zoombox = document.getElementById(setObj.zoomBoxDivName);

		photoplace.style.left = imgpos[0] - setObj.popupOffset.x + 'px';
		photoplace.style.top = imgpos[1] - setObj.popupOffset.y + 'px';
		photoplace.style.display = '';

		photoplaceshadow.style.left = imgpos[0] - setObj.popupOffset.x + 'px';
		photoplaceshadow.style.top = imgpos[1] - setObj.popupOffset.y + 'px';

		zoombox.style.left = detpos[0] - setObj.popupOffset.x + 'px';
		zoombox.style.top = detpos[1] - setObj.popupOffset.y + 'px';
		
		zoombox.style.width = setObj.zoom_w + 'px';
		zoombox.style.height = setObj.zoom_h + 'px';

		setObj.smallPhotoOffset.x = imgpos[0] - setObj.popupOffset.x;
		setObj.smallPhotoOffset.y = imgpos[1] - setObj.popupOffset.y;

		fSetFlySize(setObj);
	}

	function fnShowLargeColour(sender, colourImgSrc, rgbCode, colourCaption) {
		var colourDiv = document.getElementById("LgeColour");
		if (colourDiv != null) {
			var imgObj = document.getElementById("LgeImage");
			var clrBoxObj = document.getElementById("LgeColourBox");
			var captionObj = document.getElementById("LgeCaption");
			if ((imgObj != null) && (captionObj != null) && (clrBoxObj != null)) {
				clrBoxObj.style.display = 'none';
				imgObj.style.display = 'none';
				clrBoxObj.style.backgroundColor = colourDiv.style.backgroundColor;
				if (colourImgSrc != '') {
					if (imgObj.nodeName == 'IMG') {
						imgObj.src = colourImgSrc;
						imgObj.style.display = '';
					}
				}
				else if (rgbCode != '') {
					if (clrBoxObj.nodeName == 'DIV') {
						clrBoxObj.style.display = '';
						clrBoxObj.style.backgroundColor = rgbCode;
					}
				}
				if (captionObj.nodeName == 'SPAN') {
					captionObj.innerHTML = colourCaption;
				}
				var imgpos = findPos(sender);
				colourDiv.style.left = imgpos[0] - 2 + 'px';
				colourDiv.style.top = imgpos[1] - 5 - parseInt(colourDiv.style.height) + 'px';
				colourDiv.style.display = '';
			}
		}
	}
	
