// JavaScript Document


var quickLook={

        el: null,
        set: false,
        curId: 0,
        curModel: false,


        //set up the product div's with events


        getElementAttribute: function(node, atName){
                if(node==undefined)
                        return false;
                else{
                        for(var i=0; i<node.attributes.length; i++){
                                //alert(node.attributes[i].name+": "+node.attributes[i].value+" Search Value:  "+atName);
                                //alert();
                                if(node.attributes[i].name==atName)
                                        return node.attributes[i].value;
                        }
                        return false;
                }
        },


        changeIcon: function(type){


                var img=document.getElementById("quickLookImage")

                //img=img[0];

                if(type=="out"){
                        img.src="imagesStore/quicklook2.jpg"
                        img.style.height="25px";
                        img.style.width="85px";

                }
                else if(type=="in"){
                        img.src="imagesStore/quicklook.jpg"
                        img.style.height="25px";
                        img.style.width="85px";
                }
        },

        findPos: function (obj) {
                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];
        },


        init: function(){

                var element=document.createElement('div');
                element.id="quicklook";

                element.style.position="absolute";
                element.style.zindex="100";
                element.style.display="none";

                document.body.appendChild(element);
                element.innerHTML="<a id='quickLookLink' href='#' onClick'javascript: return false;' onMouseover=\"javascript: classname='quickLookLink_over';\" onMouseout=\"javascript: classname='quickLookLink';\"><img id='quickLookImage' src='imagesStore/quicklook2.jpg' onMouseOver='javascript: quickLook.changeIcon(\"in\");' onMouseOut='javascript: quickLook.changeIcon(\"out\");' width='85px' height='25px' border='0'></a>";

                $('quickLookLink').addEvent('click', function(){
                        tip.openTip();
						return false;
                }) 

                quickLook.el=element;
				
				$$('.pdiv').each(function(pdiv){

                        pdiv.addEvent('mouseenter', function(pdiv){
                                 quickLook.showQuickLook(pdiv);
                        })
                        pdiv.addEvent('mouseleave', function(pdiv){
                                 quickLook.hideQuickLook(pdiv);
                        }) 
                                                                 
                })

        },


        showQuickLook: function(e){



                var el=quickLook.el
                el=e.target;


                while(el.nodeName!="DIV")
                        el=el.parentNode;

                var pos=quickLook.findPos(el);

                var com_model=quickLook.getElementAttribute(el, 'model')


                quickLook.el.style.position="absolute";
                quickLook.el.style.top=pos[1]+112+"px";
                quickLook.el.style.left=pos[0]+15+"px";
                quickLook.el.style.display="inline";
                quickLook.curModel=com_model;
                //quickLook.el.style.border="1px solid black";
                quickLook.set=true;
                var test=$('quicklook')
                //test=quickLook.el;
                //quickLook.el
        },

        hideQuickLook: function(e){


                if(e.target.nodeName!="IMG" && e.target.nodeName!="A" && e.target.nodeName!="TD" && e.target.id!="quicklook"){
                        //alert(e.target.nodeName);
                        quickLook.el.style.display="none";
                }


        }
}


function openFile(file,name,picw,pich) {
  popupWin = window.open(file, name, 'status=yes, resizable=yes, scrollbars=yes, address=yes, menubar=yes, location=yes, width=' + picw + ',height=' + pich)
}



var tip={


	curTip:  false,
	curDrag: false,
	curScroll: [0,0],
	
	
	
	closeTip: function(){
		//alert(document.getElementById("tool_tip"));
		if(tip.curTip){
			var temp=document.getElementById("tool_tip");
			temp.parentNode.removeChild(temp);
			clearTimeout();
			tip.curTip=false;
			tip.curDrag=false;
		}
			
	},

	addDrag: function(){
		if(!tip.curDrag){
			tip.curDrag=new Drag.Move(tip.curTip).attach();
		}
		else
			tip.curDrag.attach();
	
	},
	
	removeDrag: function(){
		tip.curTip=$('tool_tip');
		if(tip.curDrag)
			tip.curDrag.detach();
		
	},
	
	
	scrollable: function(){
		
		//if(tip.curTip){
		//	var tScroll=tip.getScrollXY();
			
		//	if(tScroll[1]!=tip.scrollY){
				
				//var sd=tip.scrollY-tScroll[1];
				//tip.curTip.setStyle("top", tip.curTip.getCoordinates().top-sd)
				//tip.curTip.offsetTop=tip.curTip.offsetTop-sd;
				//tip.scrollY=tScroll[1];
				//tip.scrollX=tScroll[0];
		//	}
				
			//setTimeout("tip.scrollable()", 40);
	//	}
		return true;
	
	
	},
		
	buildTipHTML: function(){
		
		var output="<table id='tipContainer'>";
			output=output+"<tr>";
				output=output+"<td height=\"25\" align=\"right\">";
					output=output+"<table cellspacing='3px' cellpadding='0' width=\"100%\">";
						output=output+"<tr>";
							output=output+"<td width=\"100%\" align=\"center\">";
								output=output+"<font style=\"padding-left: 5px; padding-right: 5px; color: #999999; font-size: 10px; font-family: Arial;\">You can drag this window to a better position by clicking on the 'drag' icon and dragging with your mouse</font>";
									output=output+"</td>";
										output=output+"<td>";
											output=output+"<input type=\"image\" name=\"drag\" src=\"imagesStore/drag.gif\" border=\"0\" onMouseDown=\"javascript: tip.addDrag();\" onMouseUp=\"javascript: tip.removeDrag();\">";
										output=output+"</td>";
										output=output+"<td>";
											output=output+"<input type=\"image\" name=\"close\" src=\"imagesStore/close_window.gif\" border=\"0\" onClick=\"javascript: tip.closeTip();\">";
										output=output+"</td>";
									output=output+"</tr>";
								output=output+"</table>";
							output=output+"</td>";
						output=output+"</tr>";
						output=output+"<tr>";
							output=output+"<td>";
								output=output+"<div id='tooltip_insert' style='background-image: url(images/scbg.jpg); padding: 5px;'></div>";
							output=output+"</td>";
						output=output+"</tr>";									
					output=output+"</table>";
				output=output+"</td>";
			output=output+"</tr>";
		output=output+"</table>";
		
		
		return output;	
		
	},
	
	
	getContent: function(com_model){
		
		
		var page="storeViews/ajax/tool_tip.php";
		
		//display_ajax(tip.curTip, page);
		//alert(newTip.innerHTML);
		
		//var that=this;
		
		new Request.JSON({
	
				url: page,
				method: 'get',
				data: {
						"product_name" : escape(com_model),
						"loc" : 'tool_tip'
				},
				
				onComplete: function(jsonObj){
					
					JSONHandler(jsonObj);
					centerElement(this.curTip);
					this.curTip.setStyle('display','block');
																			
				 }.bind(this)
		 }).send();
		
		
	},
	
	openTip: function(){
		//alert(document.getElementById("tool_tip"));
		//closeTip();
		
		
		var newTip=false;	
		var com_model=quickLook.curModel;
		var nT=false;
		if(!tip.curTip){
				
			newTip=new Element('div', {							   
							   		'id':'tool_tip',
									'styles': {	
											'position': 'absolute',
											'display':'block'
										}
							   });
			
			//newTip.innerHTML="TEST ME";
			this.curTip=newTip;
			newTip.innerHTML=this.buildTipHTML();
			document.body.appendChild(newTip);
			nT=true;
			
		}
		
		this.getContent(com_model);
		
		if(nT===false)
			centerElement(this.curTip);
			
		
			
			//this.centerTip(newTip);
		//this.scrollable();
			//tip.tipDrag=new Drag.Move
		
			//
		//}
		//com_model=com_model.replace(/ /,"%20");
		com_model=escape(com_model);//.replace(/#/,"%23");
		
		
		
		
		
			
	}
}





