// JavaScript Document

var status;

Object.print = function(obj,glue,interval) {
	var params = 'replaceChild|removeChild|appendChild|hasChildNodes|cloneNode|normalize|';
	params += 'isSupported|namespaceURI|getAttribute|setAttribute|removeAttribute|';
	params += 'getAttributeNode|setAttributeNode|removeAttributeNode|getElementsByTagName|';
	params += 'getAttributeNS|setAttributeNS|removeAttributeNS|getElementsByTagNameNS|';
	params += 'getContext|hasAttribute|hasAttributeNS';
	params = params.split('|');
	var str = '';
	var counter = 0;
	var g;
	for(var i in obj) {
		if(Array.searchV(params,i)) {
			continue;
		}
		if(true) {//obj.hasOwnProperty(i) == false
			str += i + ' ' + obj[i];
			g = "\t";
			if(counter%interval == 0) {
				g = glue; 
			}
			str += g;
		}
		counter++; 
	}
	alert(str);
}

Array.searchV = function(arr,val) {
	for(var i = 0; i < arr.length; i++) {
		if(arr[i] == val) {
			return true;
		}
	}
	return false;
}

function getPosition(obj) {
	var w = obj.offsetWidth, h = obj.offsetHeight;
	var x = 0, y = 0;
	while(obj) {
	   x+=obj.offsetLeft;
	   y+=obj.offsetTop;
	   obj=obj.offsetParent;
	}
	return {x: x, y:y, w:w, h:h};
}

function getPosition(obj) {
	var w = obj.offsetWidth, h = obj.offsetHeight;
	var x = 0, y = 0;
	while(obj) {
	   x+=obj.offsetLeft;
	   y+=obj.offsetTop;
	   obj=obj.offsetParent;
	}
	return {x: x, y:y, w:w, h:h};
}

