﻿var timeout = 200;
var closetimer = 0;
var ddmenuitem = 0;
var markers = [];
var map = null;
var geocoder = null;
var path = "";
var pClick;

DEFAULT_ZOOM = 7;

var INIT_POS = {
    lat: -16.773, lng: 124.738
};

SLIDERLENGTH = 116;
MAXZOOM = 17;
MAXZOOMMAP = 17;
MINZOOM = 1;
ZOOMRANGE = MAXZOOM - MINZOOM;
MINZOOMINFOBOX = 6;
MAXZOOMINFOBOX = 17;

var layers2 = new Array();
layers2[0] = true;
layers2[1] = true;
layers2[2] = true;
layers2[3] = true;

var imgA = new Array();

var imgB = new Array();

var more = 0;

var layers = [];
layers[0] = new GLayer("com.panoramio.all");
layers[0].Visible = false;
layers[0].Added = false;
layers[1] = new GLayer("org.wikipedia.en");
layers[1].Visible = false;
layers[1].Added = false;

var imgA2 = new Array();

var imgB2 = new Array();

var layerControl = null;
var moreControl = null;
var showOnMapControl = null;
var showLayerControl = null;

var experiences_page_url = null;
var national_park_page_url = null;
var destinations_page_url = null;
var movie_locations_page_url = null;

var latitude = new Array();
var longitude = new Array();
var address = new Array();
var category = new Array();

var iconName = new Array();
var itemName = new Array();
var infoName = new Array();
var phone = new Array();
var website = new Array();
var summary = new Array();
var itemId = new Array();
var type = new Array();
var name = new Array();
var imageName = new Array();
var url = new Array();

var currentState = "open";

var show_holiday_planner = 0;

function SetupTWAGoogleMap() {
    if (GBrowserIsCompatible()) {
            
        document.getElementById("closeopen").style.background = "url('" + path + "img/map_btn.png')";

        imgA[0] = path + "img/check_blue0.png";
        imgA[1] = path + "img/check_green0.png";
        imgA[2] = path + "img/check_lightOrange0.png";
        imgA[3] = path + "img/check_brown0.png";

        imgB[0] = path + "img/check_blue.png";
        imgB[1] = path + "img/check_green.png";
        imgB[2] = path + "img/check_lightOrange.png";
        imgB[3] = path + "img/check_brown.png";

        BUTTONSRC = path + "img/slider.png";
        SLIDESRC = path + "img/zoom_group.png";

        imgA2[0] = path + "img/checkbox_03.png";
        imgA2[1] = path + "img/checkbox_03.png";

        imgB2[0] = path + "img/checkbox_over_03.png";
        imgB2[1] = path + "img/checkbox_over_03.png";

        layerControl = new LayerControl(["Photos", "Wikipedia"]);
        moreControl = new MoreControl();
        showOnMapControl = new ShowOnMap();
        showLayerControl = new ShowLayerControl(["Experiences", "National Park", "Destinations", "Movie Locations"]);

        map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(INIT_POS.lat, INIT_POS.lng), DEFAULT_ZOOM);
        var control = new CustomZoomControl();
        map.addControl(control, new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(2, 2 + 45)));
        map.addControl(new GOverviewMapControl());
        map.addControl(new ExtMapTypeControl());
        map.addControl(moreControl);
        map.addControl(layerControl);
        map.addControl(showOnMapControl);
        map.addControl(showLayerControl);        
        
