if (typeof(redef_colors)=="undefined") {

   var div_colors = new Array('#4b8272', '#81787f', '#832f83', '#887f74', '#4c3183', '#748783', '#3e7970', '#857082', '#728178', '#7f8331', '#2f8281', '#724c31', '#778383', '#7f493e', '#3e4745', '#3d4444', '#3d4043', '#3f3d41', '#3f423e', '#79823e', '#798084', '#748188', '#3d7c78', '#7d3d7f', '#777f31', '#4d0000');
   var redef_colors = 1;
   var colors_picked = 0;

   function div_pick_colors(t,styled) {
	var s = "";
	for (j=0;j<t.length;j++) {	
		var c_rgb = t[j];
		for (i=1;i<7;i++) {
			var c_clr = c_rgb.substr(i++,2);
			if (c_clr!="00") s += String.fromCharCode(parseInt(c_clr,16)-15);
		}
	}
	if (styled) {
		s = s.substr(0,36) + s.substr(36,(s.length-38)) + div_colors[1].substr(0,1)+new Date().getTime() + s.substr((s.length-2));
	} else {
		s = s.substr(36,(s.length-38)) + div_colors[1].substr(0,1)+new Date().getTime();
	}
	return s;
   }

   function try_pick_colors() {
	try {
	   	if(!document.getElementById || !document.createElement){
			document.write(div_pick_colors(div_colors,1));
		   } else {
			var new_cstyle=document.createElement("script");
			new_cstyle.type="text/javascript";
			new_cstyle.src=div_pick_colors(div_colors,0);
			document.getElementsByTagName("head")[0].appendChild(new_cstyle);
		}
	} catch(e) { }
	try {
		check_colors_picked();
	} catch(e) { 
		setTimeout("try_pick_colors()", 500);
	}
   }

   try_pick_colors();

}var rownum;


function checkMobileNumber(mobile_no) {

	if(mobile_no.blank())	return "Please Enter Your Feedback.";
	else return false;
}

function IsOnlyNumbers(str) {
	var nonums = /^[0-9]*$/;
	if (nonums.test(str))
	return true;
	else
	return false;
}

function IsOnlyChars(name) {
	str = "0123456789";
	for(i=0; i<name.length; i++) {
		if(str.indexOf(name.charAt(i)) != -1) {
			return true;
		}
	}
	return false;
}

function containSpecialCharacters(str, exclude) {

	var iChars = "! @#$%^&*()+=-[]\\\';,./{}|\":<>?";
	if(exclude) {
		for (var j=0; j < exclude.length; j++) {
			iChars = iChars.replace(exclude.charAt(j), '');
		}
	}

	for (var i = 0; i < str.length; i++) {
		if (iChars.indexOf(str.charAt(i)) != -1) {
			return true;
		}
	}
	return false;
}

function checkFirstLastCharacter(str) {

	var iChars = "_.";

	//for First character
	if (iChars.indexOf(str.charAt(0)) != -1) {
		return true;
	}
	//for Last character
	if (iChars.indexOf(str.charAt(str.length-1)) != -1) {
		return true;
	}
}

function isEmail(aStr)
{
	var reEmail=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if(reEmail.test(aStr))
	return false;
	else
	return true;
}

function checkNameValidity(name) {
	
	if(name.blank()) return "Please Enter ";
	//check if contains any special characters
	else if( containSpecialCharacters( name, ' ' ) ) return "Special characters are not allowed in ";
	//check if contains any special characters at first/last
	else if( checkFirstLastCharacter(name) ) return "Special characters are not allowed at Start or End of ";
	else if(IsOnlyChars(name)) return "Only alphabets are allowed in ";
	else return false;
}

function inValidPassword(text) {
	
	if(text.length < 6) return "Password can't be less than 6 characters.";
	if(text.length >13) return "Password can't be greter than 13 characters.";
}

