/*********************
//* jQuery Multi Level CSS Menu #2- By Dynamic Drive: http://www.dynamicdrive.com/
//* Last update: Nov 7th, 08': Limit # of queued animations to minmize animation stuttering
//* Menu avaiable at DD CSS Library: http://www.dynamicdrive.com/style/
*********************/


/*********************
//* SETTING COLUMN HEIGHTS EQUAL TO FILL REST OF PAGE
*********************/

$(function() {
   	var fixHeight = function() {
	var VariablePageHeight = $(this).height();
	//var Page = document.getElementsByName('MainPageQuote');
	//alert(Page);
	if($("div.MainPageQuote").length > 0)	
		{
		//alert("this is the main page");	
		$('.ContentWrapper').height(VariablePageHeight-407);
		}
		else {
		$('.ContentWrapper').height(VariablePageHeight-310);
		//alert("this is not the main page");	
		}
  	};
  	fixHeight();
//$(document).ready('load', fixHeight);
$(document).ready(function() {   
fixHeight(); 
});

$(window).resize(function() {   
fixHeight(); 
});


function setEqualHeight(columns)   
 {   
 var tallestcolumn = 0;   
 columns.each(   
 function()   
 {   
 currentHeight = $(this).height();   
 if(currentHeight > tallestcolumn)   
 {   
 tallestcolumn  = currentHeight;   
 }   
 }   
 );   
 columns.height(tallestcolumn);   
 }   
 
$(document).ready(function() {   
setEqualHeight($(".ContentWrapper > div")); 
});

$(window).resize(function() {   
setEqualHeight($(".ContentWrapper > div")); 
});

//height of top section is 196; $(this) returns the whole browser height so I need to subtract 2X196

//alert($(this).height());
//alert($(".MainContentFull").height());
//alert($(".MainHolder").height());
//alert($(window).height());
//var test = $(this);
//var divHeight = $(this).height();
//var newDivHeight = divHeight - 392;
//$(this).height(newDivHeight);
//alert(newDivHeight);
//alert($(this).height());


/*********************
//* FUNCTION TO ADD A "GO BACK TO TOP OF THE PAGE" LINK IF THE PAGE HAS A SCROLL BAR
*********************/

function SetBackToTop() 
{
//alert($(document).height());
//alert($(this).height());

var MainHeight = $(document).height();
var ViewPortHeight = $(window).height()+5;
if (ViewPortHeight > MainHeight)
{
//	alert("there should NOT be a scroll bar");
	//$('.BacktoTop').css("visibility", "hidden");
}else{
	//$('.BacktoTop').css("visibility", "visible");	
	//alert($(document).height());
//	alert("there should be a scroll bar");
	var NewPosition = 17 + "px";
	$('MainHolder').css("margin-left", NewPosition);
//	var BottomShadowTop = MainHeight-7;
	//$('.BottomShadow').css({'position':'absolute','top':BottomShadowTop});
	//$('.BottomShadow').css("visibility", "hidden")
}
}
$(document).ready(function(){
SetBackToTop();
});

$(window).resize(function(){
SetBackToTop();
});

//End of Test Function2

//var div = $('.ContentWrapper');
//$('.ContentWrapper').css("min-height", newDivHeight +'px');
//$(this).height(newDivHeight);
//alert($(this).height());
  
  
});


//function test(){
//	var divWrapper = window.document.getElementsByName('MainHolder');
//	if(divWrapper != null)
//	{
	//		alert("found div");
			//alert(divWrapper.currentStyle.height);
	//		alert(divWrapper.offsetHeight);
	//		alert(document.documentElement.clientHeight);
	//		var divHeight = divWrapper.currentStyle.height;
	//		var updatedHeight = (divHeight - 187) + 'px';
	//		divWrapper.currentStyle.height = updatedHeight + 'px';

//			}
//else
//	{		alert("No Div found!")
	//	}		
//}

//window.onload = function() {test();} 

/*********************
//* MASTER HORIZONTAL NAVIGATION MENU
*********************/

//Specify full URL to down and right arrow images (23 is padding-right to add to top level LIs with drop downs):
var arrowimages={down:['downarrowclass', 'http://test.fdmsoft.com/NewFDM/images/down.gif', 0], right:['rightarrowclass', 'http://test.fdmsoft.com/NewFDM/images/right.gif']}