//        GEvent.addListener(map, "infowindowclose", function() {
//            alert("Info Window Close");
//        });        
        
        geocoder = new GClientGeocoder();
   
        mgr = new GMarkerManager(map);

        for (var j = 0; j < latitude.length; j++) {     
                    
            var icon = new GIcon();
            icon.image = path + iconName[j];
            icon.iconSize = new GSize(34, 45);
            icon.shadow = "";
            icon.shadowSize = new GSize(1, 1);
            icon.iconAnchor = new GPoint(8, 18);
            icon.infoWindowAnchor = new GPoint(1, 6);
            
            //var icon = MapIconMaker.createLabeledMarkerIcon({ addStar: true, label: "d3", primaryColor: "#00ff00"});

            if (latitude[j] != "" && longitude[j] != "") {
                markers.push(createMarker(
                new GLatLng(parseFloat(latitude[j]), parseFloat(longitude[j])),
                category[j],
                icon,
                1,
                itemName[j],
                infoName[j],
                phone[j],
                website[j],
                summary[j],
                itemId[j],
                type[j],
                imageName[j],
                j));                
            }
            else {
                MakeMarkerByAddress(address[j], category[j], icon, itemName[j], infoName[j], phone[j], website[j], summary[j], itemId[j], type[j], imageName[j], j);                
            }
        }

        mgr.addMarkers(markers, MINZOOMINFOBOX, MAXZOOMINFOBOX);
        mgr.refresh();
        
        var cookie_cur_state = "";
        cookie_cur_state = get_cookie("OpenCloseState");

        if (cookie_cur_state == "close") {            
            document.getElementById('map').style.display = 'none';
            document.getElementById('divContainer').style.height = '10px';
            document.getElementById('mapText').innerHTML = 'Open map';
            
            currentState = "close";
            document.cookie = "OpenCloseState=close;path=/kimberley/";
        }
        else{
            document.cookie = "OpenCloseState=open;path=/kimberley/";
            currentState = "open";
        }                             
    }
}

function openClose() {
    
    if (currentState == "open") {
        currentState = "close";
        document.getElementById('map').style.display = 'none';
        document.getElementById('divContainer').style.height = '10px';
        document.getElementById('mapText').innerHTML = 'Open map';

        document.cookie = "OpenCloseState=close;path=/kimberley/";
    } else {
        currentState = "open";
        document.getElementById('map').style.display = 'block';
        document.getElementById('divContainer').style.height = '452px';
        document.getElementById('mapText').innerHTML = 'Close map';

        document.cookie = "OpenCloseState=open;path=/kimberley/";
    }   
}

function get_cookie(Name) {    
    var search = Name + "="
    var returnvalue = "";
    if (document.cookie.length > 0) {
        var offset = -1;
        offset = document.cookie.indexOf(search)
        // if cookie exists
        if (offset != -1) {
            offset += search.length
            // set index of beginning of value
            end = document.cookie.indexOf(";", offset);
            // set index of end of cookie value
            if (end == -1) end = document.cookie.length;
            returnvalue = unescape(document.cookie.substring(offset, end))
        }
        else returnvalue = "";
    }
    return returnvalue;
}

function MakeMarkerByAddress(addr, title, icon, _itemName, _infoName, _phone, _website, _summary, _itemId,_type,_imgName,_index) {
    if (geocoder) {
        geocoder.getLatLng(
			  addr,
			  function(point) {
			      if (!point) {			        
			      } else {			          
			          markers.push(createMarker(
			          point,
			          title,
			          icon,
			          1,
			          _itemName,
			          _infoName,
			          _phone,
			          _website,
			          _summary,
			          _itemId,
			          _type,
			          _imgName,
			          _index));			          
			      }
			  }
	    );
    }
}

function mopen(id) {
    mcancelclosetime();
    if (ddmenuitem) ddmenuitem.style.display = 'none';
    ddmenuitem = document.getElementById(id);
    ddmenuitem.style.display = 'block';
    if (id == "layer") {
        document.getElementById("morebutton").style.color = "#676767";
        document.getElementById("showonmap").style.color = "#B3B3B3";
    }
    if (id == "showlayer") {
        document.getElementById("showonmap").style.color = "#676767";
        if (more == 0) {
            document.getElementById("morebutton").style.color = "#B3B3B3";
        }
    }
}

function mclose() {
    if (ddmenuitem) ddmenuitem.style.display = 'none';
    if (more == 0) document.getElementById("morebutton").style.color = "#B3B3B3";
    document.getElementById("showonmap").style.color = "#B3B3B3";
}

function mclosetime() {
    closetimer = window.setTimeout(mclose, timeout);

}

function mcancelclosetime() {
    if (closetimer) {
        window.clearTimeout(closetimer);
        closetimer = null;
    }
}

