function validateAll(which) {

  
  var pass=true;
  if (document.images) {
  
    for (i=0;i<which.length;i++) {
    
      var tempobj=which.elements[i];
      if(tempobj.disabled == true){continue;}
      if (tempobj.name.substring(0,1)=="*") {
      
      if (((tempobj.type=="text"||tempobj.type=="textarea")&&
          tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
          tempobj.selectedIndex==0)) {
          pass=false;
          break;
             }
        }
     }
  }
  
  if (!pass) {
  shortFieldName=tempobj.name.substring(1,40).toUpperCase();
  alert("Please make sure the "+shortFieldName+" field was properly completed.");
  return false;
  }
  else
  return true;
}


//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated.  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];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			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 AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    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 += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }

  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":
      case "id":
        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 "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;
}



//do browser stuff
dom = (document.getElementById) ? true : false;
ns5 = ((navigator.userAgent.indexOf("Gecko")>-1) && dom) ? true: false;
ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false;
ns4 = (document.layers && !dom) ? true : false;
ie4 = (document.all && !dom) ? true : false;
nodyn = (!ns5 && !ns4 && !ie4 && !ie5) ? true : false;
var zIndexXPR = 1;


function showDiv(iidee)
{
zIndexXPR++;

var theLyr = (ns4)? document.layers[iidee] : (ie4)? document.all[iidee].style : (ie5||ns5)?   document.getElementById(iidee).style: null;				
theLyr.display= '';
theLyr.zIndex = zIndexXPR;
}

function hideDiv(iidee)
{
var theLyr = (ns4)? document.layers[iidee] : (ie4)? document.all[iidee].style : (ie5||ns5)?   document.getElementById(iidee).style: null;				
theLyr.display= 'none';
}



jQuery.fx.off = true;

$("li").click(function(){
  $("div").toggle("slow");
});

/* JQUERY NAVIGATIONAL INCLUDES*/

jQuery(document).ready(function(){
    
    var $npos = -1;
     var i = 0;
  
    $('.dh_HomeTab').each(function(){
              $(this).data('id',i);
         i++;
        });
 
    $('.dh_HomeTabHeader').click(slide);
   

        function slide(){
           var $parent = $(this).parents('.dh_HomeTab');
          
            // previous target
          if($npos >= 0)  $('.dh_HomeTabExpandContent').eq($npos).slideToggle('fast');
             
            // current target
           if($npos != $parent.data('id')){
                      $parent.find('.dh_HomeTabExpandContent').slideToggle("fast");
                    $npos = $parent.data('id');
           }else{
                      $npos = -1;
         }
   }
//MAIN NAVIGATION SCRIPT

        // Detect LEVEL 2 content
        jQuery('.dh_NavLevel2Wrapper').each(function(){

      if(jQuery(this).find('.dh_NavItemLevel2').length == 0){
                jQuery(this).remove();
      }
});


       
// LEVEL 1 Navigation Hover with delay
jQuery('.dh_NavLI').hover(function() {

    mopen(jQuery(this).find(".dh_NavLevel2Wrapper"));
            
},function() {    
    mclosetime();
});      

//Close .ready()
});



// Navigation js Copyright 2006-2007 javascript-array.com edited to work with additional jQuery functions

var timeout     = 500;
var closetimer        = 0;
var ddmenuitem  = 0;

// open hidden layer
function mopen(id)
{     
    // cancel close timer
       mcancelclosetime();

     // close old layer
  if(ddmenuitem) ddmenuitem.hide();

       // get new layer and show it
        ddmenuitem = id;

        ddmenuitem.animate({top:'31px'},'fast').show();

        jQuery(ddmenuitem).parent().siblings(".dh_NavLevel1Link").find(".dh_NavLevel1").removeClass("dh_NavLevel1").addClass("dh_NavLevel1Active"); 

}
// close showed layer
function mclose()
{

 if(ddmenuitem) ddmenuitem.fadeOut(100,reset);
        function reset(){jQuery(".dh_NavLevel2Wrapper").css({top:'-32px'});jQuery(ddmenuitem).parent().siblings(".dh_NavLevel1Link").find(".dh_NavLevel1Active").removeClass("dh_NavLevel1Active").addClass("dh_NavLevel1");}

}