var jqueryslidemenu={

animateduration: {over: 200, out: 100}, //duration of slide in/ out animation, in milliseconds

buildmenu:function(menuid, arrowsvar){
	jQuery(document).ready(function($){
		var $mainmenu=$("#"+menuid+">ul")
		var $headers=$mainmenu.find("ul").parent()
		$headers.each(function(i){
			var $curobj=$(this)
			var $subul=$(this).find('ul:eq(0)')
			this._dimensions={w:this.offsetWidth, h:this.offsetHeight, subulw:$subul.outerWidth(), subulh:$subul.outerHeight()}
			this.istopheader=$curobj.parents("ul").length==1? true : false
			$subul.css({top:this.istopheader? this._dimensions.h+"px" : 0})
//			$curobj.children("a:eq(0)").css(this.istopheader? {paddingRight: arrowsvar.down[2]} : {}).append(
//				'<img src="'+ (this.istopheader? arrowsvar.down[1] : arrowsvar.right[1])
//				+'" class="' + (this.istopheader? arrowsvar.down[0] : arrowsvar.right[0])
//				+ '" style="border:0;" />'
//			)
			$curobj.hover(
				function(e){
					var $targetul=$(this).children("ul:eq(0)")
					this._offsets={left:$(this).offset().left, top:$(this).offset().top}
					var menuleft=this.istopheader? 0 : this._dimensions.w
					menuleft=(this._offsets.left+menuleft+this._dimensions.subulw>$(window).width())? (this.istopheader? -this._dimensions.subulw+this._dimensions.w : -this._dimensions.w) : menuleft
					if ($targetul.queue().length<=1) //if 1 or less queued animations
						$targetul.css({left:menuleft+"px", width:this._dimensions.subulw+'px'}).slideDown(jqueryslidemenu.animateduration.over)
				},
				function(e){
					var $targetul=$(this).children("ul:eq(0)")
					$targetul.slideUp(jqueryslidemenu.animateduration.out)
				}
			) //end hover
		}) //end $headers.each()
		$mainmenu.find("ul").css({display:'none', visibility:'visible'})
	}) //end document.ready
}
}

//build menu with ID="myslidemenu" on page:
jqueryslidemenu.buildmenu("myslidemenu", arrowimages)


/*********************
//* HORIZONTAL SUB NAVIGATION BAR (TITLENAV)
*********************/

var jqueryslidemenu2={

animateduration: {over: 200, out: 100}, //duration of slide in/ out animation, in milliseconds

buildmenu:function(menuid){
	jQuery(document).ready(function($){
		var $mainmenu=$("#"+menuid+">ul")
		var $headers=$mainmenu.find("ul").parent()
		$headers.each(function(i){
			var $curobj=$(this)
			var $subul=$(this).find('ul:eq(0)')
			this._dimensions={w:this.offsetWidth, h:this.offsetHeight, subulw:$subul.outerWidth(), subulh:$subul.outerHeight()}
			this.istopheader=$curobj.parents("ul").length==1? true : false
			$subul.css({top:this.istopheader? this._dimensions.h+"px" : 0})
			$curobj.hover(
				function(e){
					var $targetul=$(this).children("ul:eq(0)")
					this._offsets={left:$(this).offset().left, top:$(this).offset().top}
					var menuleft=this.istopheader? 0 : this._dimensions.w
					menuleft=(this._offsets.left+menuleft+this._dimensions.subulw>$(window).width())? (this.istopheader? -this._dimensions.subulw+this._dimensions.w : -this._dimensions.w) : menuleft
					if ($targetul.queue().length<=1) //if 1 or less queued animations
						$targetul.css({left:menuleft+"px", width:this._dimensions.subulw+'px'}).slideDown(jqueryslidemenu2.animateduration.over)
				},
				function(e){
					var $targetul=$(this).children("ul:eq(0)")
					$targetul.slideUp(jqueryslidemenu2.animateduration.out)
				}
			) //end hover
		}) //end $headers.each()
		$mainmenu.find("ul").css({display:'none', visibility:'visible'})
	}) //end document.ready
}
}

//build menu with ID="myslidemenu" on page:
jqueryslidemenu2.buildmenu("myslidemenu2")



/*********************
//* FORM JAVASCRIPT
*********************/

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_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}


/*********************
//* SETTING ACITVE LINK STYLES
*********************/

