var FlashWin = null;
var DemoWin = null;
var preloadFlag = false;
var DL = null;
var MonthArray = [ "January","February","March","April","May","June","July","August","September","October","November","December" ];
var DayArray = [ "Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" ];
var Today = new Date();
var NiceDateString = DayArray[Today.getDay()] + "<br>" + MonthArray[Today.getMonth()] + " " + Today.getDate() + ", " + Today.getFullYear();

function PopUpFlash(sourceDoc,winWidth,winHeight) {
   if (FlashWin && FlashWin.open && !FlashWin.closed) { FlashWin.close(); }
   var winLeft = parseInt(screen.width - winWidth - 50);
   var winTop = parseInt(screen.height - winHeight - 90);
   var winProp = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=auto,width="+winWidth+",height="+winHeight+",resizable=yes,top="+winTop+",left="+winLeft;
   FlashWin = window.open(sourceDoc,"FlashWin",winProp);
   FlashWin.focus();
}

function DemoLaunch(sourceDoc,winWidth,winHeight) {
   if (DL && DL.open && !DL.closed) { DL.close(); }
   var winLeft = parseInt((screen.width - winWidth)/2);
   var winTop = parseInt((screen.height - winHeight)/2);
   var winProp = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=auto,width="+winWidth+",height="+winHeight+",resizable=yes,top="+winTop+",left="+winLeft;
   DL = window.open(sourceDoc,"DL",winProp);
   DL.focus();
}

function PopUpDemo() {
   if (DemoWin && DemoWin.open && !DemoWin.closed) { DemoWin.close(); }
   var winLeft = parseInt(screen.width - 790 - 60);
   var winTop = parseInt(screen.height - 550 - 100);
   var winProp = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=auto,width=790,height=550,resizable=yes,top="+winTop+",left="+winLeft;
   DemoWin = window.open("http://www.frameworkmedia.net/default.asp","DemoWin",winProp);
   DemoWin.focus();
}

function MM_effectAppearFade(targetElement, duration, from, to, toggle)
{
	Spry.Effect.DoFade(targetElement, {duration: duration, from: from, to: to, toggle: toggle});
}



function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function getPos(eventObj){
	y = (document.layers) ? eventObj.pageY : document.body.scrollTop+event.clientY
}

function newImage(arg) {
 if (document.images) {
  rslt = new Image();
  rslt.src = arg;
  return rslt;
 }
}

function changeImagesArray(array) {
 if (document.images && (preloadFlag == true)) {
  for (var i=0; i<array.length; i+=2) {
   document[array[i]].src = array[i+1];
  }
 }
}

