// JavaScript Document
var isNN = (navigator.appName.indexOf("Netscape")!=-1);

function autoTab(input,len, e) {
    var keyCode = (isNN) ? e.which : e.keyCode; 
    var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
    if(input.value.length >= len && !containsElement(filter,keyCode)) {
      input.value = input.value.slice(0, len);
      input.form[(getIndex(input)+1) % input.form.length].focus();
    }
    function containsElement(arr, ele) {
      var found = false, index = 0;
      while(!found && index < arr.length)
      if(arr[index] == ele)
        found = true;
      else
        index++;
      return found;
    }
    function getIndex(input) {
      var index = -1, i = 0, found = false;
      while (i < input.form.length && index == -1)
      if (input.form[i] == input)index = i;
      else i++;
      return index;
    }
  return true;
}
function myswitch(screento, type){ 
	
		
	//if (type==1){
	var ele1 = window.frames["viewer"];
	
	 if (ele1) {
      var screenfrom = ele1.document.getElementById("WizardPage").value;
  	 }else{
	  var screenfrom = document.getElementById("WizardPage").value;
	 }
	
	//}
	if (screenfrom == '1') {
	  if (ele1) {
        if (ele1.document.getElementById("orgEINB").style.backgroundColor == 'yellow') {
          alert('The EIN you have entered is already assigned in our system.  Please change it to continue.');
          return false;
        }
  	  }else{
	    if (document.getElementById("orgEINB").style.backgroundColor == 'yellow') {
          alert('The EIN you have entered is already assigned in our system.  Please change it to continue.');
          return false;
        }
	  }
	}
	

    switch (screento) {
	  case 0:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_submit.asp'
		  MakeEnabled();
		  if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		  }else{
		      return false;
		  }	
		}else{		  
		  if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
			viewer.document.getElementById("NextPage").value = 'wizard_submit.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
			if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }						
		  }
		}
	    break;
	  case 1:
	   if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_1.asp'
		  MakeEnabled();
		   if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		   }	
		}else{
		 if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
			viewer.document.getElementById("NextPage").value = 'wizard_1.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		    if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
	    break;
	  case 2:
	    if (type==0) {
		  document.getElementById("NextPage").value = 'wizard_2.asp';		  
		  MakeEnabled();
		  if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		  }else{
		    return false;
		  }	
		}else{
			
		 if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
		    viewer.document.getElementById("NextPage").value = 'wizard_2.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
			if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		    
		  }
		}
	    break;
	  case 3:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_3.asp'
		  MakeEnabled();
		  if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		    }	
		}else{
		  if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
    		viewer.document.getElementById("NextPage").value = 'wizard_3.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		    if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
	    break;
	  case 4:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_4.asp'
		  MakeEnabled();
		 if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		    }	
		}else{
		  if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
		    viewer.document.getElementById("NextPage").value = 'wizard_4.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		    if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
	    break;	
	  case 5:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_5.asp'
		  MakeEnabled();
		  if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		    }	
		}else{
		  if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
		    viewer.document.getElementById("NextPage").value = 'wizard_5.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		     if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
		break;
	 case 6:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_6.asp'
		  MakeEnabled();
		  if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		    }	
		}else{
		   if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
		    viewer.document.getElementById("NextPage").value = 'wizard_6.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		   if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
		break;
	 case 7:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'wizard_7.asp'
		  MakeEnabled();
		   if (Validate(document.forms[0])) {
		    document.forms[0].submit();
		   }else{
		      return false;
		    }	
		}else{
		   if (viewer.document.getElementById("NextPage")){
			viewer.MakeEnabled();
		    viewer.document.getElementById("NextPage").value = 'wizard_7.asp'
		    viewer.document.getElementById("WizardPage").value = screenfrom
		    if (Validate(viewer.document.forms[0])) {
		      viewer.document.forms[0].submit();
		    }else{
		      return false;
		    }	
		  }
		}
		break;
	 case -1:
	    if (type==0) {
	      document.getElementById("NextPage").value = 'default.asp'
		  document.forms[0].submit();
		}else{
		  document.getElementById("NextPage").value = '';
		  document.forms[0].submit();
		}
		break;
	}
  }
  
  function ValidateOLD(fform) {	  
	  var tmpval;
	  var y = 0;
	  var x = 0;
	  var alertMsg = '';
	  //check for required fields
	  
	  for (x=0; x<fform.elements.length; x++){		  
		    if (fform.elements[x].required == 1){				
			  tmpval = fform.elements[x].value 			
		      if (tmpval.length == 0){ 
		  	     fform.elements[x].style.backgroundColor = 'yellow';		
			     if (y==0) {
				   alertMsg = 'The following fields are required: \n\n';
				   fform.elements[x].focus();
				   y=1;
			     }
			     alertMsg = alertMsg + '"' + fform.elements[x].title + '"\n' 
			  }else{
				  fform.elements[x].style.backgroundColor = 'white';	
			  }
		    }

	  }
	  if (alertMsg.length) {
		  alert(alertMsg);
		  return false;
	  }
	  
	  //check for validations
	  y=0;
	  for (x=0;x<fform.elements.length;x++){		  
		if (fform.elements[x].validation != '' && fform.elements[x].validation){
			  //alert(fform.elements[x].name + ':' + fform.elements[x].validation) 
			  
			  switch(fform.elements[x].validation){
                case 'email':
				    var str = fform.elements[x].value;
					
				    if (window.RegExp) {
                      var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
                      var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$";
                      var reg1 = new RegExp(reg1str);
                      var reg2 = new RegExp(reg2str);
                      if (!reg1.test(str) && reg2.test(str)  || str == ''){
					    //return true;
						fform.elements[x].style.backgroundColor = 'white';	
					  }else{
                        //return false;
						if (y==0) {				
					      alertMsg = 'Your information could not be submited for the following reason(s): \n\n';
				          fform.elements[x].focus();
				          y = 1;
			            } 
					    fform.elements[x].style.backgroundColor = 'yellow';	
					    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid email address.\n' 
					  }
                   } else {
                      if(str.indexOf("@") >= 0 || str == ''){
                        //return true;
						fform.elements[x].style.backgroundColor = 'white';	
					  }else{
                        //return false;
						if (y==0) {				
					      alertMsg = 'Your information could not be submited for the following reason(s): \n\n';
				          fform.elements[x].focus();
				          y = 1;
			            } 
					    fform.elements[x].style.backgroundColor = 'yellow';	
					    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid email address.\n' 

					  }
                   }							          
                   break ;
				case 'digits':
				case 'digit':
				  if (isDigits(fform.elements[x].value) || fform.elements[x].value == '') {
				    fform.elements[x].style.backgroundColor = 'white';	
				  }else{
					fform.elements[x].style.backgroundColor = 'yellow';	
					alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid number.\n'   
				  }				  
				  break;
				case 'zip':
				   var z=fform.elements[x].value;  // put zipCode into working var
                   var digits="0123456789";
                   var flag=true; // innocent til proven guilty
                   if (z.length > 0) {
				     if(z.length==10) {
                      if(z.charAt(5)!='-')
                        flag=false;
                      else
                        z=z.substr(0, 5)+z.substr(6, 4);
                     }
                     switch(z.length) {
                       case 5:
                       case 9:
						  for(var i=0;i<z.length;i++)
							if(digits.indexOf(z.charAt(i))<0) flag=false;   // invalid digit character
						  break;    
                       default:
                          flag=false;
                      }
					  if(flag) {
                       fform.elements[x].style.backgroundColor = 'white';	   
                      }else{                       
					   fform.elements[x].style.backgroundColor = 'yellow';	
					   alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid zip code.\n'
			          }
				   }
				    break;
              }			  
		}
	  }
	  //alert(alertMsg.length)
	   if (alertMsg.length) {
		  alert(alertMsg);
		  return false;
	   }else{
	      return true;
	   }
	  
	  
  }



