function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

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 MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  winName=winName.replace(/\s+/g, "");
  window.open(theURL,winName,features);
}



MM_preloadImages('/images/nav_community_on.gif','/images/nav_townhomes_on.gif','/images/nav_condominiums_on.gif','images/nav_location_on.gif','/images/nav_contact_us_on.gif');

///////////// FLASH /////////////////

// Flash Player Version Detection - Rev 1.5
// Detect Client Browser type
// Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights reserved.
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version = axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;			
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			if ( descArray[3] != "" ) {
				tempArrayMinor = descArray[3].split("r");
			} else {
				tempArrayMinor = descArray[4].split("r");
			}
			var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function writeFlash(src,w,h) {
	
	var requiredMajorVersion = 8;
	var requiredMinorVersion = 0;
	var requiredRevision = 0;

	var hasReqestedVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
	
	if(hasReqestedVersion){
	var flashCode = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab" width="'+w+'" height="'+h+'">' +
	'<param name="movie" value="/flash/'+src+'">' +
	'<param name="quality" value="high">' +	
	'<param name="wmode" value="transparent" />' +	
	'<embed src="/flash/'+src+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+w+'" height="'+h+'" wmode="transparent"></embed>' +
	'</object>';
	document.write(flashCode);
	}else{
	document.write('');
	}

}

var Site = {
	
	currentGallery : '',
	
	galleryOnClick:function(last,next){	
			
		// Close after last item
		if(Site.galleries[Site.currentGallery].length == next){
			tb_remove();
		}
		
	},
	
	galleries:{
		'Avon' : Array(
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0009-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0009-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0010-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0010-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0261-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0261-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0013-Edit-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0013-Edit-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0267-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0267-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0024-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0024-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0038-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0038-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0281-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0281-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0048-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0048-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0289-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0289-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0157-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0157-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0162-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0162-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0166-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0166-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0186-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0186-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0453-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0453-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0251-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0251-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0256-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0256-Edit.jpg"}			
			
		),
		'Bristol':Array(
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0089-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0089-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0096-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0096-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0300-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0300-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0103-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0103-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0339-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0339-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0110-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0110-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0346-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0346-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0142-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0142-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0354-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0354-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0149-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0149-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0367-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0367-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0376-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0376-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0406-Edit-2.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0406-Edit-2.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0415-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0415-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0420-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0420-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0437-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0437-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0210-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0210-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0442-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0442-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0217-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0217-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0224-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0224-Edit.jpg"},
			{thumb: "/images/gallery/townhomes/thumb/080617_EJ_duneroad_0248-Edit.jpg", large: "/images/gallery/townhomes/big/080617_EJ_duneroad_0248-Edit.jpg"}		
			
		)
		
	},
	
	galleryInit:function(){

		this.galleryItems = Array();
		this.currentItem = 0;
		this.currentGallery = '';
		

		if($.browser.msie && typeof document.body.style.maxHeight == 'undefined'){
			$('#gallery-prev img').attr('src','/images/gallery-prev.gif');
			$('#gallery-next img').attr('src','/images/gallery-next.gif');
		}

		$('#gallery-prev img').hover(function(){$(this).css('cursor','pointer');Site.galleryPreview('prev')},function(){Site.galleryPreviewClose('prev')}).click(Site.galleryPrev);
		$('#gallery-next img').hover(function(){$(this).css('cursor','pointer');Site.galleryPreview('next')},function(){Site.galleryPreviewClose('next')}).click(Site.galleryNext);

		var tbody = $('#gallery-images table tbody');
		var tr = $('<tr>');
		
		
		for(k in this.galleries){
			for(i=0;i<this.galleries[k].length;i++){
				var im  = $('<img>').attr('src',this.galleries[k][i].thumb);
				var im2  = $('<img>').attr('src',this.galleries[k][i].large);	
				/*	
				if(i % 5 == 0 && i > 0){
					tbody.append(tr);
					var tr = $('<tr>');
				}
				var atag = $('<a href="#TB_inline?KeepThis=true&amp;height=305&amp;width=507&amp;inlineId=gallery-popup&amp;modal=true"><img src="'+this.galleryItems[i].thumb+'" /></a>');
				var td = $('<td>').append(atag);
				td.find('a').bind('click',{item:i},Site.galleryLoad);
				tr.append(td);		
				*/			
			}
		}

		/*tbody.append(tr);*/
		tb_init($('#gallery-images a'));

	},
	galleryPreview:function(which){
		var g = Site.galleries[Site.currentGallery];
		switch(which){
			case 'prev':
				var p = Site.currentItem-1;
				p = p < 0 ? g.length-1 : p;
				var src = g[p].thumb;
				$('#gallery-prev-image').empty(0).append($('<img>').attr('src',src)).show();
			break;
		
			case 'next':
				var p = Site.currentItem+1;
				p = p > g.length-1 ?  0 : p;
				var src = g[p].thumb;
				$('#gallery-next-image').empty(0).append($('<img>').attr('src',src)).show();
			break;
		}

	},
	galleryPreviewClose:function(which){
		$('#gallery-'+which+'-image').hide();
	},
	galleryNext:function(e){
		var g = Site.galleries[Site.currentGallery];
		var i = Site.currentItem + 1;
		Site.galleryOnClick.apply(this,[Site.currentItem,i]);
		i = i > g.length-1 ? 0 : i;
		Site.currentItem = i;
		
		setTimeout(function(){
			$('#TB_ajaxContent').css({backgroundImage:'url(\''+g[Site.currentItem].large+'\')'});
			Site.galleryPreviewClose('next');
		},100);
	
	},
	galleryPrev:function(e){
		var g = Site.galleries[Site.currentGallery];
		var i = Site.currentItem - 1;
		Site.galleryOnClick.apply(this,[Site.currentItem,i]);
		i = i < 0 ? g.length-1 : i;
		Site.currentItem = i;
		
		setTimeout(function(){
			$('#TB_ajaxContent').css({backgroundImage:'url(\''+g[Site.currentItem].large+'\')'});
			Site.galleryPreviewClose('prev');
		},100);
	},
	galleryLoad:function(e, gallery){
		var event = e;
		var g = Site.galleries[gallery];
		Site.currentGallery = gallery;
		
		if(typeof e  == 'object'){
			Site.currentItem = event.data.item;
		}else{
			Site.currentItem = e;
		}		

		setTimeout(function(){
			$('#TB_ajaxContent').css({backgroundImage:'url(\''+g[Site.currentItem].large+'\')'});			
		},100);
	}
}

///////////// / END FLASH /////////////////