function ActiveLink() {
	var $Title = document.title;
//	alert($Title);
		
//* FDM SOFTWARE
if($Title=="FDM Software Product Vision and Development Strategy")
	{
	document.getElementById('Dev').className = 'Active';
			}
if($Title=="FDM Software - The FDM Advantage")
	{
	document.getElementById('Advantage').className = 'Active';
			}
if($Title=="FDM Software Contact Information")
	{
	document.getElementById('Contact').className = 'Active';
			}
if($Title=="FDM Software Careers")
	{
	document.getElementById('Careers').className = 'Active';
			}
if($Title=="FDM Software Careers - Hiring")
	{
	document.getElementById('Careers').className = 'Active';
	document.getElementById('TitleCareers').className = 'ActiveSubMenu';
			}
//* FDM SOFTWARE / Careers
if($Title=="FDM Software Careers - Sales Marketing Manager")
	{
	document.getElementById('Careers').className = 'Active';
	document.getElementById('Position1').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Careers - Proposals Coordinator")
	{
	document.getElementById('Careers').className = 'Active';
	document.getElementById('Position2').className = 'ActiveSubMenu';
			}
			
if($Title=="FDM Software Careers - Client Services")
	{
	document.getElementById('Careers').className = 'Active';
	document.getElementById('Position3').className = 'ActiveSubMenu';
			}
			
if($Title=="FDM Software Careers - Professional Services Developer")
	{
	document.getElementById('Careers').className = 'Active';
	document.getElementById('Position4').className = 'ActiveSubMenu';
			}
			
//* SOLUTIONS
if($Title=="FDM Software Computer Aided Dispatch for Fire & EMS")
	{
	document.getElementById('CAD').className = 'Active';
	document.getElementById('TitleCAD').className = 'ActiveSubMenu';
			}			
if($Title=="FDM Software Records Management System for Fire & EMS")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('TitleRMS').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Mapping & Analysis for Fire & EMS")
	{
	document.getElementById('Map').className = 'Active';
	document.getElementById('TitleMapping').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Emergency Reporting")
	{
	document.getElementById('FDMrb').className = 'Active';
			}
if($Title=="FDM Software System Management Utilities")
	{
	document.getElementById('Util').className = 'Active';
	document.getElementById('TitleUtilities').className = 'ActiveSubMenu';
			}

//* SOLUTIONS / Computer Aided Dispatch
if($Title=="FDM CAD - Response Logic")
	{
	document.getElementById('CAD').className = 'Active';
	document.getElementById('ResponseLogic').className = 'ActiveSubMenu';
			}
if($Title=="FDM Mobile CAD")
	{
	document.getElementById('CAD').className = 'Active';
	document.getElementById('MobileCAD').className = 'ActiveSubMenu';
			}
if($Title=="FDM CAD - FAQ's")
	{
	document.getElementById('CAD').className = 'Active';
	document.getElementById('CADFAQ').className = 'ActiveSubMenu';
			}

//* SOLUTIONS / Records Management System

if($Title=="FDM RMS - Modules")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('RMS_Modules').className = 'ActiveSubMenu';
			}
			
if($Title=="FDM Mobile RMS")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('MobileRMS').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - FAQs")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('RMSFAQ').className = 'ActiveSubMenu';
			}

//* SOLUTIONS / Records Management System / Modules
if($Title=="FDM RMS - Modules - Asset Management")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('AM').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Fitness Wellness")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('FIT').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Hydrants")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('HYD').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Incidents")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('INC').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Inspections")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('INS').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Permits")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('PMT').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Personnel")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('PRS').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Preventative Maintenance")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('PM').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Properties")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('PRF').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Roster")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('RST').className = 'ActiveSubMenu';
			}
if($Title=="FDM RMS - Modules - Training")
	{
	document.getElementById('RMS').className = 'Active';
	document.getElementById('TRN').className = 'ActiveSubMenu';
			}

//* SOLUTIONS / Mapping & Analysis
if($Title=="FDM Software GIS Analyst")
	{
	document.getElementById('Map').className = 'Active';
	document.getElementById('GISA').className = 'ActiveSubMenu';
			}
if($Title=="FDM GIS Analyst - FAQs")
	{
	document.getElementById('Map').className = 'Active';
	document.getElementById('GISAFAQ').className = 'ActiveSubMenu';
			}