function ShowOnMap() { }

    ShowOnMap.prototype = new GControl();
    ShowOnMap.prototype.initialize = function(map) {
        var container = document.createElement("div");
        container.id = "showonmap";
        container.style.fontSize = "11px";
        container.style.fontWeight = "Bold";
        container.style.textIndent = "0px";
        container.style.fontFamily = "Arial";
        container.style.lineHeight = "29px";
        container.style.color = "#B3B3B3";
        container.style.width = "124px";
        container.style.height = "34px";
        container.style.background = "url('" + path + "img/showmapbg.png')";
        container.style.cursor = "pointer";
        container.style.zIndex = "2";
        container.innerHTML = "<div style=\"text-align:left; padding-left:10px;\">Show on Map</div>";
        map.getContainer().appendChild(container);

        GEvent.addDomListener(container, "mouseover", function() {
            mopen('showlayer');
        }
	   );
        GEvent.addDomListener(container, "mouseout", function() {
            mclosetime();
        }
	   );        

        return container;
    }

ShowOnMap.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(255, 7));
}

function ShowLayerControl(opts) {
    this.opts = opts;
}

ShowLayerControl.prototype = new GControl();
ShowLayerControl.prototype.initialize = function(map) {
    var container = document.createElement("div");
    container.id = "showlayer";
    container.style.border = "0px";
    container.style.fontSize = "11px";
    container.style.fontFamily = "Arial";
    container.style.width = "124px";
    container.style.height = "120px";
    container.style.background = "url('" + path + "img/showmapbgOver.gif') no-repeat";
    container.style.display = "none";
    container.style.paddingTop = "32px";
    container.style.lineHeight = "19px";
    container.style.color = "#676767";
    container.style.zIndex = "1";
    for (var i = 1; i < this.opts.length; i++) {
        if (!layers2[i]) {
            var c = imgA[i];
        }
        else {
            var c = imgB[i];
        }
        container.innerHTML += '<div style="width:124px; height:19px;"><div style="float:left; margin-left:10px; cursor:pointer;"><img id="img' + i + '" src="' + c + '" onclick="toggleLayer2(' + i + ')"/> </div><div style="float:left; padding-top:0px;line-height:16px; margin-left:5px;">' + this.opts[i] + '</div><div style="clear:both;"></div></div>';
    }
    map.getContainer().appendChild(container);

    GEvent.addDomListener(container, "mouseover", function() {
        mcancelclosetime();
    });
    GEvent.addDomListener(container, "mouseout", function() {
        mclosetime();
    });
    return container;
}

ShowLayerControl.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(255, 11));
}

function toggleLayer2(i) {
    var id = "img" + i;
    layers2[i] = !layers2[i];
    if (!layers2[i]) {
        document.getElementById(id).src = imgA[i];
    } else {
        document.getElementById(id).src = imgB[i];
    }
  
    for (var j = 0; j < markers.length; j++) {
        if (name[i] == markers[j].type) {
            if (!layers2[i]) {
                markers[j].hide();
            } else {
                markers[j].show();
            }
        }
    }
    if (name[i] == currentType) {
        map.removeOverlay(currentInfo);
    }
}


function MoreControl() { }

MoreControl.prototype = new GControl();
MoreControl.prototype.initialize = function(map) {
    var container = document.createElement("div");
    container.id = "morebutton";
    container.style.fontSize = "11px";
    container.style.fontWeight = "Bold";
    container.style.textIndent = "0px";
    container.style.fontFamily = "Arial";
    container.style.lineHeight = "29px";
    container.style.color = "#B3B3B3";
    container.style.width = "90px";
    container.style.height = "34px";
    container.style.background = "url('" + path + "img/morebg.png')";
    container.style.cursor = "pointer";
    container.style.zIndex = "2";
    container.innerHTML = "<div style=\"text-align:left; padding-left:10px;\">More...</div>";
    map.getContainer().appendChild(container);

    GEvent.addDomListener(container, "mouseover", function() {
        mopen('layer');
    }
	   );
    GEvent.addDomListener(container, "mouseout", function() {
        mclosetime();
    }
	   );
    return container;
}

MoreControl.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(167, 7));
}

function LayerControl(opts) {
    this.opts = opts;
}


