// JavaScript Document

// ===================================================================
// String functions
//-------------------------------------------------------------------
function LTrim(str){
	if (str==null){return null;}
	for(var i=0;str.charAt(i)==" ";i++);
	return str.substring(i,str.length);
	}
	
function RTrim(str){
	if (str==null){return null;}
	for(var i=str.length-1;str.charAt(i)==" ";i--);
	return str.substring(0,i+1);
	}
	
function Trim(str){return LTrim(RTrim(str));}

function LTrimAll(str) {
	if (str==null){return str;}
	for (var i=0; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i++);
	return str.substring(i,str.length);
	}
	
function RTrimAll(str) {
	if (str==null){return str;}
	for (var i=str.length-1; str.charAt(i)==" " || str.charAt(i)=="\n" || str.charAt(i)=="\t"; i--);
	return str.substring(0,i+1);
	}
	
function TrimAll(str) {
	return LTrimAll(RTrimAll(str));
	}

// string add comma separated value
function strsCsvStr(curstr, newstr) {
	if (curstr!="") curstr+=", ";
	curstr+=newstr;
	return curstr;
}

// strip punctuation
function stripMarks(text) {
	marks="\" .,;!#$/:?\'()[]_\\";
	str="";

	for (i=0; i<text.length; i++) {
		mark=text.charAt(i);
		if (marks.indexOf(mark) != -1) {
			str+=mark;
		} else {
			str+="-";
		}
	}
	return str;
}

//-------------------------------------------------------------------
// isNull(value)
//   Returns true if value is null
//-------------------------------------------------------------------
function isNull(val){return(val==null);}

//-------------------------------------------------------------------
// FloatVal(value)
//   Returns float value of string, 0.00 if null
//-------------------------------------------------------------------
function floatVal(text) {
	number="-.0123456789";
	hasmin=false;
	hasdec=false;
	str="";

	for (i=0; i<text.length; i++) {
		digit=text.charAt(i);
		if (text.indexOf(digit) != -1) {
			if (digit=="-") {
				hasmin=!hasmin;
			} else {
				if (digit==".") {
					if (!hasdec) {
						hasdec=true;
						str=str+".";
					}
				} else {
					str=str+digit;
				}
			}
		}
	}
	
	if (str=="") {
		str="0.00";
	} else {
		if (str.parseFloat != 0) {
			if (hasmin) str="-"+str;
		}
	}
	
	return str
}

// string to date
function strToDate(text) {
	var rdt=new Date(parseInt(text.substr(6,4)), 
					parseInt(text.substr(0,2)), 
					parseInt(text.substr(3,2)),
					0, 0, 0, 0);
	return rdt;
}

// string to date
function strIsDate(text) {
	ryy=parseInt(text.substr(6,4));
	rmm=parseInt(text.substr(0,2));
	rdd=parseInt(text.substr(3,2));
	rid=((ryy >= 1900) && (ryy <= 2099)) && ((rmm > 0) && (rmm <= 12)) && ((rdd > 0) && (rdd <= 31));
	return rid;
}