//Google Maps

var tohere_functionpointer;
var fromhere_functionpointer;

function load() 
	{
  	if (GBrowserIsCompatible()) {

      var gmarkers = [];
      var htmls = [];
      var to_htmls = [];
      var from_htmls = [];
      var i=0;

      // A function to create the marker and set up the event window
      function createMarker(point,name,html) {
        var marker = new GMarker(point/*, icon*/);

    	/*
		//To and from links from initial window
		// The info window version with the "to here" form open
        to_htmls[i] = html + '<table width="240" border="0" cellspacing="0" cellpadding="0"><tr><td width="240">Directions: <b>To here</b> - <a href="javascript:fromhere_functionpointer(' + i + ')">From here</a>' +
           '<br>Start address:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
           '<input type="text" SIZE=40 MAXLENGTH=40 name="saddr" id="saddr" value="" /><br>' +
           '<INPUT value="Get Directions" TYPE="SUBMIT">' +
           '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() + 
                  // "(" + name + ")" + 
           '"</td></tr></table>';
        // The info window version with the "to here" form open
        from_htmls[i] = html + '<table width="240" border="0" cellspacing="0" cellpadding="0"><tr><td width="240">Directions: <a href="javascript:tohere_functionpointer(' + i + ')">To here</a> - <b>From here</b>' +
           '<br>End address:<form action="http://maps.google.com/maps" method="get"" target="_blank">' +
           '<input type="text" SIZE=40 MAXLENGTH=40 name="daddr" id="daddr" value="" /><br>' +
           '<INPUT value="Get Directions" TYPE="SUBMIT">' +
           '<input type="hidden" name="saddr" value="' + point.lat() + ',' + point.lng() +
                  // "(" + name + ")" + 
           '"</td></tr></table>';
        // The inactive version of the direction info (with to and from links)
        html = html + '<table width="240" border="0" cellspacing="0" cellpadding="0"><tr><td width="240">Directions: <a href="javascript:tohere_functionpointer('+i+')">To here</a> - <a href="javascript:fromhere_functionpointer('+i+')">From here</a></td></tr></table>';
		*/

		

		// The info window version with the "directions to here" form open
        to_htmls[i] = html + '<table width="200" border="0" cellspacing="0" cellpadding="0"><tr><td width="200">Start address:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
           '<input type="text" SIZE=20 MAXLENGTH=20 name="saddr" id="saddr" value="" /><br>' +
           '<INPUT value="Get Directions" TYPE="SUBMIT">' +
           '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() + 
                  // "(" + name + ")" + 
           '"</td></tr></table>';
		// The inactive version with get directions to here link
        html = html + '<table width="200" border="0" cellspacing="0" cellpadding="0"><tr><td width="200"><a href="javascript:tohere_functionpointer('+i+')">Get Directions</a></td></tr></table>';
		

        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        gmarkers[i] = marker;
        htmls[i] = html;
        i++;
        return marker;
      }

      // functions that open the directions forms
      function tohere(i) {
        gmarkers[i].openInfoWindowHtml(to_htmls[i]);
      }
      function fromhere(i) {
        gmarkers[i].openInfoWindowHtml(from_htmls[i]);
      }
	  
	  tohere_functionpointer = tohere;
	  fromhere_functionpointer = fromhere;

      // Display the map, with some controls and set the initial location 
      var map = new GMap2(document.getElementById("map"));
			map.addControl(new GLargeMapControl3D());
			map.addControl(new GHierarchicalMapTypeControl());
			map.addMapType(G_PHYSICAL_MAP);
			//map.setMapType(G_HYBRID_MAP);
	
			map.setCenter(new GLatLng(53.268463, -2.533454), 13);
			
			map.enableDoubleClickZoom();
			map.enableScrollWheelZoom();
			
			///prevent page scroll
			function wheelevent(e)
			{
				e = window.event
				if (e.preventDefault)
					{
						e.preventDefault()
					}
			e.returnValue = false;
			}
			GEvent.addDomListener(map.getContainer(), "DOMMouseScroll", wheelevent);
			map.getContainer().onmousewheel = wheelevent; 
    
		// Create Icon
		/*var icon = new GIcon();
			icon.image = "http://www.valeparkhomes.co.uk/images/goompin_lemgro.png";
			icon.shadow = "http://www.valeparkhomes.co.uk/images/goompin_shad.png";
			icon.iconSize = new GSize(116, 60);
			icon.shadowSize = new GSize(134, 60);
			icon.iconAnchor = new GPoint(33, 58);
			icon.infoWindowAnchor = new GPoint(0, 0);*/
	
      // Set up  marker with info window
      var point = new GLatLng(53.268463, -2.533454);
      var marker = createMarker(point,'The Catering Agency','<table width="200" border="0" cellspacing="0" cellpadding="0"><tr><td width="200"><strong>The Catering Agency</strong> <br />Oak 6, Winnington Hall, <br />Winnington, <br />Northwich, <br />Cheshire,<br />CW8 4DU</td></tr>')
      map.addOverlay(marker);
	  
	  
	  // 
	 
	  
    }
    // display a warning if the browser was not compatible
    else {
      alert("Sorry, the Google Maps API is not compatible with this browser");
    }
}
//End of Google Maps