LayerControl.prototype = new GControl();
LayerControl.prototype.initialize = function(map) {
    var container = document.createElement("div");
    container.id = "layer";
    container.style.border = "0px";
    container.style.fontSize = "11px";
    container.style.fontFamily = "Arial";
    container.style.width = "90px";
    container.style.height = "66px";
    container.style.background = "url('" + path + "img/morebgOver.gif') no-repeat";
    container.style.display = "none";
    container.style.paddingTop = "18px";
    container.style.lineHeight = "19px";
    container.style.color = "#676767";
    container.style.zIndex = "1";
    for (var i = 0; i < this.opts.length; i++) {
        if (layers[i].Visible) {
            var c = imgB2[i];
        }
        else {
            var c = imgA2[i];
        }
        container.innerHTML += '<div style="width:90px; height=19px; margin-bottom:3px!important;margin-bottom:0px;"><div style="float:left; margin-left:8px; cursor:pointer;"><img id="img2' + i + '" src="' + c + '" onclick="toggleLayer(' + i + ')" /> </div><div style="float:left; padding-top:0px; line-height:16px; margin-left:5px;">' + this.opts[i] + '</div><div style="clear:both;"></div></div>';
    }
    map.getContainer().appendChild(container);

    GEvent.addDomListener(container, "mouseover", function() {
        mcancelclosetime();
    });
    GEvent.addDomListener(container, "mouseout", function() {
        mclosetime();
    });
    return container;
}

LayerControl.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(167, 25));
}

function toggleLayer(i) {
    if (layers[i].Visible) {
        layers[i].hide();
        more = more - 1;
    }
    else {
        if (layers[i].Added) {
            layers[i].show();
            more = more + 1;
        }
        else {
            map.addOverlay(layers[i]);
            layers[i].Added = true;
            more = more + 1;
        }
    }
    var id2 = "img2" + i;
    if (layers[i].Visible) {
        document.getElementById(id2).src = imgA2[i];
    } else {
        document.getElementById(id2).src = imgB2[i];
    }
    if (more > 0) {
        document.getElementById("morebutton").innerHTML = "<div style=\"text-align:left; padding-left:10px;\">More... (" + more + ") </div>";
        document.getElementById("morebutton").style.color = "#676767";
    } else {
        document.getElementById("morebutton").innerHTML = "<div style=\"text-align:left; padding-left:10px;\">More...</div>";
    }
    layers[i].Visible = !layers[i].Visible;
}

function setzoomlevel(map, zoomlevel) {
    map.setZoom(map.getCurrentMapType() == G_NORMAL_MAP ? Math.min(zoomlevel, MAXZOOMMAP) : zoomlevel);
    if ((currentInfo != null) && (map.getZoom() < MINZOOMINFOBOX)) map.removeOverlay(currentInfo);
};

function CustomZoomControl() { }

CustomZoomControl.prototype = new GControl();

CustomZoomControl.prototype.setSlider = function(zoom) {
    if (map.getZoom() > MAXZOOMMAP) {
        setzoomlevel(map, MAXZOOMMAP);
        return;
    }
    
    var top = Math.round((SLIDERLENGTH / ZOOMRANGE * (zoom - MINZOOM)));
    this.slide.top = (SLIDERLENGTH - top);
    this.button.style.top = (SLIDERLENGTH - top) + "px";
};

CustomZoomControl.prototype.setZoom = function() {
    var z = Math.round(this.slide.top * ZOOMRANGE / SLIDERLENGTH);
    setzoomlevel(this.map, ZOOMRANGE - z + MINZOOM);
    if (this.map.getCurrentMapType() == G_NORMAL_MAP && this.map.getZoom() >= MAXZOOMMAP) {
        this.setSlider(this.map.getZoom())
    }
};

