function trim(str) {
     return str.replace(/^\s+|\s+$/g, '');
}

function expandCollapse( div )
{
	if( document.getElementById( div ).style.display == "none" )
	{
		document.getElementById( div ).style.display = "block";
		//document.getElementById( seperator ).innerHTML = "-";
	}else{
		document.getElementById( div ).style.display = "none";
		//document.getElementById( seperator ).innerHTML = "+";
	}
}

function expandPanel( div, seperator )
{
	if( document.getElementById( div ).style.display == "none" )
	{
		document.getElementById( div ).style.display = "block";
		document.getElementById( seperator ).innerHTML = "Hide";
	}else{
		document.getElementById( div ).style.display = "none";
		document.getElementById( seperator ).innerHTML = "Show";
	}
}

function changePaymentStatus( payment_type )
{
	var browserName = navigator.appName;

	if( browserName == "Microsoft Internet Explorer" )
	{
		if( payment_type == "Cheque" )
		{
			document.getElementById( 'payment_detail' ).style.display = "block";
			document.getElementById( 'remarks_details' ).style.display = "block";
		}else{
			document.getElementById( 'payment_detail' ).style.display = "none";
			document.getElementById( 'remarks_details' ).style.display = "none";
		}
	}else{
		if( payment_type == "Cheque" )
		{
			document.getElementById( 'payment_detail' ).style.display = "table-row";
			document.getElementById( 'remarks_details' ).style.display = "table-row";
		}else{
			document.getElementById( 'payment_detail' ).style.display = "none";
			document.getElementById( 'remarks_details' ).style.display = "none";
		}
	}
}

function checkAllPrevilleges( p, formObj )
{
	if( p == "admin" )
	{
		for( i = 0; i < formObj.previllege_set.length; i++ )
		{
			formObj.previllege_set[i].checked = true;
			formObj.previllege_set[i].disabled = true;
		}
	}else{
		for( i = 0; i < formObj.previllege_set.length; i++ )
		{
			formObj.previllege_set[i].checked = false;
			formObj.previllege_set[i].disabled = false;
		}
	}
}

function processXajaxForm( formObj )
{
	if( parseInt( formObj.process_form.value ) > 0 )
	{
		return false;
	}

	return true;
}

function deaultValue( p, val )
{
	if( p.value == "" )
	{
		p.value = val;
	}
}

function calculate( formObj )
{
	flag = "pr";
	if( formObj.discount_type[1].checked )
	{
		flag = "amt";
	}

	var total = percentage_amt = 0.0;
	if( flag == "pr" )
	{
	   percentage_amt = parseFloat( formObj.pay_amount.value ) * ( parseFloat( formObj.disc_percent.value ) / 100 );
	   total = parseFloat( formObj.pay_amount.value ) - percentage_amt;
	}else{
	   total = parseFloat( formObj.pay_amount.value ) - ( parseFloat( formObj.disc_amount.value ) );
	}

	formObj.total_pay.value = total;
}

function validateCheckbox( formElement )
{
	document.getElementById( "error" ).innerHTML = "";

	if( formElement.user_type.value != "admin" )
	{
		var len = formElement.previllege_set.length;
		var chk = false;
	
		for( i = 0; i < len; i++ )
		{
			if( formElement.previllege_set[i].checked )
			{
				chk	= true;
				break;
			}
		}
	
		 if(chk == false)
		 {
			 document.getElementById( "error" ).innerHTML = "Privillege selection is required";
		 }
	}
}

function makePercNull()
{
	document.getElementById("disc_amount").value="";
	document.form1.disc_amount.disabled=true;
	document.form1.disc_percent.disabled=false;

	
}
function makeAmtNull()
{		
	document.getElementById("disc_percent").value="";
	document.form1.disc_amount.disabled=false;
	document.form1.disc_percent.disabled=true;
	
}

function confirmMsgs()
{
	var conf = confirm( "Are you confirm to delete the existing Bys acount." );

	if( conf == false )
	{
		return false;
	}

	return true;
}