function Validate(fform) {     
	  var tmpval;
	  var y = 0;
	  var x = 0;
	  var alertMsg = '';
	  //check for required fields
	  for (x=0; x<fform.elements.length; x++){	

	        var IsRequired, IsType, IsSelected
	        var temp = new Array();	        
	        tmpVal = fform.elements[x].className
            indx = tmpVal.indexOf('|')
	        if (indx >= -1) {
              temp = tmpVal.split('|');
              IsRequired = temp[0]
              IsType = temp[1]
            }else{
              IsRequired = 0
              IsType = ''
            }
	    	  
		    if (IsRequired == 1){	
		      	
			  
			  if (fform.elements[x].type == 'radio') {
			  
			     IsSelected = false;
			     ele = eval("fform." + fform.elements[x].name);
			     for (var i = 0;i < ele.length; i++){
                   if (ele[i].checked == true){
                     IsSelected = true;
                   }
                 }
                 if (IsSelected == false){ 
                   for (var j = 0;j < ele.length; j++){                    
                     ele[j].style.backgroundColor = 'yellow';                     		
                   }       
                   
                   
                   
			       if (y==0) {
				     alertMsg = 'The following fields are required: \n\n';
				     ele[0].focus();
				     y=1;
			       }
				   var mySearch = '"' + fform.elements[x].title + '"\n' 
                   var index = alertMsg.indexOf(mySearch);
                   if (index == -1) {
				      alertMsg = alertMsg + '"' + fform.elements[x].title + '"\n' 
				   } 
			    
			    }else{
		  		  for (var i = 0;i < ele.length; i++){
                     ele[i].style.backgroundColor = 'transparent';		
                   }
			    } 
			     
			     
			     
			     
			  }
			  else{
			  
			    tmpval = fform.elements[x].value 			
		        if (tmpval.length == 0){ 
		  	       fform.elements[x].style.backgroundColor = 'yellow';		
			       if (y==0) {
				     alertMsg = 'The following fields are required: \n\n';
				     fform.elements[x].focus();
				     y=1;
			       }
				   var mySearch = '"' + fform.elements[x].title + '"\n' 
                   var index = alertMsg.indexOf(mySearch);
                   if (index == -1) {
				      alertMsg = alertMsg + '"' + fform.elements[x].title + '"\n' 
				   } 
			    
			    }else{
		  		  fform.elements[x].style.backgroundColor = 'white';	
			    }
			  }
			  
			  
			  
		  }
	  }
	  if (alertMsg.length) {
		  alert(alertMsg);
		  return false;
	  }
	  //check for validation
	  y=0;
	  for (x=0;x<fform.elements.length;x++){	
	    
	    var IsRequired, IsType
	        var temp = new Array();
	        tmpVal = fform.elements[x].className
            indx = tmpVal.indexOf('|')
	        if (indx >= -1) {
              temp = tmpVal.split('|');
              IsRequired = temp[0]
              IsType = temp[1]
            }else{
              IsRequired = 0
              IsType = ''
            }
	    	  
		if (IsType != '' && IsType){
			  //alert(fform.elements[x].name + ':' + fform.elements[x].className) 
			  
			  switch(IsType){
                case 'email':
				    var str = fform.elements[x].value;
					
				    if (window.RegExp) {
                      var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
                      var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$";
                      var reg1 = new RegExp(reg1str);
                      var reg2 = new RegExp(reg2str);
                      if (!reg1.test(str) && reg2.test(str)  || str == ''){
					    //return true;
						fform.elements[x].style.backgroundColor = 'white';	
					  }else{
                        //return false;
						if (y==0) {				
					      alertMsg = 'Your information could not be submited for the following reason(s): \n\n';
				          fform.elements[x].focus();
				          y = 1;
			            } 
					    fform.elements[x].style.backgroundColor = 'yellow';	
					    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid email address.\n' 
					  }
                   } else {
                      if(str.indexOf("@") >= 0 || str == ''){
                        //return true;
						fform.elements[x].style.backgroundColor = 'white';	
					  }else{
                        //return false;
						if (y==0) {				
					      alertMsg = 'Your information could not be submited for the following reason(s): \n\n';
				          fform.elements[x].focus();
				          y = 1;
			            } 
					    fform.elements[x].style.backgroundColor = 'yellow';	
					    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid email address.\n' 

					  }
                   }							          
                   break ;
				case 'numeric':
				  if (isNaN(fform.elements[x].value)) {
					  fform.elements[x].style.backgroundColor = 'yellow';	
					  var mySearch = '"' + fform.elements[x].title + '" is not a valid number.\n'   
                      var index = alertMsg.indexOf(mySearch);
                      if (index = -1) {
					    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid number.\n'   
					  }
				  }else{
					  fform.elements[x].style.backgroundColor = 'white';	  
					  
				  }
				  break;
				case 'digits':
				case 'digit':
				  if (isDigits(fform.elements[x].value) || fform.elements[x].value == '') {
				    fform.elements[x].style.backgroundColor = 'white';	
				  }else{
					fform.elements[x].style.backgroundColor = 'yellow';	
					
	
					var mySearch = '"' + fform.elements[x].title + '" is not a valid number.\n'   
                    var index = alertMsg.indexOf(mySearch);
                    if (index = -1) {
					  alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid number.\n'   
					}
				  }				  
				  break;
				case 'zip':
				   var z=fform.elements[x].value;  // put zipCode into working var
                   var digits="0123456789";
                   var flag=true; // innocent til proven guilty
                   if (z.length > 0) {
				     if(z.length==10) {
                      if(z.charAt(5)!='-')
                        flag=false;
                      else
                        z=z.substr(0, 5)+z.substr(6, 4);
                     }
                     switch(z.length) {
                       case 5:
                       case 9:
						  for(var i=0;i<z.length;i++)
							if(digits.indexOf(z.charAt(i))<0) flag=false;   // invalid digit character
						  break;    
                       default:
                          flag=false;
                      }
					  if(flag) {
                       fform.elements[x].style.backgroundColor = 'white';	   
                      }else{                       
					   fform.elements[x].style.backgroundColor = 'yellow';	
					   alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid zip code.\n'
			          }
				   }
				    break;
                case 'phone':
			    case 'phoneno':
				case 'phonenumber':
				  var ph=fform.elements[x].value;  // put value into working var 
				  if (ph == '') {
				     fform.elements[x].style.backgroundColor = 'white';		           
				  }else{
				    if (checkInternationalPhone(ph)==false){
		             fform.elements[x].style.backgroundColor = 'yellow';	
		             alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid phone number.\n'   
		            }else{
		             fform.elements[x].style.backgroundColor = 'white';
		            }
		          }  
				  break;
                     case 'time':
			if (IsValidTime(fform.elements[x].value) || fform.elements[x].value == '') {
			    fform.elements[x].style.backgroundColor = 'white';	
			}else{
			    fform.elements[x].style.backgroundColor = 'yellow';	
			    alertMsg = alertMsg + '"' + fform.elements[x].title + '" is not a valid time.\n'   
			}				  
			break;
              }			  
		}
	  }
	  //alert(alertMsg.length)
	   if (alertMsg.length) {
		  alert(alertMsg);
		  return false;
	   }else{
	      return true;
	   }
	  
	  
  }

