prodPopup=({
	cursor_pos:{},
	view_timer:0,
	hint_sow_time: 1000,
	getCurPos:function(event){
		if (!event)event=window.event;
	    var x = y = sw = sh = scl = sct = 0;
 		sw = (window.innerWidth ? window.innerWidth : (document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.offsetWidth));
 		sw -= getScrollBarWidth();
 	   	sh = (window.innerHeight ? window.innerHeight : (document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.offsetHeight));
	    if (document.attachEvent != null) { 
	        x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
	        y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
	        scl = document.documentElement.scrollLeft;
	        sct = document.documentElement.scrollTop;	        
	    }
	    if (!document.attachEvent && document.addEventListener) {
	        x = event.clientX + window.scrollX;
	        y = event.clientY + window.scrollY;
	        scl = window.scrollX;
	        sct = window.scrollY;	        
	    }
	    this.cursor_pos = {x:x, y:y, sw:sw, sh:sh, scl:scl, sct:sct};
		    function getScrollBarWidth() {
				var inner = document.createElement('p');
				inner.style.width = '100%';
				inner.style.height = '200px';
 
				var outer = document.createElement('div');
				outer.style.position = 'absolute';
				outer.style.top = '0px';
				outer.style.left = '0px';
				outer.style.visibility = 'hidden';
				outer.style.width = '200px';
				outer.style.height = '150px';
				outer.style.overflow = 'hidden';
				outer.appendChild (inner);
				document.body.appendChild (outer);
				var w1 = inner.offsetWidth;
				outer.style.overflow = 'scroll';
				var w2 = inner.offsetWidth;
				if (w1 == w2)
					w2 = outer.clientWidth;
				document.body.removeChild (outer);
 
				return (w1 - w2);
			};

	},
	correctPos:function(hint_obj, obj){
		if(obj && hint_obj){ 
			var obj_c = this.getElementPos(obj);
			var arrow = document.getElementById("hint_arrow");
			var scr_part = (((this.cursor_pos.y - this.cursor_pos.sct) / (this.cursor_pos.sh / 3 )) + 1);
			if(scr_part < 2){scr_part = 1;}
			if(scr_part > 2 && scr_part < 3){scr_part = 2;}
			if(scr_part > 3 ){scr_part = 3;}						
			if(scr_part == 2){
				hint_obj.style.top = Math.round((obj_c.t + (obj_c.h/2)) - (hint_obj.offsetHeight/2)) + "px";
			}
			if(scr_part == 1){
				hint_obj.style.top = (obj_c.t) + "px";
			}
			if(scr_part == 3){
				hint_obj.style.top = Math.round((obj_c.t + (obj_c.h)) - (hint_obj.offsetHeight)) + "px";
			}
			hint_obj.style.borderTop = "1px solid #cecece";
			if(obj_c.l > this.cursor_pos.sw / 2){
				hint_obj.style.left = Math.round(obj_c.l - hint_obj.offsetWidth - 24) + "px";
				hint_obj.style.borderLeft = "1px solid #cecece";
				if(arrow){
					arrow.style.right = 0 - 20 + "px";
					arrow.style.background = "url(/assets/img/hints/arrows.gif) 0 0"
				}
			}else{
				hint_obj.style.left = Math.round(obj_c.l + obj_c.w + 24) + "px";	
				hint_obj.style.borderLeft = "1px solid #cecece";
				if(arrow){
					arrow.style.left = 0 - 24 + "px";
					arrow.style.background = "url(/assets/img/hints/arrows.gif) -24px 0"					
				}
			}
			if(arrow){
				if(scr_part == 2){
					arrow.style.top = Math.round(hint_obj.offsetHeight / 2 - 42) + "px";
				}
				if(scr_part == 1){
					arrow.style.top = "5px";
				}
				if(scr_part == 3){
					arrow.style.top = hint_obj.offsetHeight - 89 + "px";
				}
			}		
		}
		hint_obj.style.visibility = "visible";
	},
	getElementPos:function(obj){
	    var w = obj.offsetWidth;
	    var h = obj.offsetHeight;
	    var l = 0;
	    var t = 0;
	    while (obj){
	        l += obj.offsetLeft;
	        t += obj.offsetTop;
	        obj = obj.offsetParent;
	    }
	    return {"l":l, "t":t, "w": w, "h":h};
	},	
	showHint:function(event, from){
		this.getCurPos(event);
		if(!document.getElementById("prodPopupHintDiv")){
			if(from){
				from.onmouseout = function(){
					prodPopup.destroyHintBody();
				}
			}			
			this.view_timer = setTimeout(function() {prodPopup.createHintBody(event, from);}, this.hint_sow_time);
		}
	},
	createHintBody:function(event, par_obj){
		var par_hide =  par_obj.parentNode.parentNode.parentNode.getElementsByTagName("INPUT")[0].value;
		var mainHintDiv = document.createElement("DIV");
		if(mainHintDiv && par_hide){
			mainHintDiv.style.position = "absolute";
			mainHintDiv.style.zIndex = "1000000";
			mainHintDiv.style.backgroundColor = "#FFFFFF";
			mainHintDiv.style.background = "#FFFFFF url(/assets/img/hints/d_shadow.gif) left bottom repeat-x";
			mainHintDiv.style.fontSize = "12px";
			mainHintDiv.style.visibility = "hidden";
			mainHintDiv.id = "prodPopupHintDiv";
			mainHintDiv.innerHTML = "<div id='hint_arrow' style='position: absolute; width: 24px; height: 84px;'></div><div style='background: url(/assets/img/hints/r_shadow.gif) right top repeat-y; padding: 6px; margin-bottom: 3px;'>" + par_hide + "</div>";
			document.body.appendChild(mainHintDiv);
			this.correctPos(mainHintDiv, par_obj);
		}
	},
	destroyHintBody:function(){
		clearTimeout(this.view_timer);
		hint_obj = document.getElementById("prodPopupHintDiv");
		if(hint_obj){
			document.body.removeChild(hint_obj);						
		}
	}	
});

