window.addEvent('domready', function()
{



/******************************
Property Types Nav Swaps	
******************************/

var propertyLinks = $$('.propertyTypes a');
var MooFlowProcessing = false;
if(propertyLinks.length > 0){
	propertyLinks.each(function(el, which)
	{
		el.addEvent('click', function()
		{
			if(MooFlowProcessing) { return; }
			
			MooFlowProcessing = true;
			$('selected').removeProperty('id');
			el.setProperty('id', 'selected');
			
			var mooFlow = $('MooFlow')
			mooFlow.empty();
			
			$('explore').getElement('img.exploreImage').remove();
			
			arrayPos = which+1;
			var newImage = new Asset.image(appRoot+explore[arrayPos]);
			newImage.addClass("exploreImage");
			
			newImage.injectInside($('image'));
			
			
			var i = 0;
			$('exploreLink').href = link[which+1]; 
			var baselink = link[which+1].replace(/\?.*/, '');
			coverflow[which+1].each(function(item, loop)
			{
				
				var newLink = new Element('a', {href: baselink+'?PropertyTypeID='+propID[which+1][loop]});
				var newImage = new Asset.image(appRoot + item, {title:caption[which+1][loop]} );
				
				newImage.injectInside(newLink);
				newLink.injectInside(mooFlow);
						
				i++;

			});
					
			var startPos = Math.floor(i/2);
			
			var newMooFlow = new MooFlow($('MooFlow'), {
					stylePath: appRoot + '/css/MooFlow.css',
					reflection: 0.1,
					useSlider: true,
					useAutoPlay: false,
					useCaption: true,
					useResize: false,
					useWindowResize: true,
					useMouseWheel: true,
					useKeyInput: true,
					bgColor: 'transparent',
					startIndex: startPos,
					onStart: function()
					{
						MooFlowProcessing = false;
						realCurrent = this.getCurrent().title;
					},
					onClickView: function(imageObject)
					{
						if(realCurrent == imageObject.title)
						{
							window.location = imageObject.href;
						}
						realCurrent = this.getCurrent().title;							
					},
					onComplete: function() {}
				});	
			
		});	
	});
}
/*************************
Region Nav Swaps	
*************************/
var regionHandles = $$('.island');
var regionLists = $$('.regionList');
if(regionHandles.length>0){
	var NIslider = new Fx.Slide(regionLists[0], {duration:500, transition: Fx.Transitions.Quad.easeOut});
	var SIslider = new Fx.Slide(regionLists[1], {duration:500, transition: Fx.Transitions.Quad.easeOut});

	if(islandParent == 'South Island')
	{
	    NIslider.hide();
	}
	else
	{
	    SIslider.hide();
	}
		
	$('north').getElement('a.island').addEvent('click', function()
		{
			NIslider.slideIn();
			SIslider.slideOut();
			if(Browser.Engine.trident4) { //IE6, hooray
				$('map').runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot + "/userfiles/image/map/northisland.png',sizingMethod='crop')";
			} else {
				$('map').setStyle('background-image', 'url(' + appRoot + '/userfiles/image/map/northisland.png)');
			}
		});
		
		$('south').getElement('a.island').addEvent('click', function()
		{
			NIslider.slideOut();
			SIslider.slideIn();
			if(Browser.Engine.trident4) { //IE6, hooray
				$('map').runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot + "/userfiles/image/map/southisland.png',sizingMethod='crop')";
			} else {
				$('map').setStyle('background-image', 'url(' + appRoot + '/userfiles/image/map/southisland.png)');
			}
			
		});
		
	
	var regionLinks = $$('.regionLink');
	
	regionLinks.each(function(el, i)
	{
		var mapLinks = $$('.mapLink');
		
		el.addEvent('mouseover', function()
		{
			mapLinks[i].addClass('selected');
			mapLinks[i].fireEvent('mouseenter');
			
		});
		
		el.addEvent('mouseout', function()
		{
			var mapLinks = $$('.mapLink');
			mapLinks[i].removeClass('selected');
		});
	});
	
	var northMapLinks = $('northIsland').getElements('a.mapLink');
	var southMapLinks = $('southIsland').getElements('a.mapLink');
	
	var northLinks = $('north').getElements('a.regionLink');
	northLinks.each(function(el, i)
	{
		el.addEvent('click', function()
		{
			swapRegionInfo(regionsNorth, northMapLinks, i);
			//console.log('yo');
		});	
	});
	
	var southLinks = $('south').getElements('a.regionLink');
	southLinks.each(function(el, i)
	{
		el.addEvent('click', function()
		{
			swapRegionInfo(regionsSouth, southMapLinks, i);
			
		});	
	});
	
	
	northMapLinks.each(function(el, i)
	{
		el.addEvent('click', function()
		{
			swapRegionInfo(regionsNorth, northMapLinks, i);
			NIslider.slideIn();
			SIslider.slideOut();
				if(Browser.Engine.trident4) { //IE6, hooray
				$('map').runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot + "/userfiles/image/map/northisland.png',sizingMethod='crop')";
			} else {
				$('map').setStyle('background-image', 'url(' + appRoot + '/userfiles/image/map/northisland.png)');
			}
		});	
	});
	
	
	southMapLinks.each(function(el, i)
	{
		el.addEvent('click', function()
		{
			swapRegionInfo(regionsSouth, southMapLinks, i);
			NIslider.slideOut();
			SIslider.slideIn();
			if(Browser.Engine.trident4) { //IE6, hooray
				$('map').runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot + "/userfiles/image/map/southisland.png',sizingMethod='crop')";
			} else {
				$('map').setStyle('background-image', 'url(' + appRoot + '/userfiles/image/map/southisland.png)');
			}
		});	
	});
	

	function swapRegionInfo(regionArray, mapLinks, i)
	{
		arrayPos = i + 1;
			
		$('regionInfo').empty();
					
		var regionImage = new Asset.image(appRoot + regionArray[arrayPos].image, {title: regionArray[arrayPos].title});
		regionImage.injectInside('regionInfo');
		
		var regionText = new Element('p', {'id': 'regionText'});
		regionText.innerHTML = regionArray[arrayPos].caption;
		regionText.injectInside('regionInfo');
		
		var seeMoreLink = new Element('a', {'id': 'seeMoreLink', 'href':regionArray[arrayPos].href});
		var seeMoreImage;
		if(Browser.Engine.trident4) { //IE6, hooray
			seeMoreImage = new Asset.image(appRoot + '/blank.gif');
			seeMoreImage.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot +  "/userfiles/image/seemore.png',sizingMethod='crop')";
		} else {
			seeMoreImage = new Asset.image(appRoot + '/userfiles/image/seemore.png');
		}
		//seeMoreImage.width = 82;
		//seeMoreImage.height = 26;
		
		if (seeMoreLink) {
			seeMoreImage.injectInside(seeMoreLink);
		} else { 
		    //console.log('seeMoreLink not found'); 
		}
		if ($('regionInfo')) {
			seeMoreLink.injectInside('regionInfo');	
		} else {
		 //console.log('regionInfo not found'); 
		 }
		if(Browser.Engine.trident4) {
			seeMoreImage.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + appRoot +  "/userfiles/image/seemore.png',sizingMethod='crop')";
		}
		var weatherList = $('weather').getElements('li');
		
		$('map').getElements('a.mapLink').each(function(el)
		{
			el.removeClass('selected');
		});
					
		
		mapLinks[i].addClass('selected');
		
		
		weatherList.each(function(el)
		{
			el.setStyle('display', 'none');
		});
		
		var newWeather = $(regionArray[arrayPos].regionCode);
		newWeather.getElement('.regionTitle').innerHTML = regionArray[arrayPos].city;
		newWeather.setStyle('display', 'block');
	}
}
});
