
Object.extend(String.prototype, {

trim: function() {
	return this.replace( /(^\s*)|(\s*$)/g, '' ) ;
},
  
parseDate : function() {
	var vardatestring = this;
	var targetyear,targetmonth,targetdate,targethour,targetminutes,targetsecond,targetms

	var nowdate = new Date();

	vardatestring = vardatestring || "";

	var datepart = vardatestring.split(" ");

	var datepartfordate = datepart[0] || "";
	var datepartfortime = datepart[1] || "";

	var arrdate = datepartfordate.split("-");
	var arrtime = datepartfortime.split(":");

	targetyear = (arrdate[0] || "")==""?nowdate.getFullYear():arrdate[0];
	targetmonth = ((arrdate[1] || (nowdate.getMonth() + 1)) -1);
	targetdate = arrdate[2] || nowdate.getDate();

	targethour = (arrtime[0] || "")==""?0:arrtime[0];
	targetminutes = arrtime[1] || 0;
	targetsecond = arrtime[2] || 0;
	targetms = 0;

	var targetdate = new Date(targetyear,targetmonth,targetdate,targethour,targetminutes,targetsecond,targetms);

	return targetdate;
}

});


Object.extend(window, {

isIE : (typeof(window.event)=="object")

});


var $BValues = function(objnameindex)
{

	var argument = $BValues.arguments;
	var objname = objnameindex;
	var objindex = 0;
	
	if(argument.length<2) return;
	
	var postionindex = objname.indexOf(",");

	if(postionindex>0){
		objname = objnameindex.substring(0,postionindex);
		objindex = objnameindex.substring(postionindex+1);
	}

	var objs = document.getElementsByName(objname);
	var objtarget = null;
	
	if(objs.length==0) return;

	var objtemp = objs[0];
	var objtype = objtemp.type;
	var isselecttag = false;
	var isvalidobject = true;
	
	switch(objtype.toLowerCase()){
		case "select" :
		case "select-one" :
			objtarget = objs[objindex].options;
			isselecttag = true;
			break;
		case "radio" :
		case "checkbox" :
			objtarget = objs;
			break;
		default :
			isvalidobject = false;
			break;
	}

	if(!isvalidobject) return;

	var issamevalue = false;

	for(var i=0;i<objtarget.length;i++){
		for(var j=1;j<argument.length;j++){
			issamevalue = (objtarget[i].value==argument[j])
			if(issamevalue) objtarget[i].setAttribute(isselecttag?"selected":"checked" , issamevalue , 0);
		}
	}
}

var $GValues = function(objnameindex , isalldata)
{

	isalldata = isalldata || false;
	
	var objname = objnameindex;
	var objindex = 0;
	var ismultiple = false;
	var retarr = new Array();

	var postionindex = objname.indexOf(",");

	if(postionindex>0){
		objname = objnameindex.substring(0,postionindex);
		objindex = objnameindex.substring(postionindex+1);
	}

	var objs = document.getElementsByName(objname);
	var objtarget = objs;
	
	if(objs.length==0) return;

	var objtemp = objs[0];
	var objtype = objtemp.type;
	var isvalidobject = true;
	
	switch(objtype.toLowerCase()){
		case "select" :
		case "select-one" :
		case "select-multiple" :
			ismultiple = (objtype.multiple || false);
			objtarget = objs[objindex].options;
			break;
		case "radio" :
			ismultiple = false;
			break;
		case "checkbox" :
			ismultiple = true;
			break;
		default :
			isvalidobject = false;
			break;
	}

	if(!isvalidobject) return;

	for(var i=0;i<objtarget.length;i++){
		if(isalldata || objtarget[i].selected || objtarget[i].checked) retarr.push(objtarget[i].value);
	}

	if(retarr.length==0) retarr.push("");
	
	retarr.getValue = function(){return this.join(",")}

	return retarr;
}