function setRadioValue(ele, val){
  var strVal1, strVal2
  for (var i = 0; i < ele.length; i ++) {
    strVal1 = ele[i].value;
    strVal2 = val;
    if (strVal1.toUpperCase() == strVal2.toUpperCase()) {
      ele[i].checked = true;
      return;    
    }  
  }
}

function IsValidTime(timeStr) {
// Checks if time is in HH:MM:SS AM/PM format.
// The seconds and AM/PM are optional.

var timePat = /^(\d{1,2}):(\d{2})(:(\d{2}))?(\s?(AM|am|PM|pm))?$/;

var matchArray = timeStr.match(timePat);
if (matchArray == null) {
//alert("Time is not in a valid format.");
return false;
}
hour = matchArray[1];
minute = matchArray[2];
second = matchArray[4];
ampm = matchArray[6];

if (second=="") { second = null; }
if (ampm=="") { ampm = null }

if (hour < 0  || hour > 23) {
//alert("Hour must be between 1 and 12.");
return false;
}
if (minute<0 || minute > 59) {
//alert ("Minute must be between 0 and 59.");
return false;
}
if (second != null && (second < 0 || second > 59)) {
//alert ("Second must be between 0 and 59.");
return false;
}
return true;
}

function isDigits(value) {
  var digits="0123456789", x=value.toString();
  if(x.length) {
	var tmp = true;
    for(var i=0; i<x.length; i++){
      if(!(digits.indexOf(x.charAt(i))+1)) {
		tmp = false;
	    break;
	  }
	}
	return tmp;
  }else{
    return false;
  }
}
  