function display_media(media_type, media_file, model){
		//alert(media_file);
		
		//alert(arguments.length);
		var div=document.all? document.all["product_details_main"] : document.getElementById? document.getElementById("product_details_main") : "";
		var output="";
		
		
		output=output+"<a href=\"javascript:openFile('"+media_file+"','tool_image',500,500)\">";
			
			
		
		if(media_type=="image"){
			
			
			if(arguments.length==4)
				output=output+"<img src=\""+arguments[3]+"\" alt=\""+media_type+": "+model+"\"  border=\"0\">";
			else
				output=output+"<img src=\""+media_file+"\" alt=\""+media_type+": "+model+"\"  border=\"0\">";
		
			
			
			//output=output+"<img src=\""+media_file+"\" alt=\""+media_type+": "+model+"\" width=\"230\" height=\"153\" border=\"0\"></a>";
		}
		else if(media_type=="video"){
			output=output+"<center><img src=\"images/FlashIcon.gif\" alt=\"Product Video File\" width=\"183\" height=\"151\" border=\"0\"></center>";
			openFile('play_video.php?com_model='+model+'&media_file='+media_file, media_type, 340, 300)
		}
		else if(media_type=="document"){
			output=output+"<center><img src=\"images/PdfIcon.jpg\" alt=\"Product PDF File\" width=\"150\" height=\"150\" border=\"0\"></center>";
			openFile('view_pdf.php?com_model='+model+'&media_file='+media_file, media_type, 600, 800)
		}
		
		output=output+"</a>"											 
		div.innerHTML=output;
}

function tab_menu(type, com_id){
						
		var page="storeViews/ajax/bottom_details.php?detail_type="+type+"&com_id="+com_id;
		ajaxDetailsBottom(page, type, com_id);
		
}


function ajaxDetailsBottom(page, dtype, com_id){
		//alert(div);
		
	$('product_details_bottom').innerHTML=writeLoader();	
		
	new Request.JSON({
	
			url: page,
			method: 'post',
			data: {
					'detail_type': dtype,
					'com_id': com_id
			},
			
			onComplete: function(jsonObj){
				
				JSONHandler(jsonObj);								
			}
			 
	 }).send();
}


function makeSlider(){
	
	var container=$('com_details_desc');
	var contChild=$('com_details_content');
	
	if(container.getSize().y>=contChild.getSize().y){
		
		var knob=$('knob');
		knob.removeProperty('style');
		$(knob.parentNode).removeProperty('style');
		
		return false;
	}
	
	
	Slider.clickedElement=function(event){
		var dir = this.range < 0 ? -1 : 1;
		var position = event.page[this.axis] - this.element.getPosition()[this.axis] - this.half;
		position = position.limit(-this.options.offset, this.full -this.options.offset);
		
		this.step = Math.round(this.min + dir * this.toStep(position));
		this.checkStep();
		this.end();
		this.fireEvent('tick', position);
	}
	
	
	
	if(container!==null){
	
		var myScrollFx = new Fx.Scroll(container, {
			wait: false
		});
		
		
		 // Create the new slider instance
		new Slider(container, $('knob'), {
			steps: container.getSize().y,
			wheel: true,
			mode: 'vertical',
			onChange: function(step){
				// Everytime the value changes, we change the font of an element
				 myScrollFx.start(0,step);
	
			}
		}).set(0);
	}
	
	container.removeEvents('mousedown');
	
	return true;
	
	
	
}




window.addEvent('domready', function() {
 quickLook.init(); 
});
