window.addEvent("domready",function(){	
	$("btnZoeken").addEvent("click",function(){
		$("frmZoeken").submit();		
	});
	new OverText($("inpZoeken"));
	if($("submenu")){
		$("submenu").setStyle("opacity",0);	
		$("submenu").setStyle("display","block");				
	}
	if($("text")){
		$("text").setStyle("opacity",0);	
		$("text").setStyle("display","block");
	}
	if($$("#menu li a.selected").length > 0){		
		if($("submenu")) $("submenu").fade(1);
	}		
	if($("text")){ 
		new Fx.Tween($("text"),{
			onComplete:function(){
				if($("frmContact")){
					//$("frmContact").getElement("input").focus();
				}
			}
		}).start("opacity",1);
	}		
	
	
	
	var url = document.location.href.toURI();
	var host = url.get("host");
	
	$$("#menu li a").addEvents({
		"click":function(e){			
			e.stop();
			var a = this;
			if(!a.hasClass("selected")){
				var sel = $$("#menu li a.selected")[0];
				if(sel)	{
					sel.addClass("notselected");				
					$("submenu").fade(0);
				}
				if($("text")) $("text").fade(0);
				var gadoor = true;
				var totaal = $$("#menu li").length;
				var width = 0;
				$$("#menu li").each(function(menu,index){
					if(gadoor){
						if(menu.getElement("a")==a){
							gadoor = false;
						} else {
							width = width + menu.getCoordinates().width;
							menu.clone().inject($("menuCloser"),'before');
						}
					}							
					if(index==totaal-1){						
						var effect2 = new Fx.Tween($$("#menu ul")[0],{
							duration:1500,
							onComplete:function(){
								if(sel)	a.addClass("selected2");
								document.location.href = a.get("href");
							}
						}).start("margin-left",-width);
					}
				});						
			}
		}
	});	
	var footerLinks = $$(".footerCol a");
	footerLinks.addEvents({
		"click":function(e){			
			if(e)e.stop();
			var a = this;
			var slide = false;
			var first = false;
			var keuze = a.get("href").toURI().get("directory").split("/")[2];
			if(a.hasClass("kop")){				
				var soort = "kop";
			} else {
				var soort = "sub";
			}
			if($$("#menu li a.selected").length == 0){
				slide = true;
			} else {
				if($$("#menu li a.selected")[0].get("href").toURI().get("directory").split("/")[2]!=keuze){
					slide = true;
				} else {
					first = true;
				}				
			}			
			
			var sel = $$("#menu li a.selected")[0];
			if(sel&&!first)	{
				sel.addClass("notselected");				
				$("submenu").fade(0);
			}
			if($("text")) $("text").fade(0);
			var gadoor = true;
			var totaal = $$("#menu li a").length;
			var width = 0;
			$$("#menu li a").each(function(menu,index){
				if(gadoor){
					if(menu.get("href").toURI().get("directory").split("/")[2]==keuze){
						gadoor = false;							
					} else {
						width = width + menu.getParent("li").getCoordinates().width;
						menu.getParent("li").clone().inject($("menuCloser"),'before');
					}
				}							
				if(index==totaal-1){						
					var effect2 = new Fx.Tween($$("#menu ul")[0],{
						duration:1500,
						onComplete:function(){
							if(sel)	{
								$$("#menu li a").each(function(ell){
									if(ell.get("href").toURI().get("directory").split("/")[2]==keuze){
										ell.addClass("selected2");
									}
								});									
							}
							document.location.href = a.get("href");
						}
					}).start("margin-left",-width);
				}
			});
		}
	});
	if($("content").hasClass("submenu")) $("main").setStyle("background-image","none");
	if($("rightCol")){
		if($("content").getCoordinates().height<$("rightCol").getCoordinates().height){
			$("content").setStyle("height",$("rightCol").getCoordinates().height-4);
			$("margin8").setStyle("height",$("rightCol").getCoordinates().height);		
		} else if($("content").getCoordinates().height<$("rightCol").getCoordinates().height){
			$("rightCol").setStyle("height",$("content").getCoordinates().height+4);
			$("margin8").setStyle("height",$("content").getCoordinates().height);
		}
	}
	
	$$("#text div.right").each(function(div){
		var p = $("text").getFirst("p");
		
		/*if(p.match('<embed') && p.getChildren().length == 1) {
			var p2 = $("text").getElements("p")[1];
			var clear = div.getNext("div");
			div.dispose().inject(p2,'top');
			clear.dispose().inject(p2,'bottom');
		} else if(p.get('html').indexOf('<embed') == 0 && p.getChildren().length > 1) {
			var clear = div.getNext("div");
			div.dispose().inject(p.getChildren()[1],'after');
			clear.dispose().inject(p.getChildren()[1],'bottom');
		} else {
			var clear = div.getNext("div");
			div.dispose().inject(p,'top');
			clear.dispose().inject(p,'bottom');
		}*/
		var html = p.get('html');
		if(html.contains('<embed') || html.contains('<EMBED')) {
			if(p.getChildren().length == 1) {
				div.dispose().inject(p, 'after');
			} else {
				if(html.indexOf('<embed') == 0 || html.indexOf('<EMBED') == 0) {

					div.setStyle('margin-top', '20px');
					div.dispose().inject(p.getChildren()[0], 'after');
				}
			}
		} else {
			div.setStyle('margin-top', '5px');
			div.dispose().inject(p, 'before');	
		}
	});	
	
	$$("#frmContact input[type=text],#frmContact input[type=radio], #frmContact textarea").addEvents({
		"focus":function(){
			this.getParent("div").addClass("focus");
		},
		"blur":function(){
			this.getParent("div").removeClass("focus");
		}
	});	
	if($("frmContact")){
		new Form.Validator($("frmContact"));
	}	
	if($("frmDownload")){
		new Form.Validator($("frmDownload"));
	}
	if(url.getData("keuze")!=null){
		$$("#buttons a").each(function(a){
			if(a.get("href").toURI().getData("keuze")==url.getData("keuze")){
				a.addClass("selected");
			}
		});
	}
	$$(".continent").addEvents({
		"mouseenter":function(){
			this.addClass("hover");
		},
		"mouseleave":function(){
			this.removeClass("hover");
		},
		"click":function(){
			showCon(false,this.get("id").split("_")[1],"",this.get("title"));
		}
	});
	$$(".pin").each(function(pin){
		pin.store("top",pin.getStyle("top").toInt());
		pin.store("left",pin.getStyle("left").toInt());
		pin.addEvents({
			"mouseenter":function(){
				pin.setStyle("z-index",5);
				pin.morph({
					"width":32,
					"height":41,
					"top":pin.retrieve("top") - 14,
					"left":pin.retrieve("left") - 5
				});
				$("overlay_"+pin.get("id").split("_")[1]).addClass("hover");
			},
			"mouseleave":function(){
				pin.setStyle("z-index",0);
				pin.morph({
					"width":20,
					"height":26,
					"top":pin.retrieve("top"),
					"left":pin.retrieve("left")
				});
				$("overlay_"+pin.get("id").split("_")[1]).removeClass("hover");
			},
			"click":function(){				
				showCon(pin,pin.get("id").split("_")[1],pin.get("title"),pin.get("data-continent"));
			}
		});
	});
	$$("table").removeProperty("align");
	$$("#text a").addEvent("click",function(e){
		var item = this;
		footerLinks.each(function(item2){
			if(item.get("href").toURI().toString()==item2.get("href").toURI().toString()){
				if(e)e.stop();
				item2.fireEvent("click");
			}
		});
	});
	var host = document.location.href.toURI().get("host");
	function showCon(pin,c,l,t){
		if(!t) t = c;
		if(!$("con_"+c)){
			$$(".dealer_overlay").setStyle("z-index",10);
			$$(".dealer_overlay div, .dealer_overlay h2").setStyle("opacity",0.3);
			var d = new Element("div")
			.addClass("dealer_overlay")
			.set("id","con_"+c)
			.inject($("content"));				
			d.makeDraggable({
				container:$("content")
			});
			d.setStyle("z-index",11);
			d.addEvent("mousedown",function(){
				$$(".dealer_overlay").setStyle("z-index",10);
				$$(".dealer_overlay div, .dealer_overlay h2").setStyle("opacity",1);
				$$(".dealersPerCountry div, .dealersPerCountry h2").setStyle("opacity",0.3);
				d.setStyle("z-index",11);
				//d.getElements("a,h2").setStyle("opacity",1);			
			});
			var h2 = new Element("h2").set("text",t).inject(d);
			var close = new Element("a")
			.set("href","#")
			.set("text","X")
			.addClass("closer")
			.inject(d);
			close.addEvent("click",function(){
				new Fx.Tween(d,{
					onComplete:function(){
						d.destroy();
					}
				}).start("opacity",0);
			});
			var p2 = new Element("div").setStyles({"position":"absolute","right":40,"top":15}).set("class","paging").inject(d);
			var e = new Element("div").setStyles({"padding":"0 20px 0 15px","height":268,"overflow":"hidden"}).inject(d);
			d.setStyles({"opacity":0,"display":"block"});
			d.fade(1);
			new Request.JSON({
				url:"http://"+host+"/includes/getLanden.asp",
				onComplete:function(response){
					if(response){
						var results = response.results;
						results.each(function(result,index2){
							var conn = new Element("div").addClass("blok").inject(e);
							var f = new Element("a").set("text",result.land).set("href","#").inject(conn);
							if(result.land.toLowerCase() == l.toLowerCase()) f.addClass("selected");
							f.addEvent("click",function(z){
								z.stop();
								if(!$("land_"+f.get("text"))){
									$$(".dealer_overlay").setStyle("z-index",10);
									$$(".dealer_overlay div, .dealer_overlay h2").setStyle("opacity",0.3);
									var dd = new Element("div")
									.addClass("dealer_overlay")
									.addClass("dealersPerCountry")
									.set("id","land_"+f.get("text"))
									.setStyle("z-index",11)
									.inject($("content"));	
									dd.makeDraggable({
										container:$("content")
									});
									dd.addEvent("mousedown",function(){
										$$(".dealer_overlay").setStyle("z-index",10);
										$$(".dealer_overlay div, .dealer_overlay h2").setStyle("opacity",0.3);
										dd.setStyle("z-index",11);
										dd.getElements("div,h2").setStyle("opacity",1);
									});
									var h22 = new Element("h2").set("text",this.get("html")).inject(dd);
									var close2 = new Element("a")
									.set("href","#")
									.set("text","X")
									.setStyle("opacity",1)
									.addClass("closer")
									.inject(dd);
									close2.addEvent("click",function(){
										new Fx.Tween(dd,{
											onComplete:function(){
												dd.destroy();												
											}
										}).start("opacity",0);
										$$(".dealer_overlay div, .dealer_overlay h2").setStyle("opacity",1);
									});
									var p = new Element("div").setStyles({"position":"absolute","right":40,"top":15}).set("class","paging").inject(dd);
									var ee = new Element("div").setStyles({"padding":"0 20px 0 15px","height":268,"overflow":"hidden"}).inject(dd);
									dd.setStyles({"opacity":0,"display":"block"});
									dd.fade(1);
									new Request.JSON({
										url:"http://"+host+"/includes/getDealers.asp",
										onComplete:function(response){
											var results2 = response.results;
											var table = new HtmlTable();
											results2.each(function(result2,index){
												var u = "http://"+host+"/default.asp?land=" + land + "&subject=pagina&keuze=contact&parent=dealers&dealer=" + result2.volgnr;
												table.push([new Element("a").set("href",u).set("html",result2.woonplaats), new Element("a").set("href",u).set("html",result2.bedrijf)]);												
											});											
											table.inject(ee);
											var pages = Math.ceil(ee.getScrollSize().y / 268);
											if(pages>1){
												var vorige = new Element("a").set("href","#").set("text","<").inject(p);
												var volgende = new Element("a").set("href","#").set("text",">");
												vorige.addClass("disabled");															
												for(x=0;x<pages;x++){
													var q = new Element("a").set("href","#").addClass("pag").set("text",x+1).inject(p);
													if(x==0) q.addClass("selected");
													q.addEvent("click",function(v){
														if(v)v.stop();
														p.getElements("a").removeClass("selected");
														this.addClass("selected");
														if(p.getElement("a.selected").getPrevious("a.pag")==null){
															vorige.addClass("disabled");
														} else {
															vorige.removeClass("disabled");
														}
														if(p.getElement("a.selected").getNext("a.pag")==null){
															volgende.addClass("disabled");
														} else {
															volgende.removeClass("disabled");
														}
														var page = this.get("text");
														new Fx.Scroll(ee).start(0,268*(page.toInt()-1));
													});
												}
												volgende.inject(p);
												vorige.addEvent("click",function(h){
													h.stop();
													volgende.removeClass("disabled");
													if(p.getElement("a.selected").getPrevious("a.pag")){
														p.getElement("a.selected").getPrevious("a.pag").fireEvent("click");
													}
													if(p.getElement("a.selected").getPrevious("a.pag")==null){
														vorige.addClass("disabled");
													}
												});
												volgende.addEvent("click",function(h){
													h.stop();
													vorige.removeClass("disabled");
													if(p.getElement("a.selected").getNext("a.pag")){
														p.getElement("a.selected").getNext("a.pag").fireEvent("click");
													}
													if(p.getElement("a.selected").getNext("a.pag")==null){
														volgende.addClass("disabled");
													}
												});
											}
											new Element("div").setStyle("height",300).inject(ee);
										}
									}).get({'land':h22.get("html")});
								}
							});
							new Element("br").inject(conn);
							if(index2==results.length-1){
								var pages2 = Math.ceil(e.getScrollSize().y / 268);
								if(pages2>1){
									var vorige2 = new Element("a").set("href","#").set("text","<").inject(p2);
									var volgende2 = new Element("a").set("href","#").set("text",">");
									vorige2.addClass("disabled");															
									for(x=0;x<pages2;x++){
										var q2 = new Element("a").set("href","#").addClass("pag").set("text",x+1).inject(p2);
										if(x==0) q2.addClass("selected");
										q2.addEvent("click",function(v){
											if(v)v.stop();
											p2.getElements("a").removeClass("selected");
											this.addClass("selected");
											if(p2.getElement("a.selected").getPrevious("a.pag")==null){
												vorige2.addClass("disabled");
											} else {
												vorige2.removeClass("disabled");
											}
											if(p2.getElement("a.selected").getNext("a.pag")==null){
												volgende2.addClass("disabled");
											} else {
												volgende2.removeClass("disabled");
											}
											var page2 = this.get("text");
											new Fx.Scroll(e).start(0,268*(page2.toInt()-1));
										});
									}
									volgende2.inject(p2);
									vorige2.addEvent("click",function(h){
										h.stop();
										volgende2.removeClass("disabled");
										if(p2.getElement("a.selected").getPrevious("a.pag")){
											p2.getElement("a.selected").getPrevious("a.pag").fireEvent("click");
										}
										if(p2.getElement("a.selected").getPrevious("a.pag")==null){
											vorige2.addClass("disabled");
										}
									});
									volgende2.addEvent("click",function(h){
										h.stop();
										vorige2.removeClass("disabled");
										if(p2.getElement("a.selected").getNext("a.pag")){
											p2.getElement("a.selected").getNext("a.pag").fireEvent("click");
										}
										if(p2.getElement("a.selected").getNext("a.pag")==null){
											volgende2.addClass("disabled");
										}
									});
								}
								new Element("div").setStyle("height",300).inject(e);
							}
						});
					}
				}
			}).get({'continent':c});
		}
	}
	
	$$("embed").each(function(item){
		embed = item;
        var new_embed;
        // everything but Firefox & Konqueror
        if(embed.outerHTML) {
			var html = embed.outerHTML;
            // replace an existing wmode parameter
            if(html.match(/wmode\s*=\s*('|")[a-zA-Z]+('|")/i))
                new_embed = html.replace(/wmode\s*=\s*('|")window('|")/i,"wmode='opaque'");
            // add a new wmode parameter
            else 
                new_embed = html.replace(/<embed\s/i,"<embed wmode='opaque' ");
            // replace the old embed object with the fixed version
            embed.insertAdjacentHTML('beforeBegin',new_embed);
            embed.parentNode.removeChild(embed);
        } else {
            // cloneNode is buggy in some versions of Safari & Opera, but works fine in FF
            new_embed = embed.cloneNode(true);
            if(!new_embed.getAttribute('wmode') || new_embed.getAttribute('wmode').toLowerCase()=='window')
                new_embed.setAttribute('wmode','opaque');
            embed.parentNode.replaceChild(new_embed,embed);
        }
	});	
});	