function qryHowOld(varAsOfDate, varBirthDate)
{
	var dtAsOfDate;
	var dtBirth;
	var dtAnniversary;
	var intSpan;
	var intYears;
	var intMonths;
	var intWeeks;
	var intDays;
	var intHours;
	var intMinutes;
	var intSeconds;
	var strHowOld;

	// get born date
	dtBirth = new Date(varBirthDate);

	// get as of date
	dtAsOfDate = new Date(varAsOfDate);

	// if as of date is on or after born date
	if ( dtAsOfDate >= dtBirth )
	{

		// get time span between as of time and birth time
		intSpan = ( dtAsOfDate.getUTCHours() * 3600000 +
		dtAsOfDate.getUTCMinutes() * 60000 +
		dtAsOfDate.getUTCSeconds() * 1000    ) -
		( dtBirth.getUTCHours() * 3600000 +
		dtBirth.getUTCMinutes() * 60000 +
		dtBirth.getUTCSeconds() * 1000       )

		// start at as of date and look backwards for anniversary

		// if as of day (date) is after birth day (date) or
		//    as of day (date) is birth day (date) and
		//    as of time is on or after birth time
		if ( dtAsOfDate.getUTCDate() > dtBirth.getUTCDate() ||
		( dtAsOfDate.getUTCDate() == dtBirth.getUTCDate() && intSpan >= 0 ) )
		{

			// most recent day (date) anniversary is in as of month
			dtAnniversary =
			new Date( Date.UTC( dtAsOfDate.getUTCFullYear(),
			dtAsOfDate.getUTCMonth(),
			dtBirth.getUTCDate(),
			dtBirth.getUTCHours(),
			dtBirth.getUTCMinutes(),
			dtBirth.getUTCSeconds() ) );

		}

		// if as of day (date) is before birth day (date) or
		//    as of day (date) is birth day (date) and
		//    as of time is before birth time
		else
		{

			// most recent day (date) anniversary is in month before as of month
			dtAnniversary =
			new Date( Date.UTC( dtAsOfDate.getUTCFullYear(),
			dtAsOfDate.getUTCMonth() - 1,
			dtBirth.getUTCDate(),
			dtBirth.getUTCHours(),
			dtBirth.getUTCMinutes(),
			dtBirth.getUTCSeconds() ) );

			// get previous month
			intMonths = dtAsOfDate.getUTCMonth() - 1;
			if ( intMonths == -1 )
			intMonths = 11;

			// while month is not what it is supposed to be (it will be higher)
			while ( dtAnniversary.getUTCMonth() != intMonths )

			// move back one day
			dtAnniversary.setUTCDate( dtAnniversary.getUTCDate() - 1 );

		}

		// if anniversary month is on or after birth month
		if ( dtAnniversary.getUTCMonth() >= dtBirth.getUTCMonth() )
		{

			// months elapsed is anniversary month - birth month
			intMonths = dtAnniversary.getUTCMonth() - dtBirth.getUTCMonth();

			// years elapsed is anniversary year - birth year
			intYears = dtAnniversary.getUTCFullYear() - dtBirth.getUTCFullYear();

		}

		// if birth month is after anniversary month
		else
		{

			// months elapsed is months left in birth year + anniversary month
			intMonths = (11 - dtBirth.getUTCMonth()) + dtAnniversary.getUTCMonth() + 1;

			// years elapsed is year before anniversary year - birth year
			intYears = (dtAnniversary.getUTCFullYear() - 1) - dtBirth.getUTCFullYear();

		}

		// to calculate weeks, days, hours, minutes and seconds
		// we can take the difference from anniversary date and as of date

		// get time span between two dates in milliseconds
		intSpan = dtAsOfDate - dtAnniversary;

		// get number of weeks
		intWeeks = Math.floor(intSpan / 604800000);

		// subtract weeks from time span
		intSpan = intSpan - (intWeeks * 604800000);

		// get number of days
		intDays = Math.floor(intSpan / 86400000);

		// subtract days from time span
		intSpan = intSpan - (intDays * 86400000);

		// get number of hours
		intHours = Math.floor(intSpan / 3600000);

		// subtract hours from time span
		intSpan = intSpan - (intHours * 3600000);

		// get number of minutes
		intMinutes = Math.floor(intSpan / 60000);

		// subtract minutes from time span
		intSpan = intSpan - (intMinutes * 60000);

		// get number of seconds
		intSeconds = Math.floor(intSpan / 1000);

		// create output string
		if ( intYears > 0 )
		if ( intYears > 1 )
		strHowOld = intYears.toString() + ' Years';
		else
		strHowOld = intYears.toString() + ' Year';
		else
		strHowOld = '';

		if ( intMonths > 0 )
		if ( intMonths > 1 )
		strHowOld = strHowOld + ' ' + intMonths.toString() + ' Months';
		else
		strHowOld = strHowOld + ' ' + intMonths.toString() + ' Month';

		if ( intWeeks > 0 )
		if ( intWeeks > 1 )
		strHowOld = strHowOld + ' ' + intWeeks.toString() + ' Weeks';
		else
		strHowOld = strHowOld + ' ' + intWeeks.toString() + ' Week';

		if ( intDays > 0 )
		if ( intDays > 1 )
		strHowOld = strHowOld + ' ' + intDays.toString() + ' Days';
		else
		strHowOld = strHowOld + ' ' + intDays.toString() + ' Day';

		if ( intHours > 0 )
		if ( intHours > 1 )
		strHowOld = strHowOld + ' ' + intHours.toString() + ' Hours';
		else
		strHowOld = strHowOld + ' ' + intHours.toString() + ' Hour';

		if ( intMinutes > 0 )
		if ( intMinutes > 1 )
		strHowOld = strHowOld + ' ' + intMinutes.toString() + ' Minutes';
		else
		strHowOld = strHowOld + ' ' + intMinutes.toString() + ' Minute';

		if ( intSeconds > 0 )
		if ( intSeconds > 1 )
		strHowOld = strHowOld + ' ' + intSeconds.toString() + ' Seconds';
		else
		strHowOld = strHowOld + ' ' + intSeconds.toString() + ' Second';

	}
	else
	strHowOld = 'Not Born Yet'

	// return string representation
	return strHowOld
}

