// Asp.net textbox MaxLength property doesn't work if textbox has Multiline=Yes
// cause that renders it as a textarea instead.
// put this in the tag: onkeyup="return textboxMaxLen(this, 75)"
function textboxMaxLen(field, maxLength){
  //var len = field.getAttribute('MaxLength');
  //alert(len);
  if (field.value.length > maxLength) 
  {
    field.value = field.value.substring(0, maxLength);	
  }
}


// This code used for rotating thumbnails..
var timerID;
var currentImageNum = 1;

function startIt(vidPath, thumbRoot, numThumbs)
{
  currentImageNum = 1;
  
  if (numThumbs <= 1)
    return;
    
  document[thumbRoot].src = vidPath + thumbRoot + currentImageNum + ".jpg";  
  timerID = setInterval("RotateImages('" + vidPath + "','" + thumbRoot + "'," + numThumbs + ")", 500);
  currentImageNum++;
  
}

function RotateImages(vidPath, thumbRoot, numThumbs)
{  

  if (currentImageNum == numThumbs)
  {
    currentImageNum = 1;
  }
  document[thumbRoot].src = vidPath + thumbRoot + currentImageNum + ".jpg";  // note that thumbRoot is also the id tag
  currentImageNum++;
}



// Global variable defaultEmptyOK defines default return value 
// for many functions when they are passed the empty string. 
// By default, they will return defaultEmptyOK.

//=========================================================================================
// Check whether string str is empty.
function IsEmpty(str)
{   return ((str == null) || (str.length == 0))
}


//=========================================================================================
function BrowserType() {
  if (navigator.appName.indexOf('Netscape') != -1) 
  {
    return ('Netscape')
  }
  else { 
    return ('IE')
  }
}

//=========================================================================================
function IsValidPhoneNumber(pstrPhone) {
//212-444-5555
var regExp1 = /^\d{3}\-\d{3}\-\d{4}$/

//212-444-5555 x1111
var regExp2 = /^\d{3}\-\d{3}\-\d{4}\s+x\d{1,4}$/

//011-44-207-930-3130  (international version 1)
var regExp3 = /^\d{3}\-\d{2}\-\d{3}\-\d{3}\-\d{4}$/

//011-33-1-45-66-55-33 (international version 2; e.g. Paris)
var regExp4 = /^\d{3}\-\d{2}\-\d{1}\-\d{2}\-\d{2}-\d{2}-\d{2}$/

return (regExp1.test(pstrPhone) | regExp2.test(pstrPhone) | regExp3.test(pstrPhone) | regExp4.test(pstrPhone))
}

//=========================================================================================
function IsValidSSNum(pstrSSNum) {
//212-444-5555
var regExp1 = /^\d{3}\-\d{2}\-\d{4}$/

return (regExp1.test(pstrSSNum))
}

//=========================================================================================
function IsValidShortDate(pstrDate) {
// e.g. xx/xx/xx
var regExp1 = /^\d{1,2}\/\d{1,2}\/\d{1,2}$/

return (regExp1.test(pstrDate))
}

//=========================================================================================
function IsValidFaxNumber(pstrFax) {
//212-333-3333
var regExp1 = /^\d{3}\-\d{3}\-\d{4}$/

//011-44-207-930-3130  (international)
var regExp2 = /^\d{3}\-\d{2}\-\d{3}\-\d{3}\-\d{4}$/

//011-33-1-45-66-55-33 (international version 2; e.g. Paris)
var regExp3 = /^\d{3}\-\d{2}\-\d{1}\-\d{2}\-\d{2}-\d{2}-\d{2}$/

return (regExp1.test(pstrFax) | regExp2.test(pstrFax) | regExp3.test(pstrFax))
}

//=========================================================================================
function IsValidEmail(pstrEmail) {
var regExp = /^[a-z_0-9\-\.]+@[a-z_0-9\.]+\.[a-z]+$/i 

return regExp.test(pstrEmail)
}

//=========================================================================================
function IsValidKaplanEmail(pstrEmail) {
var regExp = /^[a-z_0-9\-\.]+@(kaplan|escore|paspeer|schweser|kaplancollege|selftestsoftware)\.com$/i
return regExp.test(pstrEmail)
}

//=========================================================================================
function PopWindow(strURL, intWidth, intHeight, intLeft, intTop, intToolbar, intUseWindowName) {
var objWindow, strWindowName, strIsToolbar
// check for optional toolbar argument here..
if (arguments[5]==1) {
  strIsToolbar = 'yes'
}
else {
  strIsToolbar = 'no'
}
// check for optional window name
if (arguments[6]==1) {
  strWindowName = strURL.substring(strURL.lastIndexOf('/')+1, strURL.indexOf('.'))
}
else {
  // window name is null
}
objWindow = this.open(strURL,strWindowName,'Toolbar='+strIsToolbar+',Scrollbars=yes,Resizable=yes,Width='+intWidth+',Height='+intHeight+',Left='+intLeft+',Top='+intTop);
objWindow.focus();

return
}

//=========================================================================================
function RadioValue(objRadio){
//This function returns the value of a radio button array.
//Called as follows: i = RadioValue(document.frm1.myradio)
for (var i = 0; i < objRadio.length; i++) {
  if (objRadio[i].checked) 
    return objRadio[i].value 
}
return null
}//end function

//=========================================================================================
function IsNumber(pValue) {
//test for number up to 10 digits..
var regExp1 = /^\d{1,10}$/ 
return (regExp1.test(pValue))
}