function setSelectValue(ele, val){
  var strVal1, strVal2
  for (var i = 0; i < ele.length; i ++) {
    strVal1 = ele.options[i].value;
    strVal2 = val;
    if (strVal1.toUpperCase() == strVal2.toUpperCase()) {
      ele.options[i].selected = true;
      return;    
    }  
  }
  ele.selectedIndex = -1;
}

function IsEqualDate(d1, d2)  {
  if ((d1 != '') && (d2 != '')) {  
    var date1 = new Date(d1);
    var date2 = new Date(d2); 
  
    if (date1.getTime() == date2.getTime()){
      return true;
    }else{
      return false;
    }  
  }else{
    return false;
  }
}

function IsGreaterDate(d1, d2)  {
  if ((d1 != '') && (d2 != '')) {  
    var date1 = new Date(d1);
    var date2 = new Date(d2); 
  
    if (date1.getTime() > date2.getTime()){
      return true;
    }else{
      return false;
    }  
  }else{
    return false;
  }
}

function IsLesserDate(d1, d2)  {
  if ((d1 != '') && (d2 != '')) {  
    var date1 = new Date(d1);
    var date2 = new Date(d2); 
  
    if (date1.getTime() < date2.getTime()){
      return true;
    }else{
      return false;
    }  
  }else{
    return false;
  }
}

