function MM_openBrWindow(theURL,winName,features)
{ //v2.0
  	window.open(theURL,winName,features);
}
function isDefined( variable)
{
    	return (typeof(window[variable]) == "undefined")?  false: true;
}

function strRepeat(cnt)
{
	var retStr = "";
	for(i=0;i<cnt;i++)
		retStr=retStr+",";
	return retStr;
}

function validateForm(myForm,cArray,cnt)
{
	var i=0;
	var values = "theControl,theMessage,theNumeric,theEmail,theURL,theConfirmPassword,thebadstuff,theinteger,thepercent,thesize,thedecimal,theimage,theempty,themin,themax,thecheckboxlength,thephoneno";
	var leftSide = new Array();
	var rightVals = new Array();
	leftSide = values.split(",");

	var strRepeats = strRepeat(cnt-1);

	for(i=0;i<leftSide.length;i++){
		if(cArray[leftSide[i]]){
			rightVals[i] = (cArray[leftSide[i]]);
		}else{
			rightVals[i] = strRepeats;
		}
		leftSide[i]=rightVals[i];
	}

	if(!theValidator(myForm,leftSide[0],leftSide[1],leftSide[2],leftSide[3],leftSide[4],leftSide[5],leftSide[6],leftSide[7],leftSide[8],leftSide[9],leftSide[10],leftSide[11],leftSide[12],leftSide[13],leftSide[14],leftSide[15],leftSide[16]))
		return false;

	return true;
}

function copyToList(from, to)
{
	var fromList = eval('document.forms[0].' + from);
	var toList = eval('document.forms[0].' + to);

	var i=0;
	while(i<fromList.length)
	{
		if(fromList.options[i].selected==true)
		{
			var toListLength=toList.length;
			toList.options[toListLength]=new Option(fromList.options[i].text);
			toList.options[toListLength].value=fromList.options[i].value;
			fromList.options[i]=null;
			i--;
		}
		i++;
	}
}
function validate_FckEditor(instanceName)
{
	var oEditor = FCKeditorAPI.GetInstance(instanceName);
	var str =oEditor.EditorDocument.body.innerHTML;
	str = str.replace("&nbsp;", "");
     	str = str.replace("<BR>", "");
     	str = str.replace("<BR/>", "");
     	str = str.replace("<P>", "");
     	str = str.replace("</P>", "");
     	str = str.replace("<br>", "");
     	str = str.replace("<br/>", "");
     	str = str.replace("<p>", "");
     	str = str.replace("</p>", "");
     	if(str == "")
     		return false;
     	else
     		return true;
}

// Project Specific functions

function fnCopyBillToShip(chkObject,theForm)
{
	var arrayCount=0;
	var formField;
	formFieldShippingArray=new Array("vchShippingFirstName","vchShippingLastName","vchShippingAddress1","vchShippingAddress2","vchShippingCity","intShippingState","intShippingCountry","vchShippingPhone","vchShippingMobile");
	formFieldBillingArray=new Array("vchBillingFirstName","vchBillingLastName","vchBillingAddress1","vchBillingAddress2","vchBillingCity","intBillingState","intBillingCountry","vchBillingPhone","vchBillingMobile");

	for(arrayCount=0;arrayCount<formFieldBillingArray.length;arrayCount++)
	{
    	if(chkObject.checked==true)
    	{
    		theForm.elements[(formFieldShippingArray[arrayCount])].value = theForm.elements[(formFieldBillingArray[arrayCount])].value;
       		theForm.elements[(formFieldShippingArray[arrayCount])].readOnly = true;
       		theForm.intShippingState.disabled = true;
       		theForm.intShippingCountry.disabled = true;
   		}
   		else
   		{
       		//theForm.elements[(formFieldShippingArray[arrayCount])].value = "";
   			theForm.elements[(formFieldShippingArray[arrayCount])].readOnly = false;
       		theForm.intShippingState.disabled = false;
       		theForm.intShippingCountry.disabled = false;
       		//document.frmAccountDetails.elements[(formFieldShippingArray[arrayCount])].value="";
		}
	}
}


/* For Ajax */
function changeStatus(theForm, id)
{
	var status=eval('theForm.enumStatus'+id).value;
	xajax_update_status(id,status);
}

function delete_record(id)
{
	if( confirm('Are you sure you want to delete this record?'))
		xajax_deleteRow(id);
}


