var coords = null;
var curId = "point0";
var isInProgress = false;
var timerInit = null;

$(document).ready(function() {
	/* popups.. */
	$('div.preview a').click(function() {
		popImage($(this).attr('href'), '');
		return(false);
	});
	/* ..popups */

	/* разделы каталога.. */
	$('#catNavNext').click(function() {
		var indx = getCatPartIndx(catPart);
		indx++;
		if((indx <= catParts.length - 1)&&(catPart != catParts[indx][0])) setCatPart(indx, true);
		return(false);
	});

	$('#catNavPrev').click(function() {
		var indx = getCatPartIndx(catPart);
		indx--;
		if((indx >= 0)&&(catPart != catParts[indx][0])) setCatPart(indx, true);
		return(false);
	});
	/* ..разделы каталога */

	/* манекен */
	$('#manmap area').each(function() {
		$(this).mouseover(function() {
			var id = $(this).attr('class');
			if((id != curId)&&(!isInProgress)) {
				isInProgress = true;
				coords = $(this).attr('coords').split(",");
				hideLine();
				hideScrolls();
				hideStaffs();
				$('#wear' + id).fadeOut();
				$('#wear' + curId).fadeIn('slow');
				showStaff(id);
				setCatPart(getCatPartIndx(id), false);
				curId = id;
			}
		});
	});

	$('#man img.wear').each(function() {
		$(this).mouseover(function() {
			var id = $(this).attr('id').substr(4);
			if((id != curId)&&(!isInProgress)) {
				isInProgress = true;
				$(this).fadeOut();
				coords = $('#manmap area.' + id).attr('coords').split(",");
				hideLine();
				hideScrolls();
				hideStaffs();
				showStaff(id);
				setCatPart(getCatPartIndx(id), false);
				curId = id;
			}
		});
	});

	/* манекен на внутрянке */
	$('#man2map area').each(function() {
		$(this).mouseover(function() {
			var id = $(this).attr('class');
			if((id != curId)&&(!isInProgress)) {
				isInProgress = true;
				coords = $(this).attr('coords').split(",");
				$('#wear' + id).fadeOut();
				$('#wear' + curId).fadeIn('slow');
				showStaff2(id);
				curId = id;
			}
		});
	});

	$('#man2 img.wear').each(function() {
		$(this).mouseover(function() {
			var id = $(this).attr('id').substr(4);
			if((id != curId)&&(!isInProgress)) {
				isInProgress = true;
				$(this).fadeOut();
				coords = $('#man2map area.' + id).attr('coords').split(",");
				hideStaffs2();
				showStaff2(id);
				curId = id;
			}
		});
	});

	timerInit = window.setTimeout("initBox()", 500);

});

function getCatPartIndx(id) {
	for(var i=0; i<catParts.length; i++) {
		if(id == catParts[i][0]) {
			return(i);
		}
	}
}

function setCatPart(indx, doHover) {
	$('#catNavCur').css('display', 'none');
	$('#catNavCur').attr('href', catParts[indx][1]);
	$('#catNavCur').html(catParts[indx][2]);
	$('#catNavCur').fadeIn();
	if(doHover) $('#manmap area.' + catParts[indx][0]).mouseover();
	catPart = catParts[indx][0];
}

function hideScrolls() {
	$('#box div.scrollCont').each(function() {
		$(this).css('display', 'none');
	});
}

function hideStaffs() {
	$('#man a.staff').each(function() {
		$(this).css('display', 'none');
	});
}

function hideStaffs2() {
	$('#man2 a.staff').each(function() {
		$(this).css('display', 'none');
	});
}

function initBox() {
	$('#scroll' + curId).css('display', 'block');
	$('#box').slideDown('slow');
	window.clearTimeout(timerInit);
	
	var area = $('#manmap area');
	var rand = Math.random();
	rand *= area.size();
	rand -= 0.0001;
	rand = Math.abs(rand);
	rand = Math.floor(rand);
	area.eq(rand).trigger('mouseover');
}

function hideLine() {
	$('#line div.start').css('display', 'none');
	$('#line div.end').css('display', 'none');
	$('#line').css('display', 'none');
}

function showStaff(id) {
	var id1 = '#' + id;
	var link = $(id1);
	var w = parseInt(coords[2]) - parseInt(coords[0]);
	var h = parseInt(coords[3]) - parseInt(coords[1]);
	link.width(w);
	link.height(h);
	link.fadeIn('normal', showScroll(id));
/*
	link.unbind();
	link.mouseover(function() {
		var idX = $(this).attr('id');
		if((curId != idX)&&(!isInProgress)) {
			var area = $('#manmap area.' + idX);
			isInProgress = true;
			area.unbind('mouseover');
			coords = area.attr('coords').split(",");
			hideScrolls();
			hideLine();
			showScroll(idX);
			curId = idX;
		}
	});
*/
}