//* SOLUTIONS / Utilities
if($Title=="FDM Software Utilities - Upgrade Manager")
	{
	document.getElementById('Util').className = 'Active';
	document.getElementById('Upgrade').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Utilities - FDM eBizService")
	{
	document.getElementById('Util').className = 'Active';
	document.getElementById('eBiz').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Utilities - FDM eSync")
	{
	document.getElementById('Util').className = 'Active';
	document.getElementById('eSync').className = 'ActiveSubMenu';
			}


//* NEWS & EVENTS 
if($Title=="FDM Software - News Releases 2010")
	{
	document.getElementById('News').className = 'Active';
	document.getElementById('2010').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Case Studies")
	{
	document.getElementById('CaseStudies').className = 'Active';
			}
if($Title=="FDM Software FDM eNews")
	{
	document.getElementById('eNews').className = 'Active';
			}
if($Title=="FDM Software Events")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('TitleEvents').className = 'ActiveSubMenu';
			}
			
//* NEWS & EVENTS / Events
if($Title=="FDM Software Industry Events")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Industry').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('TitleConference').className = 'ActiveSubMenu';
			}
			
//* NEWS & EVENTS / News Releases
//* if($Title=="FDM Software - News Releases 2009")
//*	{
//*	document.getElementById('News').className = 'Active';
//*	document.getElementById('2009').className = 'ActiveSubMenu';
//*			}
//*if($Title=="FDM Software - News Releases 2008")
//*	{
//*	document.getElementById('News').className = 'Active';
//*	document.getElementById('2008').className = 'ActiveSubMenu';
//*			}
			
//* NEWS & EVENTS / Case Studies
if($Title=="FDM Software Case Studies - Ogden City Fire Department")
	{
	document.getElementById('CaseStudies').className = 'Active';
	document.getElementById('Ogden').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Case Studies - Saskatoon Fire & Protective Services")
	{
	document.getElementById('CaseStudies').className = 'Active';
	document.getElementById('Saskatoon').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Case Studies - Surrey Fire Services")
	{
	document.getElementById('CaseStudies').className = 'Active';
	document.getElementById('Surrey').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software in the News")
	{
	document.getElementById('CaseStudies').className = 'Active';
	document.getElementById('Articles').className = 'ActiveSubMenu';
			}
			
//* NEWS & EVENTS / Conference
if($Title=="FDM Software Education Conference - Venue")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Venue').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - 2010 Vendors")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('2011Vendors').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Registration")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Registration').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Course Registration")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('CourseRegistration').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Course Descriptions")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('CourseDescriptions').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Breakout Sessions")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('BreakOut').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Vendor Registration")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Vendor').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Vendor Information")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Vendors').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Scholarship")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Scholarship').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Education Conference - Closed")
	{
	document.getElementById('Events').className = 'Active';
	document.getElementById('Scholarship').className = 'ActiveSubMenu';
	document.getElementById('Vendor').className = 'ActiveSubMenu';
	document.getElementById('Registration').className = 'ActiveSubMenu';
	document.getElementById('CourseRegistration').className = 'ActiveSubMenu';	
			}

//* TRAINING
if($Title=="FDM Software Training Approach")
	{
	document.getElementById('TrainingApproach').className = 'Active';
			}
if($Title=="FDM Software Training Course Descriptions")
	{
	document.getElementById('Courses').className = 'Active';
	document.getElementById('TitleCourses').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Training Schedule")
	{
	document.getElementById('TrainingSchedule').className = 'Active';
			}
		
//* TRAINING / Course Descriptions
if($Title=="FDM Software Training - Administrator Training")
	{
	document.getElementById('Courses').className = 'Active';
	document.getElementById('Admin').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software Training - Train the Trainer")
	{
	document.getElementById('Courses').className = 'Active';
	document.getElementById('TtT').className = 'ActiveSubMenu';
			}
		
//* SUPPORT
if($Title=="FDM Software Support Services")
	{
	document.getElementById('SupportServices').className = 'Active';
			}
if($Title=="FDM Software Help Desk Support")
	{
	document.getElementById('HelpDesk').className = 'Active';
			}
if($Title=="FDM Software System Requirements")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('TitleSystemRequirements').className = 'ActiveSubMenu';
			}
	
//* support / System Requirements
if($Title=="FDM Software System Requirements - Workstations")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('Workstn_Req').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software System Requirements - Mobile")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('Mobile_Req').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software System Requirements - Network")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('Network_Req').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software System Requirements - Servers")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('Server_Req').className = 'ActiveSubMenu';
			}
if($Title=="FDM Software System Requirements - Third Party")
	{
	document.getElementById('SystemRequirements').className = 'Active';
	document.getElementById('3rdParty_Req').className = 'ActiveSubMenu';
			}


}
$(document).ready(function(){
ActiveLink();
});