function changeImages() {
 changeImagesArray(changeImages.arguments);
}


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() { //v9.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) 
  with (document) if (getElementById && ((obj=getElementById(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 hideImageGallery () {
	var bigFinish = function () { MM_showHideLayers('galleryPanel','','hide'); };
	Spry.Effect.DoFade('galleryPanel', {duration: 500, from: 95, to: 0, toggle: false, finish: bigFinish });
	MM_showHideLayers('galleryImage','','hide');
}

function showImageGallery ( newContentUrl, newDivWidth ) {
	//alert(newDivWidth);
	MM_findObj('galleryImage').style.width = newDivWidth+"px";
	MM_findObj('galleryImage').style.marginLeft = ""+(-1*newDivWidth/2)+"px";
	MM_findObj('galleryImage').style.left = "50%";
	if ( navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) < 7 ) {
		MM_findObj('galleryPanel').style.width = document.documentElement.clientWidth+"px";
		MM_findObj('galleryPanel').style.height = document.documentElement.clientHeight+"px";
		
	}
	Spry.Utils.updateContent('galleryImage', newContentUrl);
	var bigFinish = function () { MM_showHideLayers('galleryImage','','show'); };
	Spry.Effect.DoFade('galleryPanel', {duration: 500, from: 0, to: 95, toggle: false, finish: bigFinish });
	return false;
}

function showFlashGallery ( newContentUrl, newDivWidth ) {
	//alert(newDivWidth);
	MM_findObj('galleryImage').style.width = newDivWidth+"px";
	MM_findObj('galleryImage').style.marginLeft = ""+(-1*newDivWidth/2)+"px";
	MM_findObj('galleryImage').style.left = "50%";
	if ( navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) < 7 ) {
		MM_findObj('galleryPanel').style.width = document.documentElement.clientWidth+"px";
		MM_findObj('galleryPanel').style.height = document.documentElement.clientHeight+"px";
		
	}
	var activateFlash = function () { swfobject.registerObject("FlashID"); };
	Spry.Utils.updateContent('galleryImage', newContentUrl  );
	var bigFinish = function () { MM_showHideLayers('galleryImage','','show'); };
	Spry.Effect.DoFade('galleryPanel', {duration: 500, from: 0, to: 95, toggle: false, finish: bigFinish });
	return false;
}



var selected = '';
var preloadFlag = false;

function preloadImages() {
 if (document.images) {
  hdr1_ov = newImage("/images/hdr1_ov.jpg");
  hdr2_ov = newImage("/images/hdr2_ov.jpg");
  hdr3_ov = newImage("/images/hdr3_ov.jpg");
  hdr4_ov = newImage("/images/hdr4_ov.jpg");
  hdr5_ov = newImage("/images/hdr5_ov.jpg");
  hdr2_ov2 = newImage("/images/hdr2_ov2.jpg");
  hdr3_ov2 = newImage("/images/hdr3_ov2.jpg");
  hdr4_ov2 = newImage("/images/hdr4_ov2.jpg");
  hdr5_ov2 = newImage("/images/hdr5_ov2.jpg");
  preloadFlag = true;
  hdr2_sel2_ov = newImage("/images/hdr2_sel2_ov.jpg");
  hdr3_sel2_ov = newImage("/images/hdr3_sel2_ov.jpg");
  hdr4_sel2_ov = newImage("/images/hdr4_sel2_ov.jpg");
  hdr5_sel2_ov = newImage("/images/hdr5_sel2_ov.jpg");
  hdr2_sel_ov2 = newImage("/images/hdr2_sel_ov2.jpg");
  hdr3_sel_ov2 = newImage("/images/hdr3_sel_ov2.jpg");
  hdr4_sel_ov2 = newImage("/images/hdr4_sel_ov2.jpg");
  hdr5_sel_ov2 = newImage("/images/hdr5_sel_ov2.jpg");
 }
 MM_showHideLayers('galleryImage','','hide');
}

var expdate = new Date ();
FixCookieDate (expdate); 
expdate.setTime (expdate.getTime() + ( 30 * 24 * 60 * 60 * 1000)); // 30 days from now 

function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime(); 
  if (skew > 0) 
    date.setTime (date.getTime() - skew);
}



function setCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + escape (value) + 
    ((expires) ? "; expires=" + expdate.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function getCookie (name, value) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break; 
  }
  return "";
}

function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}

function setVisitorID() { 
   if (getCookie('VisitorID')) { 
       var VisitorID = getCookie('VisitorID'); 
   }else{ 
       setCookie('VisitorID',Math.random(),expdate); 
   } 
} 

setVisitorID();

function jumpToPage(pageUrl){
	window.location = pageUrl;
}


//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

// Flash Version Detection Functions
var jsVersion = 1.0;
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;
jsVersion = 1.1;

// JavaScript helper required to detect Flash Player PlugIn version information
function JSGetSwfVer(i){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	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;
			descArray = flashDescription.split(" ");
			tempArrayMajor = descArray[2].split(".");
			versionMajor = tempArrayMajor[0];
			versionMinor = tempArrayMajor[1];
			if ( descArray[3] != "" ) {
				tempArrayMinor = descArray[3].split("r");
			} else {
				tempArrayMinor = descArray[4].split("r");
			}
      		versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
            flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
      	} else {
			flashVer = -1;
		}
	}
	// 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;
	// Can't detect in all other cases
	else {
		
		flashVer = -1;
	}
	return flashVer;
} 
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) 
{
 	reqVer = parseFloat(reqMajorVer + "." + reqRevision);
   	// loop backwards through the versions until we find the newest version	
	for (i=25;i>0;i--) {	
		if (isIE && isWin && !isOpera) {
			versionStr = VBGetSwfVer(i);
		} else {
			versionStr = JSGetSwfVer(i);		
		}
		if (versionStr == -1 ) { 
			return false;
		} else if (versionStr != 0) {
			if(isIE && isWin && !isOpera) {
				tempArray         = versionStr.split(" ");
				tempString        = tempArray[1];
				versionArray      = tempString .split(",");				
			} else {
				versionArray      = versionStr.split(".");
			}
			versionMajor      = versionArray[0];
			versionMinor      = versionArray[1];
			versionRevision   = versionArray[2];
			
			versionString     = versionMajor + "." + versionRevision;   // 7.0r24 == 7.24
			versionNum        = parseFloat(versionString);
        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
			if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) {
				return true;
			} else {
				return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false );	
			}
		}
	}	
	return (reqVer ? false : 0.0);
}