// Image Swap Javascript
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function swap_text(txtCaption){
	if(window.document.getElementById)
	{
               window.document.getElementById("txtCaption").innerHTML=txtCaption;
	 }
           if(window.document.layers)
	   {
               window.document.layers["txtCaption"].innerHTML=txtCaption;
	       /*with(window.document.layers["txtCaption"].document){
                        open();
                        write(txtCaption);
                        close();
                  }*/
	    }
           if(window.document.all)
	   {
		window.document.all["txtCaption"].innerHTML=txtCaption;
	   }
}

// This can be used to display the hidden div. I used this for forms. Pass the Hidden id.
function showForm(frmId)
{
	var addFrm = document.getElementById(frmId);
	addFrm.style.display = "";
}

function showHiddenIDs(IDs)
{
	var IDs = IDs.split(',');
	for(i=0;i<IDs.length;i++)
	{
		e = document.getElementById(IDs[i]);
		e.style.display = "";
	}
}

function hideIDs(IDs)
{
	var IDs = IDs.split(',');
	for(i=0;i<IDs.length;i++)
	{
		e = document.getElementById(IDs[i]);
		e.style.display = "none";
	}
}

function alterDisplay(id)
{
	if(document.getElementById(id))
	{
		e = document.getElementById(id);
		if(e.style.display == 'none')
			e.style.display = "";
		else
			e.style.display = "none";
	}
}


function PrintThisContent(print_div_id,in_admin)
{
	var sWinHTML = document.getElementById(print_div_id).innerHTML;
	var class_file = "esys";
	var addl_path = "";
	if(in_admin==1)
	{
		addl_path = "../";
		class_file = "esys-admin";
	}
	var popup_content='<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>:: Cafegadgets ::</title><link href="css/'+class_file+'.css" rel="stylesheet" type="text/css"></head><body><table width="600"  border="0" cellspacing="0" cellpadding="0" align="center"><tr><td><img src="images/clr.gif" width="1" height="1" alt=""></td></tr><tr><td id="welcom-bg"><img src="images/clr.gif" width="1" height="2" alt=""></td></tr><tr><td style="padding:15px;"><img src="'+addl_path+'images/logo1.gif" title="Cafegadgets"></td></tr><tr><td bgcolor="#FFFFFF"><table width="100%" border="0" align="center" cellpadding="2" cellspacing="1"><tr class="trbglc"><td>' + sWinHTML + '</td></tr><tr class="trbglc"><td align="center"><img src="images/clr.gif" alt="" width="1" height="1"></td></tr></table></td></tr></table><table width="580" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td height="24" align="center" class="bottom-link-bg">Copyright &copy; 2006, cafegadgets.com. All Rights Reserved.</td></tr></table></body></html>';

	var sOption="toolbar=yes,location=no,directories=yes,menubar=yes,";
	sOption+="scrollbars=yes,width=620,height=460,left=100,top=25";

	var winprint=window.open("","",sOption);
	winprint.document.open();
	winprint.document.write(popup_content);

	winprint.print();
    winprint.document.close();
    winprint.focus();
}

function compareDates(sDate, eDate)
{
	sDate=sDate.replace(/\//g,'-');	//g for global replace
	eDate=eDate.replace(/\//g,'-');

	var s=sDate.split('-');
	var e=eDate.split('-');

	//s[1],s[2],s[0],e[1],e[2],e[0]
	//dateCompare(pm,pdt,pyr,m,dt,yr)

	/*alert(s[0]+'>'+e[0]);
	alert(parseInt(s[1])+'>'+parseInt(e[1]));
	alert(parseInt(s[2])+'>'+parseInt(e[2]));*/

	if(s[0]>e[0])
		return false;
	else if(s[0]==e[0])
	{
		if(parseInt(eval(s[1]))>parseInt(eval(e[1])))
			return false;
		else if(parseInt(eval(s[1]))==parseInt(eval(e[1])))
		{
			if(parseInt(eval(s[2]))>parseInt(eval(e[2])))
				return false;
		}
	}
	return true;
}


function popitup(url) {
	newwindow=window.open(url,'','height=700,width=1003,resizable=yes,scrollbars=yes,menubar=no,status=yes,toolbar=no');
	if(window.focus) {newwindow.focus()}
	return false;
}