//fix for ie6 png

var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])

if (version >= 5.5) 
{
            if(document.body != null && document.body.filters)
{
               for(var i=0; i<document.images.length; i++)
               {
                          var img = document.images[i]
                          var imgName = img.src.toUpperCase()
                          if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
                          {
                                     var imgID = (img.id) ? "id='" + img.id + "' " : ""
                                     var imgClass = (img.className) ? "class='" + img.className + "' " : ""
                                     var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
                                     var imgStyle = "display:inline-block;" + img.style.cssText 
                                     if (img.align == "left") imgStyle = "float:left;" + imgStyle
                                     if (img.align == "right") imgStyle = "float:right;" + imgStyle
                                     if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
                                     var strNewHTML = "<span " + imgID + imgClass + imgTitle
                                     + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
                                     + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                                     + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>" 
                                     img.outerHTML = strNewHTML
                                     i = i-1
                          }
               }
            }
}

//end of fix for ie6 png


//Form Validation

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function YY_checkform() { //v4.66
//copyright (c)1998,2002 Yaromat.com
  var args = YY_checkform.arguments; var myDot=true; var myV=''; var myErr='';var addErr=false;var myReq;
  for (var i=1; i<args.length;i=i+4){
    if (args[i+1].charAt(0)=='#'){myReq=true; args[i+1]=args[i+1].substring(1);}else{myReq=false}
    var myObj = MM_findObj(args[i].replace(/\[\d+\]/ig,""));
    myV=myObj.value;
    if (myObj.type=='text'||myObj.type=='password'||myObj.type=='hidden'){
      if (myReq&&myObj.value.length==0){addErr=true}
      if ((myV.length>0)&&(args[i+2]==1)){ //fromto
        var myMa=args[i+1].split('_');if(isNaN(myV)||myV<myMa[0]/1||myV > myMa[1]/1){addErr=true}
      } else if ((myV.length>0)&&(args[i+2]==2)){
          var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");if(!rx.test(myV))addErr=true;
      } else if ((myV.length>0)&&(args[i+2]==3)){ // date
        var myMa=args[i+1].split("#"); var myAt=myV.match(myMa[0]);
        if(myAt){
          var myD=(myAt[myMa[1]])?myAt[myMa[1]]:1; var myM=myAt[myMa[2]]-1; var myY=myAt[myMa[3]];
          var myDate=new Date(myY,myM,myD);
          if(myDate.getFullYear()!=myY||myDate.getDate()!=myD||myDate.getMonth()!=myM){addErr=true};
        }else{addErr=true}
      } else if ((myV.length>0)&&(args[i+2]==4)){ // time
        var myMa=args[i+1].split("#"); var myAt=myV.match(myMa[0]);if(!myAt){addErr=true}
      } else if (myV.length>0&&args[i+2]==5){ // check this 2
            var myObj1 = MM_findObj(args[i+1].replace(/\[\d+\]/ig,""));
            if(myObj1.length)myObj1=myObj1[args[i+1].replace(/(.*\[)|(\].*)/ig,"")];
            if(!myObj1.checked){addErr=true}
      } else if (myV.length>0&&args[i+2]==6){ // the same
            var myObj1 = MM_findObj(args[i+1]);
            if(myV!=myObj1.value){addErr=true}
      }
    } else
    if (!myObj.type&&myObj.length>0&&myObj[0].type=='radio'){
          var myTest = args[i].match(/(.*)\[(\d+)\].*/i);
          var myObj1=(myObj.length>1)?myObj[myTest[2]]:myObj;
      if (args[i+2]==1&&myObj1&&myObj1.checked&&MM_findObj(args[i+1]).value.length/1==0){addErr=true}
      if (args[i+2]==2){
        var myDot=false;
        for(var j=0;j<myObj.length;j++){myDot=myDot||myObj[j].checked}
        if(!myDot){myErr+='* ' +args[i+3]+'\n'}
      }
    } else if (myObj.type=='checkbox'){
      if(args[i+2]==1&&myObj.checked==false){addErr=true}
      if(args[i+2]==2&&myObj.checked&&MM_findObj(args[i+1]).value.length/1==0){addErr=true}
    } else if (myObj.type=='select-one'||myObj.type=='select-multiple'){
      if(args[i+2]==1&&myObj.selectedIndex/1==0){addErr=true}
    }else if (myObj.type=='textarea'){
      if(myV.length<args[i+1]){addErr=true}
    }
    if (addErr){myErr+='* '+args[i+3]+'\n'; addErr=false}
  }
  if (myErr!=''){alert('The required information is incomplete or contains errors:\t\t\t\t\t\n\n'+myErr)}
  document.MM_returnValue = (myErr=='');
}

//End of Form Validation
