// JavaScript Document
var b = new BrowserInfo();
function BrowserInfo()
{

  this.name = navigator.appName;
  this.codename = navigator.appCodeName;
  this.version = navigator.appVersion.substring(0,4);
  this.platform = navigator.platform;
  this.javaEnabled = navigator.javaEnabled();
  this.screenWidth = screen.width;
  this.screenHeight = screen.height;

}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_changeProp(objName,x,theProp,theValue) { //v6.0
  var obj = MM_findObj(objName);
  if (obj && (theProp.indexOf("style.")==-1 || obj.style)){
    if (theValue == true || theValue == false)
      eval("obj."+theProp+"="+theValue);
    else eval("obj."+theProp+"='"+theValue+"'");
	
	//alert(eval('obj.'+theProp));
  }
}
// find object within document
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;
}
// validate by expression
function testPattern(pattern,inputString){
  // return true if test results is true
  if(pattern.test(inputString)){
    return true;
   }else{
    return false;
   }
}
function setPageTitle (title){
	document.title = document.title + ' :: ' +title;
}
function matchValue(val1,val2){
	if(val1 != '' && val2 != ''){
		if(val1 != val2){
			return true;
		}else{ 
			return false;
		}
	}else{
		return true;
	}
}
// validate email address
function validateEmailAddress(email){
  var pattern = /^[_a-z0-9-]+(\.[_a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})/;
  // if valid return false
  if(testPattern(pattern,email)){
    return false;
  }else{
    return true;
  }
}
// got to login url page
function goToLogin(loginURL){
	var redirect = window.location.href;
	var url = (loginURL != null? loginURL : defaultLoginURL);
	window.location.href = url + (url.indexOf("?") != -1? '&' : '?') + 'from=' + escape(redirect);
}
var defaultProfileURL = '/tsv7/profile/';
// go to profile url page
function goToProfile(){
	var redirect = window.location.href;
	var url = defaultProfileURL;
	window.location.href = url + (url.indexOf("?") != -1? '&' : '?') + 'from=' + escape(redirect);
}
// validate phone number
function validatePhoneNumber(number){
  if(number.length >= 7){
    // string pattern test for numerals only
     var searchForNumbers = /\D+\_+\W+\s+\S+/;
    // validate that the number is all numerals
    return testPattern(searchForNumbers,number);
  }else{
    return true;
  }
}
// validate form
function checkForm(){
  // error manager
  var error = false;
  // inti
  var theform = '';
  var noElements = 0;
  // get form object
  if(arguments.length>0){
    theform = checkForm.arguments[0];
	noElements = (checkForm.arguments.length) - 1; // get no of elements from function
  }else{
    // find default form
    theform =  document.forms[0];
	// find # of elements
	noElements = theform.elements.length; // get no of elements from form
  }
  // loop true elements to validate
  forLoop:
  for(var i=0; i<noElements;i++){
    // get element object
	if(arguments.length>0){
		var field = MM_findObj(arguments[i+1]);
	}else{
    	var field = theform.elements[i];
	}
    // if the field is a required field
   if(field.type != 'submit' && field.type != 'hidden' && !field.disabled){
       if(field.className == 'required'){
        // check value
        if(error = checkValue(field.name,field.value)) break forLoop; // exit for loop
      }
    }
  }
  if(!error){
    theform.submit(); // i have to query this
  }else{
    return false;
  }
}
//
function setBackgroundImg(){
	var imgStyle = null;
	var noImgs = noBG > 0? noBG : 1;
	var url = window.location.href;
	var baseURL = (url).substring(0,(url).lastIndexOf('/')); // get the base url
	// alert(url+' - '+(url.lastIndexOf())+' - '+url.substring(0,url.lastIndexOf('/'))+' - '+baseURL);
	var rndNum = Math.floor(Math.random()*noImgs)+1;
	var rndImg = baseURL+'/images/bkgrd'+rndNum+'.jpg';
	document.body.style.backgroundImage='url('+rndImg+')';
}