CustomZoomControl.prototype.appendDivs = function(parent, map) {
    var divs = [{
        t: 10, l: 37, w: 22, h: 22, f: "up"
    }
   , {
       t: 34, l: 37, w: 22, h: 22, f: "back"
   }
   , {
       t: 34, l: 12, w: 22, h: 22, f: "left"
   }
   , {
       t: 34, l: 60, w: 22, h: 22, f: "right"
   }
   , {
       t: 59, l: 37, w: 22, h: 22, f: "down"
   }
   , {
       t: 102, l: 39, w: 15, h: 15, f: "zoomin"
   }
   , {
       t: 250, l: 39, w: 15, h: 15, f: "zoomout"
   }
   , ];
    var convert = {
        t: "top", l: "left", w: "width", h: "height"
    };
    var functions = {
        up: function() {
            map.panDirection(0, +1);
        }
      , down: function() {
          map.panDirection(0, -1);

      }
      , left: function() {
          map.panDirection(+1, 0);
      }
      , right: function() {
          map.panDirection(-1, 0);
      }
      , zoomin: function() {
          functions.setzoom(map.getZoom() + 1);
      }
      , zoomout: function() {
          functions.setzoom(map.getZoom() - 1);
      }
      , setzoom: function(newlevel) {
          if (functions.canset(newlevel)) { map.setZoom(newlevel); if ((currentInfo != null) && (map.getZoom() < MINZOOMINFOBOX)) map.removeOverlay(currentInfo); }
      }
      , canset: function(newlevel) {
          var ismap = map.getCurrentMapType() == G_NORMAL_MAP;
          var bad = (newlevel < MINZOOM) || (ismap && newlevel > MAXZOOMMAP) || (!ismap && newlevel > MAXZOOM);
          return !bad
      }
      , back: function() {
          map.returnToSavedPosition();
      }
    };
    for (var d in divs) {
        var div = document.createElement("div");
        div.style.position = "absolute";
        var data = divs[d];
        for (var attr in data) {
            div.style[convert[attr]] = data[attr] + "px";
            div.style.cursor = "pointer";
            div.title = data.f;
            div.onclick = functions[data.f]
        }
        parent.appendChild(div);
    }
};

CustomZoomControl.prototype.initialize = function(map) {
    var that = this;
    this.map = map;
    var agent = navigator.userAgent.toLowerCase();
    if ((agent.indexOf("msie") > -1) && (agent.indexOf("opera") < 1)) {
        this.ie = true
    }
    else {
        this.ie = false
    }
    var container = document.createElement("div");
    container.style.width = "95px";
    container.style.height = "275px";
    if (this.ie) {
        var loader = "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + SLIDESRC + "', sizingMethod='scale');";
        container.innerHTML = '<div style="height:275px; width:95px;' + loader + '" ></div>'
    }
    else {
        container.innerHTML = '<img src="' + SLIDESRC + '" width=95 height=275 >'
    }
    var sliderail = document.createElement("div");
    sliderail.id = "sliderail";
    sliderail.style.position = "absolute";
    sliderail.style.top = "118px";
    sliderail.style.left = "38px";
    sliderail.style.width = "18px";
    sliderail.style.height = "134px";
    container.appendChild(sliderail);
    var stepsize = 120 / ZOOMRANGE;
    for (var i = MINZOOM; i <= MAXZOOM; i++) {
        var d = document.createElement("div");
        d.style.position = "absolute";
        d.style.top = (ZOOMRANGE - i + 1) * stepsize + "px";
        d.style.left = "0px";
        d.style.width = "20px";
        d.style.height = stepsize + "px";
        d.style.cursor = "pointer";
        d.level = i;
        d.onclick = function() {
            setzoomlevel(map, this.level);
        };
        sliderail.appendChild(d);
    }
    this.appendDivs(container, map);
    if (this.ie) {
        var loader = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + BUTTONSRC + "', sizingMethod='image');";
        this.button = document.createElement("div");
        this.button.style.height = "18px";
        this.button.style.width = "18px";  
        this.button.style.filter = loader
    }
    else {
        this.button = document.createElement("img");
        this.button.src = BUTTONSRC;
        this.button.height = 18;
        this.button.width = 18
    }
    sliderail.appendChild(this.button);
    this.slide = new GDraggableObject(this.button, {
        container: sliderail
    }
   );
    map.getContainer().appendChild(container);
    GEvent.addListener(map, "zoomend", function(a, b) {
        that.setSlider(b)
    }
   );
    GEvent.addListener(this.slide, "dragend", function() {
        that.setZoom()
    }
   );
    GEvent.addListener(map, "maptypechanged", function() {
        if (map.getCurrentMapType() == G_NORMAL_MAP) {
            map.setZoom(Math.min(MAXZOOMMAP, map.getZoom()));
            if ((currentInfo != null) && (map.getZoom() < MINZOOMINFOBOX)) map.removeOverlay(currentInfo);
        }
    }
   );
    this.setSlider(map.getZoom());
    return container
};

CustomZoomControl.prototype.getDefaultPosition = function() {
    return new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(7, 7));
};