function showStaff2(id) {
	var id1 = '#' + id;
	var link = $(id1);
	var w = parseInt(coords[2]) - parseInt(coords[0]);
	var h = parseInt(coords[3]) - parseInt(coords[1]);
	link.width(w);
	link.height(h);
	link.fadeIn('normal');
	isInProgress = false;
}

function showScroll(id) {
	var id2 = '#scroll' + id;
	$(id2).slideDown('slow', initLine());
	if(navigator.appVersion.indexOf('MSIE 6') < 0) {
		var scroll = $('#scroll' + id + ' div.scroll');
		scroll.css('overflow', 'hidden');
		scroll.jScrollPane({ scrollbarWidth:5, scrollbarMargin:5 });
	}
}

var timerLine = null;

function initLine() {
	if(timerLine != null) window.clearTimeout(timerLine);
	timerLine = window.setTimeout("showLine()", 500);
}

function showLine(isFast) {
	var man = document.getElementById('man');
	var box = document.getElementById('box');
	var content = document.getElementById('content');
	var x = parseInt(coords[0]);
	var y = parseInt(coords[1]);
	var w = parseInt(coords[2]) - parseInt(coords[0]);
	var h = parseInt(coords[3]) - parseInt(coords[1]);
	var line = $('#line');
	var start = $('#line div.start');
	var end = $('#line div.end');
	var dy = 20;
	var y1 = box.offsetTop + dy;
	var y2 = box.offsetTop + box.offsetHeight - dy;

	/* начало линии */
	var left = x + Math.round(w/2);
	var top = y + Math.round(h/2);
	var dx = box.offsetLeft;
	var dx2 = Math.ceil((box.offsetLeft - man.offsetWidth)/2) + 20;
	start.css('left', left + 'px');
	start.css('top', top + 'px');
	/* точка в пределах блока по вертикали - линия прямая */
	if((top >= y1)&&(top <= y2)) {
		end.css('display', 'none');
		start.width(dx);
	/* точка вне блока */
	} else {
		dx -= dx2 + left;
		start.width(dx);
		end.width(dx2);
		left += dx;
		end.css('left', left + 'px');
		var dy = Math.floor(parseInt(start.css('height'))/2);
		/* выше */
		if(top < y1) {
			end.css('top', top + dy + 'px');
			end.css('height', y1 - top - dy + 'px');
			end.css('border-top', 'none');
			end.css('border-bottom', '1px solid #eeceb9');
		/* ниже */
		} else if(top > y2) {
			end.css('top', y2 + 'px');
			end.css('height', top - y2 + dy + 'px');
			end.css('border-bottom', 'none');
			end.css('border-top', '1px solid #eeceb9');
		}
		end.css('border-left', '1px solid #eeceb9');
		end.css('display', 'block');
	}
	start.css('display', 'block');

	if(isFast) {
		line.css('display', 'block');
	} else {
		line.fadeIn('slow');
	}

	isInProgress = false;
}

PositionX = 10;
PositionY = 10;
defaultWidth  = 500;
defaultHeight = 500;
var AutoClose = true;

if (parseInt(navigator.appVersion.charAt(0))>=4) {
	//var isNN=(navigator.appName=="Netscape")?1:0;
	var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;
	var isNN = !isIE;
}
var optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+PositionX+',top='+PositionY;
var optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY;

function popImage(imageURL,imageTitle) {

	if (isNN){imgWin=window.open('about:blank','',optNN);}
	if (isIE){imgWin=window.open('about:blank','',optIE);}

	with (imgWin.document){
	writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</style>');writeln('<sc'+'ript>');
	writeln('var isNN,isIE;');writeln('if (parseInt(navigator.appVersion.charAt(0))>=4){');
	writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}');
	writeln('function reSizeToImage(){');writeln('if (isIE){');writeln('window.resizeTo(100,100);');
	writeln('width=100-(document.body.clientWidth-document.images[0].width);');
	writeln('height=100-(document.body.clientHeight-document.images[0].height);');
	writeln('window.resizeTo(width,height);}');writeln('if (isNN){');
	writeln('window.innerWidth=document.images["George"].width;');writeln('window.innerHeight=document.images["George"].height;}}');
	writeln('function doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
	//alert(imageTitle);
	if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()">')
	else writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
	writeln('<img name="George" src='+imageURL+' style="display:block"></body></html>');
	close();
	}
}


