// JavaScript Document

function toUpper(str) {

	var pattern = /(\w)(\w*)/; // a letter, and then one, none or more letters 
	var b = new Array();
    var a = str.split(/\s+/g); // split the sentence into an array of words

    for (var i = 0 ; i < a.length ; i ++ ) {
        var parts = a[i].match(pattern); // just a temp variable to store the fragments in.

        var firstLetter = parts[1].toUpperCase();
        var restOfWord = parts[2].toLowerCase();

     b[i] = firstLetter + restOfWord;
		 // re-assign it back to the array and move on
    }
		str ='';
	for (var i = 0 ; i < a.length ; i ++ )
	{
		if(i != a.length)
		str =  str+b[i]+' ';
		else
			str =  b[i];
	}
	return str;
}

function echeck(str) {

		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID");
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID");
		    return false;
		 }
 		 return true;			
	}

function $id(id){
	return document.getElementById(id);
}


//utf8 decoding for ajax requests responses
 var l1=true;
  
   var Url = {

// public method for url encoding
encode : function (string) {
return escape(this._utf8_encode(string));
},

// public method for url decoding
decode : function (string) {
return this._utf8_decode(unescape(string));
},

// private method for UTF-8 encoding
_utf8_encode : function (string) {
string = string.replace(/\r\n/g,"\n");
var utftext = "";

for (var n = 0; n < string.length; n++) {

var c = string.charCodeAt(n);

if (c < 128) {
utftext += String.fromCharCode(c);
}
else if((c > 127) && (c < 2048)) {
utftext += String.fromCharCode((c >> 6) | 192);
utftext += String.fromCharCode((c & 63) | 128);
}
else {
utftext += String.fromCharCode((c >> 12) | 224);
utftext += String.fromCharCode(((c >> 6) & 63) | 128);
utftext += String.fromCharCode((c & 63) | 128);
}

}

return utftext;
},

// private method for UTF-8 decoding
_utf8_decode : function (utftext) {
var string = "";
var i = 0;
var c = c1 = c2 = 0;

while ( i < utftext.length ) {

c = utftext.charCodeAt(i);

if (c < 128) {
string += String.fromCharCode(c);
i++;
}
else if((c > 191) && (c < 224)) {
c2 = utftext.charCodeAt(i+1);
string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
i += 2;
}
else {
c2 = utftext.charCodeAt(i+1);
c3 = utftext.charCodeAt(i+2);
string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
i += 3;
}

}

return string;
}

}

  
  
  
function trim(s)
{
	
	var l=0; 
	var r = s.length -1;
	while(l < s.length && s[l] == ' ')
	{	
		l++;
	 }
	while(r > l && s[r] == ' ')
	{	
		r--;
	}
	return s.substring(l, r+1);
}

function addslashes(str) {
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\'/g,"\\\'");
	str=str.replace(/\"/g,'\\"');
	str=str.replace(/\0/g,'\\0');
	return str;
}
function stripslashes(str) {

	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\\\/g,'\\');
	str=str.replace(/\\0/g,'\0');
	return str;
}
	
String.prototype.replaceAll = function(from,to)
{
	for(var i = 0 ; i < this.length; i++)
	{
		this.replace(from, to);
		//alert(this);
		//break;
	}
}



function findClientXY(){
	var bodyX, bodyY;
	if (self.innerHeight) // all except Explorer
	{
		bodyX = self.innerWidth;
		bodyY = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
	// Explorer 6 Strict Mode
	{
		bodyX = document.documentElement.clientWidth;
		bodyY = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		bodyX = document.body.clientWidth;
		bodyY = document.body.clientHeight;
	}	
	var r=new Array();
	r['x'] = bodyX;
	r['y'] = bodyY;
	return r;
}
	