//var firstMouseOver = false;
var base_url;
var rp;
var rp_src;
var rp_w;
var rp_h;
function bugFixIE() {
	var fullpath = window.location.href.toString();
	if(fullpath.indexOf('hedelix.ru') != -1) {
		base_url = "http://hedelix.ru";
		rp = '/i3';
		rp_src = '/i3/presentation.png';
		rp_w = 290;
		rp_h = 445;
	}
	if(fullpath.indexOf('valocordin.ru') != -1) {
		base_url = "http://valocordin.ru";				
		rp = '/i2';
		rp_src = '/i2/presentation.png';
		rp_w = 270;
		rp_h = 322;
	}
	if(fullpath.indexOf('regulax.ru') != -1) {
		base_url = "http://regulax.ru";				
		rp = '/i4';
		rp_src = '/i4/presentation.png';
		rp_w = 205;
		rp_h = 335;
	}
	if(fullpath.indexOf('krewel-meuselbach.ru') != -1) {
		base_url = "http://krewel-meuselbach.ru";				
		rp = '/i1';
		rp_src = '/i1/presentation.png';
		rp_w = 270;
		rp_h = 322;
	}
	
	$('div#header div.presentation').each(
		function() {
			var presentation = $("<img src='" + base_url + rp_src + "' width='" + rp_w + "' height='" + rp_h + "'>");
			presentation.appendTo(this);
			presentation.parent().pngFix();
		}
	);
	
	$('div#header div.hmenu ul li a div.window div.window_top').each(
		function() {
			$("<img src='" + base_url + rp + "/window_top.png' width='315' height='28'>").appendTo(this);
		}
	);
	$('div#header div.hmenu ul li a div.window div.window_bottom').each(
		function() {
			$("<img src='" + base_url + rp + "/window_bottom.png' width='315' height='9'>").appendTo(this);
		}
	);
	$('div#header ul.vmenu div.hr').each(
		function() {
			var vmenu_hr = $("<img src='" + base_url + rp + "/vmenu_hr.png' width='204' height='2'>");
			vmenu_hr.appendTo(this);
			vmenu_hr.parent().pngFix();
		}
	);
	var motto = $('div#content div#right div.inner a.motto');
	motto.each(
		function() {
			$(this).css('position','relative');
			$(this).css('top','10px');			
		}
	);
	var banner = $('div#content div#right div.inner a.banner');
	banner.each(
		function() {
			$(this).css('position','relative');
			$(this).css('top','40px');			
		}
	);
	//$(document).pngFix();//fix the bag for IE png images
	
	var col1 = $('div#header div.hmenu ul li a');
	var cl = col1.length;
	for(var i = 0; i < cl; i++) {
		col1[i].onmouseover = function (e) {
			if (!e) e = window.event;
			var target = e.target || e.srcElement;
			if(target.className == 'hmenu_text') {
				var p = target.parentElement || target.parentNode;
				var wtext = $(p).find("div.window");
				var wttext = $(p).find("div.window_top");
				var wxtext = $(p).find("div.window_text");
				var wbtext = $(p).find("div.window_bottom");			
				wtext.css('display','block');
				wttext.css('display','block');
				wxtext.css('display','block');
				wbtext.css('display','block');
				$(p).css('cursor','pointer');
				/*if(!firstMouseOver) {
					$("<img src='i2/window_top.png' width='315' height='28'>").appendTo(wttext);
					$("<img src='i2/window_bottom.png' width='315' height='9'>").appendTo(wbtext);
					firstMouseOver = true;
				}*/
				$(wttext).pngFix();
				$(wbtext).pngFix();
				
				//$(p).css('color','#fefefe');
			}
		};
		col1[i].onmouseout = function (e) {
			if (!e) e = window.event;
			var target = e.target || e.srcElement;
			if(target.className == 'hmenu_text') {
				var p = target.parentElement || target.parentNode;
				var wtext = $(p).find("div.window");
				var wttext = $(p).find("div.window_top");
				var wxtext = $(p).find("div.window_text");
				var wbtext = $(p).find("div.window_bottom");
				wtext.css('display','none');
				wttext.css('display','none');
				wxtext.css('display','none');
				wbtext.css('display','none');
				//$(p).css('color','#007dab');
			}
		};
	}
	
	var col2 = $('div#header ul.vmenu li');
	var cl = col2.length;
	status = new Array(cl);
	for(var i = 0; i < cl; i++) {
		var pElm = col2[i];
		var chElm;
		var chC = col2[i].getElementsByTagName("ul");
		chElm = chC[0];
		if(chElm) {
			pElmId = 'li_' + (i + 1).toString();
			chElmId = 'ul_' + (i + 1).toString();
			pElm.id = pElmId;
			chElm.id = chElmId;
			var cObj = new coupleObj(pElmId,chElmId);
			status.push(cObj);
			document.getElementById(chElmId).onmousemove = function(e) {
				if (!e) e = window.event;
				var target = e.target || e.srcElement;
				var mLi = findTopLi(target);
				Array.findObjByPId(mLi.id).changeStatus(true);
			}
			
			document.getElementById(chElmId).onmouseout = function(e) {
				if (!e) e = window.event;
				var target = e.target || e.srcElement;
				var mLi = findTopLi(target);
				Array.findObjByPId(mLi.id).changeStatus(false);
				if(!Array.findObjByPId(mLi.id).status) {
					window.setTimeout("hideMenu('" + mLi.id + "');",200);
				}
			}
			
			document.getElementById(chElmId).onmouseover = function(e) {
				if (!e) e = window.event;
				var target = e.target || e.srcElement;
				var mLi = findTopLi(target);
				Array.findObjByPId(mLi.id).changeStatus(true);
			}
			
			col2[i].onmouseover = function (e) {
				if (!e) e = window.event;
				var target = e.target || e.srcElement;
				if(target.tagName.toLowerCase() == 'a') {
					var p = target.parentElement || target.parentNode;
					var ul = $(p).find('ul');
					var mLi = findTopLi(target);
					Array.findObjByPId(mLi.id).changeStatus(true);
					ul.css('display','block');
					/*ul.css('height','20px');
					$('div#header ul.vmenu li ul li').each(
						function() {
							//Object.print(this);
							$(this).css('line-height','15px');
						}
					);*/
				}
			}
			
			col2[i].onmouseout = function (e) {
				if (!e) e = window.event;
				var target = e.target || e.srcElement;
				if(target.tagName.toLowerCase() == 'a') {
					var p = target.parentElement || target.parentNode;
					var ul = $(p).find('ul');
					var mLi = findTopLi(target);
					Array.findObjByPId(mLi.id).changeStatus(false);
					if(!Array.findObjByPId(mLi.id).status) {
						window.setTimeout("hideMenu('" + mLi.id + "');",200);
					}
				}
			}
		}
	}
	//$(document).pngFix();
}

function hideMenu(liId) {
	if(!Array.findObjByPId(liId).status) {
		$('#' + liId).find("ul").css('display','none');
	}
}

function coupleObj(pId, chId) {
	this.pId = pId;
	this.chId = chId;
	this.status = false;
	
	this.changeStatus = function(st) {
		this.status = st;
	}
}

Array.findObjByPId = function(pId) {
	for(var i in status) {
		if(status[i].pId == pId) {
			return status[i];
		}
	}
	return null;
}

function findTopLi(obj) {
	while(obj) {
		var p = $(obj).parent().get(0);
		if(p.tagName.toLowerCase() == 'li' && $(p).parent().get(0).className == 'vmenu') {
			return p;
		}
		obj = p;
	}
	return null;
}
$(document).ready(bugFixIE);