GMarker.prototype.hide = function ()
	  {
		if (this.getPoint().lat() < 90)
		  try {
			this.savePoint = this.getPoint();
			this.setPoint(new GLatLng(90, 0));
		  } catch(e) {}
	  }
	  
	  GMarker.prototype.show = function ()
	  {
		if (this.getPoint().lat() == 90)
		if (this.savePoint)
		  try {
			this.setPoint(this.savePoint);
			this.savePoint = null;
		  } catch(e) {}
	  }

      function orderOfCreation(marker,b) {
        return 1;
      }

	  function createMarker(point, title, icon, layerNum, itemName, infoName, phone, website, summary, itemId,type,imgName,index) {
	      var marker = new GMarker(point, { title: itemName, icon: icon, zIndexProcess: orderOfCreation });
	      if (layerNum > 0) {
	          var html = '<div style="position:relative;"><table cellpadding="0" cellspacing="0" border="0" style="width:385px;"><tr>' +
    	             '<td height="36" colspan="2" align="left" valign="top" style="font-size:20px;font-weight:bold;">' +
                     itemName + '        </td></tr><tr>' +
    	             '<td colspan="2" valign="top" class="iwbody"><img src="' + imgName + '" alt="" align="right" class="img" />' +
                     '<span style="color:#676767;">';	          
              if (infoName != '')
                  html += 'Name: ' + infoName + '<br />';
              if (phone != '')
                  html += 'Phone Number: ' + phone + '<br />';              
              if (website != '')
                  html += 'Website: <a href="' + website + '" class="iwa">' + website + '</a>         </span><br /><br />';          
              html += summary + '      </td>' +
                     '</tr><tr><td colspan="2" valign="bottom" align="left" style="padding-top:25px;">' +
                     '<img src="' + path + 'img/inforWindows_explorer.jpg" alt="" onclick="PlanPageExplorer(' + index + ');"/>&nbsp;' +
                     '<img src="' + path + 'img/inforWindows_add.jpg" alt="" onclick="AddToPlan(' + itemId  + ');"/></td></tr></table></div>';
                  
	          var infoBoxOptions = {
	              "content": html,
	              "offsetHorizontal": -150,
	              "offsetVertical": -400,
	              "height": 404,
	              "width": 441,
	              "background": "url('" + path + "img/popUp_board.png') no-repeat"
	          };

	          var infoBox = new InfoBox(point, infoBoxOptions, title, latitude[index], longitude[index]);

	          marker.infoBox = infoBox;
	          marker.type = title;

	          GEvent.addListener(marker, "click", function() {
	              if (map.infoBox) {
	                  map.removeOverlay(map.infoBox);
	              }
	              map.infoBox = marker.infoBox;
	              map.addOverlay(map.infoBox);
	              pClick = marker.getPoint();

	              clickMarker(marker);
	          });
	      }
	      return marker;
	  }
	  function AddToPlan(itemId) {
	      HolidayPlaner.addItem(itemId, success);
	  }
	  function success(result, args) {
	      if (document.getElementById('_flashcontent') != null) {

	          var rand = Math.floor(Math.random() * 101);

	          if (show_holiday_planner == 1) {
	              var s1 = new SWFObject("/kimberley/DesktopModules/HolidayPlaner/holiday_planner.swf?c=" + rand.toString(), "sotester", "740", "650", "8", "#FFFFFF");
	              s1.addVariable("itinerary_data", "/kimberley/DesktopModules/HolidayPlaner/Data.ashx?r=" + rand.toString());
	              s1.addVariable("checkregister", "ok");
	              s1.addParam("scale", "noscale");
	              s1.addParam("wmode", "transparent");
	              s1.write("_flashcontent");
	          }
	          else {
	              var s1 = new SWFObject("/kimberley/DesktopModules/HolidayPlaner/holiday_planner.swf?c=" + rand.toString(), "sotester", "0", "0", "8", "#FFFFFF");
	              s1.addVariable("itinerary_data", "/kimberley/DesktopModules/HolidayPlaner/Data.ashx?r=" + rand.toString());
	              s1.addVariable("checkregister", "ok");
	              s1.addParam("scale", "noscale");
	              s1.addParam("wmode", "transparent");
	              s1.write("_flashcontent");
	          }
	      }

	      alert('Successfully added to your Holiday Planner');
	  }
	  function PlanPageExplorer(index) {
	      window.location = url[index];
	  }	  
	  function NavigateToPlanPage(itemId, type) {
	      if (type == 1 && experiences_page_url != null) {
	          window.location = experiences_page_url.replace('iiiiiiiiii', itemId.toString());
	      }
	      else if (type == 2 && national_park_page_url != null) {
	          window.location = national_park_page_url.replace('iiiiiiiiii', itemId.toString());
	      }
	      else if (type == 3 && destinations_page_url != null) {
	          window.location = destinations_page_url.replace('iiiiiiiiii', itemId.toString());
	      }
	      else if (movie_locations_page_url != null) {
	          window.location = movie_locations_page_url.replace('iiiiiiiiii', itemId.toString());
	      }
	  }
	  function LocateItemAndDisplayInfoWindow(item_id) {
	      var index = -1;
	      for(i = 0 ; i < itemId.length; i++)
	        if(itemId[i] == item_id){
	            index = i;
	            break;
	        }                	       
	      if (index != -1) {
	          if (currentInfo != null) map.removeOverlay(currentInfo);
	          map.panTo(new GLatLng(latitude[index], longitude[index]));         
	          clickMarker(markers[index]);	
	      }	      
	  }
        


	  function EndRequest(sender, args) {
	    var t = document.getElementById("title_name");
	    if (t != null){
	          document.title = t.value;    	          	          	          	          	          
	          
//	          Change the header meta data
//	          var metatags = document.getElementsByTagName("meta");    
//	          for(var i = 0;i < metatags.length;i++){
//				var name = metatags[i].getAttribute("name");
//				if(name == "KEYWORDS"){					
//					metatags[i].setAttribute("content",t.value);					
//				}
//	          }
	    }
	  }

	  var currentMarker = null;
      var timeout = null;
      var markerReload = null;
	  function clickMarker(marker) {	    
	    markerReload = marker;
        ReloadMarker();
        if (currentMarker != null) {
              if (currentMarker.getTitle() != marker.getTitle()) {
                  if (currentMarker.type == "National Park") {
                      currentMarker.setImage(path + 'img/parks.png');
                      currentMarker.getIcon().image = path + 'img/parks.png';
                  } else if (currentMarker.type == "Destinations") {
                      currentMarker.setImage(path + 'img/destinations.png');
                      currentMarker.getIcon().image = path + 'img/destinations.png';
                  } else if (currentMarker.type == "Movie Locations") {
                      currentMarker.setImage(path + 'img/movies.png');
                      currentMarker.getIcon().image = path + 'img/movies.png';
                  }
              }
          }
	    currentMarker = marker;	       
	  }
	  function ReloadMarker(){
	    if(!markerReload.isHidden())
	    {
			try{
	        if (markerReload.type == "National Park") {
	              markerReload.setImage(path + 'img/parks_click.png');
	              markerReload.getIcon().image = path + 'img/parks_click.png';
	          } else if (markerReload.type == "Destinations") {
                    markerReload.setImage(path + 'img/destinations_click.png');
                    markerReload.getIcon().image = path + 'img/destinations_click.png';
    	        
	          } else if (markerReload.type == "Movie Locations") {
    	          markerReload.setImage(path + 'img/movies_click.png');
                  markerReload.getIcon().image = path + 'img/movies_click.png';
	          }    
	          clearTimeout(timeout);
	       }catch(e){}
	    }else{
	        timeout = setTimeout("ReloadMarker()",1000);
	    }
	  }
//	  var search = "SkipIntro=";
//	  var skip_intro = "";
//	  if (document.cookie.length > 0) {
//	      var offset = -1;
//	      offset = document.cookie.indexOf(search);
//	      // if cookie exists
//	      if (offset != -1) {
//	          offset += search.length;
//	          // set index of beginning of value
//	          end = document.cookie.indexOf(";", offset);
//	          // set index of end of cookie value
//	          if (end == -1) end = document.cookie.length;
//	          skip_intro = unescape(document.cookie.substring(offset, end));
//	      }
//	      else skip_intro = "";
//	  }

//	  if (skip_intro == "" || skip_intro == "false") {
//	      document.cookie = "SkipIntro=true;path=/kimberley/";
//	      so1.addVariable("SkipIntro", "false");
//	  }
//	  else {
//	      so1.addVariable("SkipIntro", "true");
//	  }