jQuery.validator.addMethod(
	"validateBusinessName",
	function(value, element) {
		var re_business_name = /^[A-Za-z ]{3,20}$/;

		//element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( /\S+/.test( element.value ) == false )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid business name required (Allowed only A-Z Charecters)."
);

jQuery.validator.addMethod(
	"validLicensename",
	function(value, element) {
		var re_business_name = /^[A-Za-z ]{3,20}$/;

		//element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_business_name.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid license name required (Allowed only A-Z Charecters)."
);

jQuery.validator.addMethod(
	"validatePropertyName",
	function(value, element) {
		var re_property_name = /^[A-Za-z0-9 ]{3,20}$/;

		//element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_property_name.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid Property name required (Allowed only A-Z Charecters)."
);

jQuery.validator.addMethod(
	"validateURL",
	function(value, element) {
		var re_url = /((http|https):\/\/)?[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_url.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid website name required."
);

jQuery.validator.addMethod(
	"validateName",
	function(value, element) {
		var re_name = /^[A-Za-z]{3,20}$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_name.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid name required<br>(Allowed only A-Z Charecters)."
);

jQuery.validator.addMethod(
	"validateEmail",
	function(value, element) {
		var re_name = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_name.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid email required."
);

jQuery.validator.addMethod(
	"validateMobile",
	function(value, element) {
		var re_mobile = /^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_mobile.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid mobile number required."
);

jQuery.validator.addMethod(
	"validateYear",
	function(value, element) {
		var re_year = /^[0-9]{4}$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_year.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid year required."
);

jQuery.validator.addMethod(
	"validateTelephone",
	function(value, element) {
		var re_mobile = /^\(?(\d{3})\)?[- ]?(\d{8})$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_mobile.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid telephone number required(Ex. 123-12345678)."
);

jQuery.validator.addMethod(
	"validateFax",
	function(value, element) {
		var re_mobile = /^\(?(\d{3})\)?[- ]?(\d{8})$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_mobile.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid fax number required(Ex. 123-12345678)."
);

jQuery.validator.addMethod(
	"validateUserID",
	function(value, element) {
		var re_userid = /^[A-Za-z0-9]{4,20}$/;

		element.value = trim( element.value );
		if ( element.value == "" )
		{
			return false;
		}else if ( ! re_userid.test( element.value ) )
		{
			return false;
		}

		else return true;
	},
	"<br>Valid userid required (Allowed only A-Z & 0-9 Charecters)."
);

jQuery.validator.addMethod(
	"validateStartDate",
	function(value, element) {
		 var dt1  = parseInt(element.value.substring(8,10),10);
		 var mon1 = parseInt(element.value.substring(4,8),10);
		 var yr1  = parseInt(element.value.substring(0,4),10);
	
		 var currDt = new Date();
		 var nowDt = currDt.getDate();
		 var nowMonth = currDt.getMonth();
		 var nowYear = currDt.getFullYear();
		 var chkDate = new Date(yr1, mon1, dt1);
		 var currentDate = new Date(nowYear, nowMonth, nowDt);
		 alert( mon1 );

		 if(chkDate < currentDate)
		 {
			 return false;
		 }
		else return true;
	},
	"Enter the valid date"
);

jQuery.validator.addMethod(
	"validateCheckbox",
	function(value, element) {
		var len = element.length;
		alert( len );
		var chk = false;

		for( i = 0; i < len; i++ )
		{
			if( element[i].checked )
			{
				chk	= true;
				break;
			}
		}

		 if(chk == false)
		 {
			 return false;
		 }
		else return true;
	},
	"Privillege selection required."
);

jQuery.validator.addMethod(
	"validatePaymentRemarks",
	function(value, element) {

		if( document.getElementById( 'payment_type' ).value == "Cheque" )
		{
			element.value = trim( element.value );

			if ( element.value == "" || element.value.length < 10 )
			{
				return false;
			}else if ( ! re_userid.test( element.value ) )
			{
				return false;
			}else return true;
		}else return true;

	},
	"<br>Payment Remarks Required(Min. 10 chars)."
);

function clearValue( p, val )
{
	if( p.value == val )
	{
		p.value = "";
	}
}

function setValue( p, val )
{
	if( p.value == "" )
	{
		p.value = val;
	}
}

function checkUncheckAll( formObj )
{
	cnt = 0;
	if( formObj.checkAll.checked )
	{
		if( typeof formObj.data_items.length != "undefined" )
		{
			var len = formObj.data_items.length;
			for( i = 0; i < len; i++ )
			{
				formObj.data_items[i].checked = true;
				cnt++;
			}
		}else{
			formObj.data_items.checked = true;
			cnt++;
		}
	}else{
		if( typeof formObj.data_items.length != "undefined" )
		{
			var len = formObj.data_items.length;
	
			for( i = 0; i < len; i++ )
			{
				formObj.data_items[i].checked = false;
			}
		}else{
			formObj.data_items.checked = false;
		}
	}

	document.getElementById( "delete_count" ).innerHTML = cnt;
}

function countCheckboxChecked( formObj )
{
	cnt = 0;
	if( typeof formObj.data_items.length != "undefined" )
	{
		var len = formObj.data_items.length;
			for( i = 0; i < len; i++ )
			{
				if( formObj.data_items[i].checked )
			{
				cnt++;
			}
		}
	}else{
			if( formObj.data_items.checked )
			{
				cnt++;
			}
	}

	document.getElementById( "delete_count" ).innerHTML = cnt;
}

function confirmTask( task )
{
	var c = confirm( "Are you sure to " + task );

	if( c == false )
	{
		return false;
	}

	return true;
}

function validateCommonSelection( Obj )
{
	var chkObj = Obj.data_items;
	var flag = false;

	if( typeof chkObj.length != "undefined" )
	{
		var len = chkObj.length;

		for( var i = 0; i < len; i++ )
		{
			if( chkObj[i].checked )
			{
				flag = true;
				break;
			}
		}
	}else{
		if( chkObj.checked )
		{
			flag = true;
		}
	}

	if( flag == false )
	{
		alert("You must select atleast one record to proceed.");
		return false;
	}

	var conf = confirm('Are you sure to continue?');

	if( conf == true )
	{
		Obj.submit();
	}else{
		return false;
	}
}

function highLightStars( image_id, path, cnt )
{
	for( var i = 1; i <= cnt; i++ )
	{
		document.getElementById( image_id + "_" + i ).src = path + 'images/rate_high.png';
	}
}

function removeStars( image_id, path, cnt )
{
	for( var i = 1; i <= cnt; i++ )
	{
		document.getElementById( image_id + "_" + i ).src = path + 'images/rate_low.png';
	}
}

function bannerValidate( formObj )
{
	formObj.banner_image.value = trim( formObj.banner_image.value );
	
	if( formObj.banner.value == "banner" )
	{
		if( formObj.banner_image.value == "")
		{
			alert( "please upload the image." );
			formObj.banner_image.focus();
			return false;
		}
	}
	
	if( formObj.banner.value == "code" )
	{
		if( formObj.banner_code.value == "")
		{
			alert( "please enter the code." );
			formObj.banner_code.focus();
			return false;
		}
	}
   return true;
}

function changebanner( banner )
{
	var browserName = navigator.appName;
	if( browserName == "Microsoft Internet Explorer" )
	{
		if( banner == "banner" )
		{
			document.getElementById( 'upload' ).style.display = "block";
			
		}else{
			document.getElementById( 'upload' ).style.display = "none";
			
		}
		
	}else{
		if( banner == "banner" )
		{
			document.getElementById( 'upload' ).style.display = "table-row";
			
		}else{
			document.getElementById( 'upload' ).style.display = "none";
			
		}
		
	}
	if( browserName == "Microsoft Internet Explorer" )
	{
		if( banner == "code" )
		{
			document.getElementById( 'textarea' ).style.display = "block";
			
		}else{
			document.getElementById( 'textarea' ).style.display = "none";
			
		}
		
	}else{
		if( banner == "code" )
		{
			document.getElementById( 'textarea' ).style.display = "table-row";
			
		}else{
			document.getElementById( 'textarea' ).style.display = "none";
			
		}
		
	}
}

function addToFavorites(url, name) { 
	
    if ($.browser.mozilla) 
	{ // Mozilla Firefox
        window.sidebar.addPanel(name, url, ""); 
    }
	else if ($.browser.msie) 
	{ // IE 
        window.external.AddFavorite(url, name); 
    } 
	else if ($.browser.opera) 
	{ 
         window.external.AddFavorite(url, name); 
    } 
	else 
	{ 
 	  alert("This function is not available in Google Chrome. Click the star symbol at the end of the address-bar or hit Ctrl-D to create a bookmark."); 
    } 
} 