function textCounter( field, maxlimit ) {
  if ( field.value.length > maxlimit ){
    field.value = field.value.substring( 0, maxlimit );
    return false;
  }else{
    return true;
  }
}

 function moveItem1(selFrom, selTo, optionIndex) {  
  var oListItem = selFrom.options[selFrom.selectedIndex];
  var oSelected=selFrom.selectedIndex;
  selFrom.options[selFrom.selectedIndex] = null;
  selTo.options.add(oListItem);
    
}
 function moveItem(selFrom, selTo) {
     var setIndex=-1;  
     while(selFrom.selectedIndex > -1) {
        moveItem1(selFrom, selTo, selFrom.selectedIndex);  
     }
 }   
 function addItem(remList, addList) {
    moveItem(remList, addList);
 }
 function removeItem(addList, remList) {
    moveItem(addList, remList);
 }

function compareOptionText(a,b) { 
  /* 
   * return >0 if a>b 
   *         0 if a=b 
   *        <0 if a<b 
   */ 
  // textual comparison 
  return a.text!=b.text ? a.text<b.text ? -1 : 1 : 0; 
  // numerical comparison 
//  return a.text - b.text; 



} 


function sortOptions(list) { 
  var items = list.options.length; 
  // create array and make copies of options in list 
  var tmpArray = new Array(items); 
  for ( i=0; i<items; i++ ) 
    tmpArray[i] = new 
Option(list.options[i].text,list.options[i].value); 
  // sort options using given function 
  tmpArray.sort(compareOptionText); 
  // make copies of sorted options back to list 
  for ( i=0; i<items; i++ ) 
    list.options[i] = new Option(tmpArray[i].text,tmpArray[i].value); 


}

function compareOptionText2(a,b) { 
  /* 
   * return >0 if a>b 
   *         0 if a=b 
   *        <0 if a<b 
   */ 
  // textual comparison 
  return a.text!=b.text ? a.text>b.text ? -1 : 1 : 0; 
  // numerical comparison 
//  return a.text - b.text; 



} 

function sortOptionsReverse(list) { 
    var items = list.options.length; 
    // create array and make copies of options in list 
    var tmpArray = new Array(items); 
    for ( i=0; i<items; i++ ) 
      tmpArray[i] = new 
      Option(list.options[i].text,list.options[i].value); 
      // sort options using given function 
      tmpArray.sort(compareOptionText2); 
     // make copies of sorted options back to list 
     for ( i=0; i<items; i++ ) 
       list.options[i] = new Option(tmpArray[i].text,tmpArray[i].value); 


}  
// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

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 stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}