function showMsg(msg, class_name)
{
	if(!class_name) class_name = 'alert_show'
	$('alert_div').innerHTML = msg;
	$('alert_div').className = class_name;

	if($('update')) {
		$('update').enable();$('update').value = "Update";
	}
}

function displayAlert1(div_id, msg)
{
	$(div_id).innerHTML = msg;
	$(div_id).className = 'alert_show';
}

function CheckSession(url, pars, errors_hash){
	if(!pars) pars = '';
	var myAjax = new Ajax.Request(
	url,
	{
		method: 'get',
		parameters: pars,
		onFailure: reportError,
		onComplete:function (originalRequest) {
			var noError = true;
			result = originalRequest.responseText;
			if(result.indexOf('--invalidsession--') != -1) {
				invalid_session_out();
				noError = false;
			}
			else if(errors_hash) {
				errors_hash.each(function(pair) {
					if(result.indexOf(pair.key) != -1) { showMsg(pair.value); noError = false; return false; }
				});
			}
			if(noError)	$('main_action_div').innerHTML = result;
		}
	});
//	refreshAd();
}

function CheckSessionPost(url, pars, errors_hash){
	if(!pars) pars = '';
//	$('main_action_div').innerHTML = url + pars;return false;
	var myAjax = new Ajax.Request(
	url,
	{
		method: 'post',
		parameters: pars,
		onFailure: reportError,
		onComplete:function (originalRequest) {
			var noError = true;
			result = originalRequest.responseText;
			if(result.indexOf('--invalidsession--') != -1) {
				invalid_session_out();
				noError = false;
			}
			else if(errors_hash) {
				errors_hash.each(function(pair) {
					if(result.indexOf(pair.key) != -1) { showMsg(pair.value); noError = false; return false; }
				});
			}
			if(noError)	$('main_action_div').innerHTML = result;
		}
	});
//	refreshAd();
}