// go close timer
function mclosetime()
{
       closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime()
{
    if(closetimer)
        {
           window.clearTimeout(closetimer);
            closetimer = null;

                jQuery(ddmenuitem).parent().siblings(".dh_NavLevel1Link").find(".dh_NavLevel1Active").removeClass("dh_NavLevel1Active").addClass("dh_NavLevel1");
               
  }
}

// close layer when click-out
document.onclick = mclose; 


/*
Auto tabbing script- By JavaScriptKit.com
http://www.javascriptkit.com
This credit MUST stay intact for use
*/

function autotab(original,destination){
if (original.getAttribute&&original.value.length==original.getAttribute("maxlength"))
destination.focus()
}



/*  Gallerize : jQuery image slider plugin version 1.0
 *  Latest Update: 2011-08-07
 *
 *  Written by Felix Wang @ Backbone Technology
 *  © Backbone Technology inc.
 *  
 *  http://www.backbonetechnology.com
 *  http://www.felicosdesign.com
 *  
 *  <3 BACKBONE & FELICOS
 *  
 *  Basic structure from Felix:
 *  
 *  <div class="showcase" id="">
 *    <div class="screen">
 *      <div class="container">
 *        <div class="item"><a href="#"><img src="#"></a></div>
 *        <div class="item"><a href="#"><img src="#"></a></div>
 *      </div>
 *      <div class="navigation">
 *        <ul></ul>
 *        <div class="clear"></div>
 *      </div>
 *    </div>
 *  </div>
 *
 *
 *
 *   Javascript : Call gallerize:
 *
 *   $('.showcase').gallerize({
 *    slider:     '.container',
 *    item:       '.item',
 *    itemsPerRow:  1,
 *    continuous:    true,
 *    modernizr:    false,
 *    speed:      500,
 *    start:      0,
 *    width:       $('.showcase .screen').width(),
 *    autoplay:    true,
 *    duration:    7000,
 *    imgInCSS:     true,
 *    img:      '.img',
 *    imgCon:      null,
 *    imgPos:     'center center',
 *    navigation:    false,
 *    prev:       '.prev',
 *    next:       '.next',
 *    before:      null,
 *    after:      function()
 *    {
 *      var title = $('.item.current h1').html();
 *      var desc = $('.item.current h2').html();
 *      var link = $('.item.current a').attr('href');
 *              
 *      $('.showcase #info h1').html(title);
 *      $('.showcase #info .desc').html(desc);
 *      $('.showcase #info #get-it-now').attr('href',link);
 *    },
 *    pager: true,
 *    pagerCon: '.showcase .navigation ul',
 *    pagerNav: false,
 *    pagerNum: false,
 *    pagerTitle: false,
 *    pagerTitleClass: '.title',
 *    pagerItemClass: 'dot'
 *  });
 *
 */

(function($)
{
  $.fn.gallerize = function(options)
  {
    options = $.extend($.fn.gallerize.defaults,options);
  
    return this.each(function()
    {
      // Variables  
      var target =   $(this);
      var slider =   $(options.slider,this);
      var item =     $(options.item,this);
      
      var current =   options.start;
      var total =   item.length;
      var width =   options.width;
      var sliderW =   total * width;
      var speed =   options.speed;
      var is_trans =  false;
      
      var timer;
      var duration =   options.duration;
      
      var pager =    $(options.pagerCon);
      var pager_row = 0;
    
      // resize the slider container
      slider.css({width:sliderW});
      
      // slider item config
      item.each(function(i)
      {
        // imgCSS - center image using css background-image
        if(options.imgInCSS)
        {
          var img = $(options.img,this).attr('src');
          if(!options.imgCon)   $(this).css({background:'url("'+img+'") no-repeat ' + options.imgPos});
          else          $(options.imgCon,this).css({background:'url("'+img+'") no-repeat 50% 50%'});
        }
        
        // if pager is enabled, copy and paste the li into the options.pagerCon
        if(options.pager)
        {
          var title = $(options.pagerTitleClass,this).html();
          
          if(options.pagerNum){
            $('<li id="pager-'+i+'" class="pager-item '+options.pagerItemClass+'"><a>'+(i+1)+'</a></li>').appendTo(options.pagerCon,target);
          
          }else if(options.pagerTitle){
            $('<li id="pager-'+i+'" class="pager-item '+options.pagerItemClass+'"><a>'+title+'</a></li>').appendTo(options.pagerCon,target);
          
          }else{
            $('<li id="pager-'+i+'" class="pager-item '+options.pagerItemClass+'"><a></a></li>').appendTo(options.pagerCon,target);
          }
        }
      });
      
      // pager config
      if(options.pager)
      {
        $('li.pager-item a',pager).click(function(e)
        {
          e.preventDefault();
          
          pager.find('.active').removeClass('active');
          current = $(this).parents('li').attr('id').replace('pager-','');
          $(this).parents('li').addClass('active');
          
          slide();
        });
      }
      
      // navigation config
      if(options.navigation)
      {
        // prev
        $(options.prev,this).click(prev);
        
        // next
        $(options.next,this).click(next);
      }
      
      
      // update the first item
      item.eq(current).addClass('current');
      slide();
      
      // autoplay config
      if(options.autoplay)
        timer = setTimeout(autoplay_next,duration);
  

      // autoply functions
      function autoplay_next()
      {
        current++;
        if(current > total-1)
        {
          if(options.continuous)   current = 0;
          else          current = total-1;
        }
                
        slide();
      }
      
      // previous
      function prev(e)
      {
        e.preventDefault();
        
        if(!options.modernizr)
        {
          if(!is_trans)
          {
            is_trans = true;
            prev_process();
          }
        }
        else
        {
          prev_process();
        }
      }
      
      function prev_process()
      {
        current--;
        
        if(current < 0){
          if(options.continuous)   current = total-1;
          else          current = 0;
        }
        
        // prevEvent callback function
        if(typeof options.prevEvent == 'function')  options.prevEvent.call(this);
        
        slide();
      }
      
      function next(e)
      {
        e.preventDefault();
        
        if(!options.modernizr)
        {
          if(!is_trans)
          {
            is_trans = true;
            next_process();
          }
        }
        else
        {
          next_process();
        }
        
      }
      
      function next_process()
      {
        current++;
        
        if(current > total-1){
          if(options.continuous)   current = 0;
          else          current = total-1;
        }
        
        // nextEvent callback function
        if(typeof options.nextEvent == 'function')  options.nextEvent.call(this);
        
        slide();
      }
      
      
      
      // Slider Animation, transition callback
      function slide()
      {
        // autoplay
        if(options.autoplay)
        {
          clearTimeout(timer);
          timer = setTimeout(autoplay_next,duration);
        }
      
        // before callback function
        if(typeof options.before == 'function') options.before.call(this);
        
        // animation
        var pos = -(current * width);
        
        if(options.modernizr)
        {
          // if modernizr is installed on this domain
          if(Modernizr.touch){
            slider.css({"-webkit-transform":'translate('+pos+'px,0)'});
          }
          else if(Modernizr.csstransitions){
            slider.css({left:pos});
          }
          else{
            slider.animate({left:pos},speed);
          }
        }
        else
        {
          // regular jquery animation
          slider.animate({left:pos},speed,function()
          {
            is_trans = false;
          });
        }
        
        // active item
        item.each(function(){
          if($(this).hasClass('current')) item.removeClass('current');
        });
        item.eq(current).addClass('current');
        
        // navgation active item
        if(options.pager)
        {
          pager.find('.active').removeClass('active');
          pager.find('.pager-item').eq(current).addClass('active');
        }
            
        // after callback function
        if(typeof options.after == 'function')  options.after.call(this);
      }
  
  
    });
  }
  
  // default options
  $.fn.gallerize.defaults = {
    slider: null,             // required
    item: null,              // required
    itemsPerRow: 1,            
    itemClickable: false,
    itemEvent: null,
    
    modernizr: false,          
    
    continuous: true,          
    speed:500,
    start: 0,
    
    width: '100%',
    height: 'auto',
    
    autoplay: false,
    duration: 7000,
    
    imgInCSS:   false,
    img:    null,
    imgCon:    null,
    imgPos:   'center center',
    
    before:    null,
    after:    null,
    
    navigation: false,
    prev: null,
    next: null,
    prevEvent: null,
    nextEvent: null,
    
    pager: false,
    pagerCon: '',
    pagerNum: true,
    pagerTitle: false,
    pagerTitleClass: '',
    pagerItemClass: ''
  };
})(jQuery);








var openPopup = window.open;

function show_msg(msg) { alert(msg); }

function validateForm() {
	missing_required = 0;

	for (i = 0; i < arguments.length; i++) {
		if(arguments[i] == '') {
			missing_required = 1;
		}
	}

	if(missing_required) {
		alert("A required form field is missing.");
		return false;
	} else {
		return true;
	}
}

function expCustomLink(myURL) {
	location.href = myURL;
}

function setUrl(path) {
	document.location.href = path;
}

function expArticleLink(sectionId, articleId) {
	location.href = '/index.php?section_id=' + sectionId + '&section_copy_id=' + articleId;
}

function expPopupWindow(url, widthVal, heightVal, resizableVal, scrollbarsVal, toolbarVal, locationVal, directoriesVal, statusVal, menubarVal, copyHistoryVal) {

	var attributes = "width="  	 	 + widthVal       +
				 	 ",height=" 	 + heightVal      +
				 	 ",resizable="  + resizableVal  +
				 	 ",scrollbars="  + scrollbarsVal  +
				 	 ",toolbar=" 	 + toolbarVal 	  +
				 	 ",location=" 	 + locationVal 	  +
				 	 ",directories=" + directoriesVal +
				 	 ",status=" 	 + statusVal 	  +
				 	 ",menubar=" 	 + menubarVal 	  +
				 	 ",copyhistory=" + copyHistoryVal;

	window.open(url, 'WindowName', attributes);
}

function xprLog(msg) {
    if (window.console) console.log(msg);
}

if (document.addEventListener) {  
    document.addEventListener("DOMContentLoaded", function () { if (typeof onXprPageLoad == 'function') onXprPageLoad(); }, false);
} else if (document.attachEvent) {  
    document.attachEvent('DOMContentLoaded', function () { if (typeof onXprPageLoad == 'function') onXprPageLoad(); });
}  