// alert user of error
function sendAlert(msg){
  window.alert(msg);
}
// universal confirmation pop up
// messge, function, paramter
function confirmAlert(){
	var msg = arguments[0];
	var func = arguments[1];
	var val = arguments[2];
	alert(func);
	if (confirm(msg)) {
     	if(func){
			func(val);
		}
	}else{
		return false;
	}
}

// generic pop up
var popUpWin=0;
function popUpWindow(URLStr, left, top, width, height)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  popUpWin = window.open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

// pare url to get query string paramteres
function parsequery(){ 
	var parameters = new Array();
	var query = location.search.substring(1); 
	if(query == "") { 
		//alert('no url string');
		return null; 
	} 
	var pairs = query.split("\&"); 
	for(var i = 0; i < pairs.length; i++){ 
		var pos = pairs[i].indexOf('=');  
		if(pos == -1){ 
			continue; 
		} 
		var arg_name = pairs[i].substring(0,pos); 
		var arg_value = pairs[i].substring(pos+1);
		parameters[arg_name] = arg_value; 
	} 
	return parameters; 
}

// pop up image
function popUpImage(imageURL,imageTitle){
	PositionX = 100;
	PositionY = 100;
	// Set these value approximately 20 pixels greater than the
	// size of the largest image to be used (needed for Netscape)
	defaultWidth  = 500;
	defaultHeight = 500;
	// Set autoclose true to have the window close automatically
	// Set autoclose false to allow multiple popup windows
	var AutoClose = true;
	if (parseInt(navigator.appVersion.charAt(0))>=4){
		var isNN=(navigator.appName=="Netscape")?1:0;
		var isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;
	}
	var optNN='scrollbars=no,width='+defaultWidth+',height='+defaultHeight+',left='+PositionX+',top='+PositionY;
	var optIE='scrollbars=no,width=150,height=100,left='+PositionX+',top='+PositionY;
	if (isNN){imgWin=window.open('about:blank','',optNN);}
	if (isIE){imgWin=window.open('about:blank','',optIE);}
	with (imgWin.document){
		writeln('<html><head><title>Loading...</title><style>body{margin:0px;}</style>');writeln('<sc'+'ript>');
		writeln('var isNN,isIE;');writeln('if (parseInt(navigator.appVersion.charAt(0))>=4){');
		writeln('isNN=(navigator.appName=="Netscape")?1:0;');writeln('isIE=(navigator.appName.indexOf("Microsoft")!=-1)?1:0;}');
		writeln('function reSizeToImage(){');writeln('if (isIE){');writeln('window.resizeTo(100,100);');
		writeln('width=100-(document.body.clientWidth-document.images[0].width);');
		writeln('height=100-(document.body.clientHeight-document.images[0].height);');
		writeln('window.resizeTo(width,height);}');writeln('if (isNN){');       
		writeln('window.innerWidth=document.images["image"].width;');writeln('window.innerHeight=document.images["image"].height;}}');
		writeln('function doTitle(){document.title="'+imageTitle+'";}');writeln('</sc'+'ript>');
		if (!AutoClose) writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()">')
		else writeln('</head><body bgcolor=000000 scroll="no" onload="reSizeToImage();doTitle();self.focus()" onblur="self.close()">');
		writeln('<img name="image" src='+imageURL+' style="display:block"></body></html>');
		close();		
	}
}

function getTheElementByName(formObj,eleName){
	var elements = formObj.elements;
	for(i=0;i<elements.length;i++){
		if(elements[i].name == eleName && !elements[i].disabled)
			return elements[i];
	}
}
// format date
function setDateFormatted(date,frmt){
	var year = date.substring(0,4);
	var month = date.substring(5,7);
	var day = date.substring(8,10);
	month =parseInt(month.indexOf(0) == 0? date.substring(6,7) : month);
	month = month > 0 ? --month : month;
	//alert(month);
	day = (day.indexOf(0) == 0? date.substring(9,10) : day);
	tdate = new Date(year,month,day);
	
	return tdate.format(frmt);
}

/*function setText(ele, txt){
	var t = MM_findObj(ele).value;
	MM_changeProp(ele,'','value',(t == ''? t : ','+t));
}
function removeText(ele, txt){
	var t = MM_findObj(ele).value;
	t = t.replace(/txt/i, "");
	MM_findObj
}
*/
//->