function showPage(pageNum, objForm)
{
	 if ( objForm.page != undefined )
	  objForm.page.selectedIndex = pageNum;
		
  objForm.submit();
}

function addDays(myDate, days)
{
  // myDate = a Date object
  // days = +/- days from date
  
  d = new Date(myDate.getTime() + days * 24 * 60 * 60 * 1000);
  
	// Under FireFox, getYear() returns 106 for 2006 for instance, so add 1900
	var year;
	if ( d.getYear() < 1900 )
	  year = d.getYear() + 1900;
	else
	  year = d.getYear();
		
  return (d.getMonth()+1) + "/" + d.getDate() + "/" + year;
}

function goPage(src)
{
  window.location.href = src;
}

function trim(s)
{
  while (s.substring(0,1) == ' ')
    s = s.substring(1,s.length);

  while (s.substring(s.length-1,s.length) == ' ')
    s = s.substring(0,s.length-1);

  return s;
}

function isValidEmail(str)
{
  var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
  
	if ( !str.match(re) )
    return false;
	else
    return true;
}

function validateZip(field)
{
  var valid = "0123456789-";
  var hyphencount = 0;

  if (field.length!=5 && field.length!=10)
  {
    //alert("Please enter your 5 digit or 5 digit+4 zip code.");
    return false;
  }
  
  for (var i=0; i < field.length; i++)
  {
    temp = "" + field.substring(i, i+1);
    if (temp == "-")
	  hyphencount++;
    
	if (valid.indexOf(temp) == "-1")
	{
      //alert("Invalid characters in your zip code.  Please try again.");
      return false;
    }

    if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-"))
	{
      //alert("The hyphen character should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
      return false;
    }
  }
  return true;
}

function validatePhone(field)
{
	// Regex pattern for verifying a Canadian postal code
	var regex = /[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]/
	
	if ( field.value.search(regex) == -1 )
	  return false;
	else
	  return true;
}

function isInteger(s)
{
  var i
  for (i = 0; i < s.length; i++)
  {   
    // Check that current character is number.
    var c = s.charAt(i)
    if ( (c < "0") || (c > "9") )
      return false
  }
  
  // All characters are numbers.
  return true
}

function newWindow(url, target, w, h, scroll, resizable)
{
  var win = null;
  var winl = (screen.width-w)/2;
  var wint = (screen.height-h)/2;
	var menubar = 1;
	var toolbar = 1;
  var settings = 'height=' + h + ',';
  settings += 'width=' + w + ',';
  settings += 'top=' + wint + ',';
  settings += 'left=' + winl + ',';
  settings += 'scrollbars=' + scroll + ',';
  settings += 'resizable=' + resizable + ',';
	settings += 'menubar=' + menubar + ',';
	settings += 'toolbar=' + toolbar;

  win = window.open(url, target, settings);

  if ( parseInt(navigator.appVersion) >= 4 )
  {
    win.window.focus();
  }
}

function clearDefault(strDefault, objField)
{
  if ( objField.value == strDefault )
    objField.value = '';
}

var myWindow;
function openCenteredWindow(url, w, h)
{
  var left = 0, top = 0;
  var width = w;
  var height = h;
	
	if ( screen.availWidth <= width )
	  width = screen.availWidth;
	else
	{
	  left = parseInt((screen.availWidth/2) - (width/2));
	}
	
	if ( screen.availHeight <= height )
	  height = screen.availHeight;
	else
	{
	  top = parseInt((screen.availHeight/2) - (height/2));
	}

  var windowFeatures = "width=" + width + ",height=" + height + 
        ",status,resizable=0,left=" + left + ",top=" + top + 
        ",screenX=" + left + ",screenY=" + top;

  myWindow = window.open(url, "subWind", windowFeatures);
}
