/*
#########################################################################################

	Validation Script Version - 1.0

	Written By	 			: Gagan Bagga
	Last Updated On 		: 16-Aug-2005
	Purpose					: To validate the form elements
	Functions & Parameters	: 

		Name of the Function		Parameters							Return Type

	1.	validate_form()				Referernce of the form				Boolean
	2.	lr_trim()														String
	3.	chkSplCharacters()			Reference of an text element	
	4.	chkSplFormat()				Reference of an text element

#########################################################################################
*/

var bValid = 1;
var intCheckBoxSelected = 0;

function lr_trim()
{
	return this.replace(/^\s+/,'').replace(/\s+$/,'');
}
String.prototype.trim = lr_trim;

function chkSplCharacters(cntrl)
{
	var discardChars = "<>";
	var splChars = "`~!@#$%^&*():;";
	var splCharCounter = 0;
//	cntrl.value = cntrl.value.replace(/</,"&lt;");
//	cntrl.value = cntrl.value.replace(/>/,"&gt;");
//	cntrl.value = cntrl.value.replace(/&/,"&amp;");
//	cntrl.value = cntrl.value.replace(/"/,"&quot;");
//	cntrl.value = cntrl.value.replace(/'/,"&apos;");
    for (var i = 0; i < cntrl.value.length; i++)
    {
	    if (discardChars.indexOf(cntrl.value.charAt(i)) != -1)
	    {
		    //Alert ("Following special characters are not allowed.\n\n" + discardChars);
		    inlineMsg(cntrl.id,'Following special characters are not allowed.\n\n ' + discardChars ,2)
		    cntrl.select();
            bValid = 0;
            break;
        }
        if (splChars.indexOf(cntrl.value.charAt(i)) != -1)
		    splCharCounter++;
	    else
		    splCharCounter = 0;
	    if (splCharCounter > 2)
	    {
		    //Alert ("Invalid input for " + cntrl.getAttribute("label"));
		    inlineMsg(aElements[i].id,'Invalid input for ' + aElements[i].getAttribute("label")+ '.' ,2)
		    cntrl.select();
            bValid = 0;
            break;
	    }
    }
}

function chk(cbox)
 {
	
	var cname = cbox.tagName;
	
	if (cname=="SPAN")
	{
		if(cbox.childNodes(0).checked)
		{
			intCheckBoxSelected++;
		}
		else
		{
			intCheckBoxSelected--;
		}
	}
	else if (cname=="INPUT")
	{
		if(cbox.checked)
		{
			intCheckBoxSelected++;
		}	
		else
		{
			intCheckBoxSelected--;
		}
	}
	//alert(intCheckBoxSelected)
 }


function checkDelete(p_strDatagridId, p_strCheckBoxName, p_strMessage)
{
	var flg = 0;
	var objtbl = document.getElementById(p_strDatagridId);
	var RowID = objtbl.rows.length;
	try
	{
		if(intCheckBoxSelected >0)
		{
			flg =1;
		}
	}
	catch(e)
	{
		flg = 0
	}
	if(flg == 0)
	{
		if (p_strMessage == "" )  
		p_strMessage =  "You must select at least one item to be deleted."; 
		Alert(p_strMessage);
		return false;	
	}
	else 
	{	
	    return confirm("Are you sure you want to delete selected items ? ");
	}
}



function chkSplFormat(cntrl)
{
	var format = cntrl.getAttribute("format").toLowerCase();	
	switch(format)
	{
		case 'email':
			var addr = cntrl.value;
			var addr_array = addr.split(",");
			var iCurrPos =0;
			if (addr_array.length > 1)
			{
				for (var iCtr = 0; iCtr < addr_array.length; iCtr++)
				{
					if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(addr_array[iCtr].trim()))
					{
						//Alert("Invalid email adderss,\n as it is not in the correct format: xxx@xxx.xxx");
						//Alert("Please enter a valid Email Address");
						inlineMsg(cntrl.getAttribute("id"),'Please enter a valid ' + cntrl.getAttribute("label")+ '.' ,2)
						var oRange = cntrl.createTextRange();
						var iPos = addr.indexOf(addr_array[iCtr].trim(), iCurrPos);
						oRange.moveStart("character", iPos);
						oRange.moveEnd("character", (iPos + addr_array[iCtr].trim().length) - addr.length);
						oRange.select();
						bValid = 0;
						break;					
					}
					iCurrPos += addr_array[iCtr].length;
				}
			}
			else
			{
				if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(addr))
				//if (!/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,6})+$/.test(addr))
				{
					//Alert("Your email address does not look correct: xxx@xxx.xxx\nPlease check and try again");
					//Alert("Please enter a valid Email Address");
					inlineMsg(cntrl.getAttribute("id"),'Please enter a valid ' + cntrl.getAttribute("label")+ '.' ,2)
					cntrl.select();
					bValid = 0;
				}
			}
			break;
		case 'url':
			var url = cntrl.value;
			if (!/^http[s]*\:\/\/[wW]{3}\.+[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4}.*$|^http[s]*\:\/\/[^w]{3}[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4}.*$|http[s]*\:\/\/[0-9]{2,3}\.[0-9]{2,3}\.[0-9]{2,3}\.[0-9]{2,3}.*$/.test(url))
			//if (!/^(ftp|https?):\/\/(www\.)?[a-z0-9\-\_\.]{3,}\.[a-z]{2,6}(\/)?([a-z0-9\-\#\%\&\.\?\=])+$/.test(url))
			{
				//Alert("This is not a valid url,\n as it is not in the correct format: http://www.xxxxxx.xxx");
				inlineMsg(cntrl.getAttribute("id"),'This is not a valid url,\n as it is not in the correct format: http://www.xxxxxx.xxx' ,2)
				cntrl.select();
				bValid = 0;
			}
			break;		
		case 'phone/fax':
			var phoneFax = cntrl.value;
			if (cntrl.getAttribute("country") != null)
			{
				var country = cntrl.getAttribute("country").toUpperCase();
				switch (country)
				{
					case 'UK' :
						if (!/^0[1|2|7]{1}[0-9\s]{9,12}/i.test(phoneFax))
						{
							//Alert("Please enter a valid " + cntrl.getAttribute("label") + " to a UK number beginning with 01, 02 or 07");
							inlineMsg(cntrl.getAttribute("id"),'Please enter a valid ' + cntrl.getAttribute("label") + ' to a UK number beginning with 01, 02 or 07' ,2)
							cntrl.select();
							bValid = 0;						
						}
						break;
				}
			}
			else
			{
				var validChars = ", +-()0123456789";
				for(i=0;i < phoneFax.length;i++)
				{
					if(validChars.indexOf(phoneFax.charAt(i)) == -1)
					{
						//Alert("Please enter a valid " + cntrl.getAttribute("label"));
						inlineMsg(cntrl.getAttribute("id"),'Please enter a valid ' + cntrl.getAttribute("label") ,2)
						cntrl.select();
						bValid = 0;
						break;
					}
				}
			}
			break;
		case 'postcode' :
			var postCode = cntrl.value;			
			if (!/^[a-pr-uwyz]((\d{1,2})|([a-hk-y]\d{1,2})|(\d[a-hjks-uw])|([a-hk-y]\d[abehmnprv-y]))\s{0,1}\d[abd-hjlnp-uw-z]{2}$/i.test(postCode))
			{
				inlineMsg(cntrl.getAttribute("id"),'Please enter a valid Postcode' + cntrl.getAttribute("label") ,2)
				cntrl.select();
				bValid = 0;
				return false;
			}
			break;
		case 'numeric' :
			var val = cntrl.value;
			var data_type = cntrl.getAttribute("data-type").toLowerCase();
			switch (data_type)
			{
				case 'int':
					if(!/^(\+|-)?\d+$/.test(cntrl.value))
					{
						//Alert("Please enter only numeric value for " + cntrl.getAttribute("label"));
						inlineMsg(cntrl.getAttribute("id"),'Please enter only numeric value for ' + cntrl.getAttribute("label") ,2)
						cntrl.select();
						bValid = 0;
					}
					break;
				case 'unsigned int' :
					if(!/^\d+$/.test(cntrl.value))
					{
						//Alert("Please enter only digits for " + cntrl.getAttribute("label"));
						inlineMsg(cntrl.getAttribute("id"),'Please enter only digits for ' + cntrl.getAttribute("label") ,2)
						cntrl.select();
						bValid = 0;
					}				
					break;
				case 'decimal':
					if(!/^-{0,1}\d*\.{0,1}\d+$/.test(cntrl.value))
					{
						//Alert("Please enter only numeric value for " + cntrl.getAttribute("label"));
						inlineMsg(cntrl.getAttribute("id"),'Please enter only numeric value for ' + cntrl.getAttribute("label") ,2)
						cntrl.select();
						bValid = 0;
					}
					break;
				case 'unsigned decimal' :
					if(!/^\d*\.{0,1}\d+$/.test(cntrl.value))
					{
						//Alert("Please enter only digits for " + cntrl.getAttribute("label"));
						inlineMsg(cntrl.getAttribute("id"),'Please enter only digits for ' + cntrl.getAttribute("label") ,2)
						cntrl.select();
						bValid = 0;
					}				
					break;					
			}
			if(data_type.indexOf('unsigned') > 0 && val < 0)
			{
				//Alert("Negative value is not allowed for " + cntrl.getAttribute("label"));
				inlineMsg(cntrl.getAttribute("id"),'Negative value is not allowed for ' + cntrl.getAttribute("label") ,2)
				cntrl.select();
				bValid = 0;
			}
			if(cntrl.getAttribute("zero-allowed") == null && val == 0)
			{
				//Alert("Zero (0) value is not allowed for " + cntrl.getAttribute("label"));
				inlineMsg(cntrl.getAttribute("id"),'Zero (0) value is not allowed for ' + cntrl.getAttribute("label") ,2)
				cntrl.select();
				bValid = 0;
			}
			break;
		case 'text' :		    
			var val = cntrl.value;
			if(!/^[a-z][-a-z0-9 ]+$/i.test(cntrl.value))
			{
				//Alert("Please enter your " + cntrl.getAttribute("label") + " correctly (with alphabetic characters)");
				inlineMsg(cntrl.getAttribute("id"),'Please enter your ' + cntrl.getAttribute("label") + ' correctly (with alphabetic characters)' ,2)
				cntrl.select();
				bValid = 0;
			}
			break;
		case 'date' :
			var dtTargetDate = new Date(cntrl.value.replace(/-/g, " "));
			if(cntrl.getAttribute("discard-past-dates") != null && dtTargetDate <= new Date())
			{
				//Alert("Please select a valid future date for " + cntrl.getAttribute("label"));
				inlineMsg(cntrl.getAttribute("id"),'Please select a valid future date for ' + cntrl.getAttribute("label") ,2)
				cntrl.select();
				bValid = 0;
			}			
			break;			
		case 'username/password':
			var splChars = " ";
			for (var i = 0; i < cntrl.value.length; i++)
			{
				if (splChars.indexOf(cntrl.value.charAt(i)) != -1)
				{
					Alert ("Blank spaces are allowed for " + cntrl.getAttribute("label"));
					//inlineMsg(cntrl.getAttribute("id"),'Blank spaces are allowed for ' + cntrl.getAttribute("label") ,2)
					cntrl.select();
			        bValid = 0;
			        break;
			    }
			}
	}
}

function doComparision(cntrl1, cntrl2)
{
	if(cntrl1.value != cntrl2.value)
	{
		//Alert("\"" + cntrl2.getAttribute("label") + "\" and \"" + cntrl1.getAttribute("label") + "\" do not match");
		inlineMsg(cntrl2.getAttribute("id"),cntrl2.getAttribute('label') + ' and ' + cntrl1.getAttribute('label') + ' do not match' ,2)
		cntrl1.value="";
		cntrl2.value="";
		cntrl2.focus();
		bValid = 0;
	}
}

function validate_file(oFile)
{
	var vFileName = oFile.value.trim();
	if (vFileName == "")
		return false;
	iDotPos = vFileName.lastIndexOf(".")
	if(iDotPos <= 0)
	{
		//Alert("You must specified the valid value for the field \"" + oFile.getAttribute("label") + "\"");
		inlineMsg(oFile.getAttribute("id"),"You must specified the valid value for the field \"" +  + oFile.getAttribute("label") + "\"" ,2)
		oFile.focus();
		bValid = 0;
		return false;
	}
	else
	{
		if(oFile.getAttribute("filter") != null)
		{
			var aValidFileTypes = oFile.getAttribute("filter").split("/");
			var bValidFile = false;
			for(var ctr = 0; ctr < aValidFileTypes.length; ctr++)
			{
				var vFileExt = vFileName.substring(iDotPos);
				if(vFileExt.toLowerCase() == aValidFileTypes[ctr])
				{
					bValidFile = true; break;
				}
			}
			if(!bValidFile)
			{
				//Alert("System allows only the following file types\n\n{" + oFile.getAttribute("filter") + "}");
				inlineMsg(oFile.getAttribute("id"),"System allows only the following file types\n\n{" + oFile.getAttribute("filter") + "}" ,2)
				oFile.focus();
				bValid = 0;
				return false;
			}
		}
	}
	return true;
}

function validate_form(oFrm,arg1)
{
	var arrElement = arg1.split(",");
	bValid = 1;
	for(var i=0;i<arrElement.length;i++)
	{
	    if(document.getElementById(arrElement[i])!=null)
	    {
	        if(!(document.getElementById(arrElement[i]).disabled || document.getElementById(arrElement[i]).getAttribute("with-no-check") != null || document.getElementById(arrElement[i]).type == "button" || document.getElementById(arrElement[i]).type == "submit"))
		    {
			    if(document.getElementById(arrElement[i]).type=="text" || document.getElementById(arrElement[i]).type=="password")
			    {
				    if(document.getElementById(arrElement[i]).type != "password")
					    document.getElementById(arrElement[i]).value = document.getElementById(arrElement[i]).value.trim();
				    if(document.getElementById(arrElement[i]).value.length == 0 || (document.getElementById(arrElement[i]).getAttribute("null-value") != null && document.getElementById(arrElement[i]).getAttribute("null-value").toLowerCase() == document.getElementById(arrElement[i]).value.toLowerCase()))
				    {
					    if(document.getElementById(arrElement[i]).getAttribute("required") != null)
					    {
						    //Alert("Please enter " + document.getElementById(arrElement[i]).getAttribute("label"));
						    //document.getElementById(arrElement[i]).focus();
						    inlineMsg(document.getElementById(arrElement[i]).id,'Please enter ' + document.getElementById(arrElement[i]).getAttribute("label")+ '.' ,2)
						    bValid = 0;
						    break;
					    }
				    }
				    if(document.getElementById(arrElement[i]).value.length > 0)
				    {
				        if(document.getElementById(arrElement[i]).getAttribute("nospace") != null)
						    chkSpace(document.getElementById(arrElement[i]));
					    if(document.getElementById(arrElement[i]).getAttribute("format") == null)
						    chkSplCharacters(document.getElementById(arrElement[i]));
					    else if(document.getElementById(arrElement[i]).getAttribute("format").toLowerCase() != "none")
					    {
						    if(document.getElementById(arrElement[i]).getAttribute("default") != null)
						    {
							    if(document.getElementById(arrElement[i]).value.toLowerCase() != document.getElementById(arrElement[i]).getAttribute("default").toLowerCase())
								    chkSplFormat(document.getElementById(arrElement[i]));
						    }
						    else
							    chkSplFormat(document.getElementById(arrElement[i]));
					    }
					    if(document.getElementById(arrElement[i]).getAttribute("compareWith") != null && bValid==1)
					    {
					        doComparision(document.getElementById(arrElement[i]), eval(document.getElementById(arrElement[i]).getAttribute("compareWith")));
    					    
					    }
					    if(document.getElementById(arrElement[i]).getAttribute("minlength") != null && bValid==1)
					    {
						    if(document.getElementById(arrElement[i]).value.length < document.getElementById(arrElement[i]).getAttribute("minlength"))
						    {
							    Alert("You have not entered the minimum required text (" + document.getElementById(arrElement[i]).getAttribute("minlength") + " characters) for " + document.getElementById(arrElement[i]).getAttribute("label") + "\nPlease edit your entry and re-submit");							
							    document.getElementById(arrElement[i]).focus();
							    bValid = 0;
						    }
					    }
				    }
			    }
			    else if(document.getElementById(arrElement[i]).type == "textarea")
			    {
				    var iframe = false;
				    if (document.all)
				    {
					    var editor_obj = eval(document.all["_" + document.getElementById(arrElement[i]).name + "_editor"]);
					    if (typeof(editor_obj) == "object")
						    if (editor_obj.tagName.toLowerCase() == 'iframe')
							    iframe = true;
				    }
				    else
				    {
					    var editor_obj = document.getElementsByTagName("_" + document.getElementById(arrElement[i]).name + "_editor");
					    if (typeof(editor_obj) == "object" && editor_obj.length != 0)
						    if (editor_obj.tagName.toLowerCase() == 'iframe')
							    iframe = true;	
				    }
				    if (iframe)
				    {
					    var editdoc = editor_obj.contentWindow.document;
					    var contents = editdoc.body.createTextRange().htmlText;
					    if (contents.length == 0 && document.getElementById(arrElement[i]).getAttribute("required") != null)
					    {
						    //Alert("Please enter " + document.getElementById(arrElement[i]).getAttribute("label"));
						    inlineMsg(document.getElementById(arrElement[i]).id,'Please enter ' + document.getElementById(arrElement[i]).getAttribute("label")+ '.' ,2)
						    editor_obj.focus();
						    bValid = 0;
						    break;
					    }
					    else if (contents.length > document.getElementById(arrElement[i]).getAttribute("maxlength"))
					    {
						    //Alert(document.getElementById(arrElement[i]).getAttribute("label") + " should not exceed the maximum length of " + document.getElementById(arrElement[i]).getAttribute("maxlength") + " characters");
						    inlineMsg(document.getElementById(arrElement[i]).id,document.getElementById(arrElement[i]).getAttribute("label")+  + ' should not exceed the maximum length of ' + document.getElementById(arrElement[i]).getAttribute("maxlength") + ' characters' ,2)
						    editor_obj.focus();
						    bValid = 0;
						    break;
					    }
				    }
				    else
				    {
					    if (document.getElementById(arrElement[i]).value.replace(/ /g,"").length == 0 && document.getElementById(arrElement[i]).getAttribute("required") != null)
					    {
						    //Alert("Please enter " + document.getElementById(arrElement[i]).getAttribute("label"));
						    inlineMsg(document.getElementById(arrElement[i]).id,'Please enter ' + document.getElementById(arrElement[i]).getAttribute("label")+ '.' ,2)
						    document.getElementById(arrElement[i]).focus();
						    bValid = 0;
						    break;
					    }
					    else if (document.getElementById(arrElement[i]).value.length > document.getElementById(arrElement[i]).getAttribute("maxlengths"))
					    {
						    //Alert(document.getElementById(arrElement[i]).getAttribute("label") + " should not exceed the maximum length of " + document.getElementById(arrElement[i]).getAttribute("maxlength") + " characters");
						    inlineMsg(document.getElementById(arrElement[i]).id,document.getElementById(arrElement[i]).getAttribute("label") + ' should not exceed the maximum length of ' + document.getElementById(arrElement[i]).getAttribute("maxlengths") + ' characters' ,2)
						    document.getElementById(arrElement[i]).focus();
						    bValid = 0;
						    break;
					    }						
				    }
			    }
			    else if(document.getElementById(arrElement[i]).type=="file")
			    {
                    if(document.getElementById(arrElement[i]).getAttribute("checkonpreview")!= null)
	                {	               
	                    if(document.getElementById(document.getElementById(arrElement[i]).getAttribute("checkonpreview")).value=='')
	                        {
				                if(document.getElementById(arrElement[i]).value.trim() == "")
				                {
					                if(document.getElementById(arrElement[i]).getAttribute("required") != null)
					                {
						                //Alert("Please select " + document.getElementById(arrElement[i]).getAttribute("label"));
						                inlineMsg(document.getElementById(arrElement[i]).id,'Please ' + document.getElementById(arrElement[i]).getAttribute("label")+ '.' ,2)
						                document.getElementById(arrElement[i]).select();
						                bValid = 0;
						                break;
					                }
				                }
				                else
				                {
					                validate_file(document.getElementById(arrElement[i]));
				                }
				            }
				    }
			    }
			    else if(document.getElementById(arrElement[i]).type == "select" || document.getElementById(arrElement[i]).type == "select-one") // If it is a combox box
			    {
				    if(document.getElementById(arrElement[i])[document.getElementById(arrElement[i]).selectedIndex].value=="0" && document.getElementById(arrElement[i]).getAttribute("required") != null)
				    {
					    //Alert("Please select " + document.getElementById(arrElement[i]).getAttribute("label") + " from the list");
					    inlineMsg(document.getElementById(arrElement[i]).id,'Please select ' + document.getElementById(arrElement[i]).getAttribute("label")+ ' from the list' ,2)
					    document.getElementById(arrElement[i]).focus();
					    bValid = 0;
					    break;
				    }
				    if(document.getElementById(arrElement[i])[document.getElementById(arrElement[i]).selectedIndex].value!="0" && document.getElementById(arrElement[i]).getAttribute("checkStates") != null)				
				    {
				        ckeckStatesValidation(document.getElementById(arrElement[i]));				    
				    }
			    }
			    else if(document.getElementById(arrElement[i]).type == "select-multiple") // If it is a list box
			    {
				    if(document.getElementById(arrElement[i]).length==0 && document.getElementById(arrElement[i]).getAttribute("required") != null)
				    {
					    //Alert("Please enter \"" + document.getElementById(arrElement[i]).getAttribute("label") + "\"");
					    inlineMsg(document.getElementById(arrElement[i]).id,'Please enter \" ' + document.getElementById(arrElement[i]).getAttribute("label")+ '\""' ,2)
					    document.getElementById(arrElement[i]).focus();
					    bValid = 0;
					    break;
				    }
			    }
			    else if(document.getElementById(arrElement[i]).type == "radio") // If it is a radio button
			    {
				    var objRadioGroup = oFrm.elements[document.getElementById(arrElement[i]).name];
				    var bChecked = false;
				    if (objRadioGroup.length == null)
				    {
					    if (objRadioGroup.checked)
						    bChecked = true;
				    }
				    else
				    {
					    for(var j=0; j< objRadioGroup.length; j++)
					    {
						    if(objRadioGroup[j].checked)
						    {
							    bChecked = true;
							    break;
						    }
					    }
				    }
				    if(!bChecked && document.getElementById(arrElement[i]).getAttribute("required") != null)
				    {
					    //Alert("Please select " + document.getElementById(arrElement[i]).getAttribute("label"));
					    inlineMsg(document.getElementById(arrElement[i]).id,'Please select ' + document.getElementById(arrElement[i]).getAttribute("label")+ '.' ,2)
					    document.getElementById(arrElement[i]).focus();
					    bValid = 0;
					    break;
				    }
			    }
    			
		    }
	    }
    }
	if(!bValid) 
	    return false;	
	return true;
}
function Alert(arg)
{
    document.getElementById("CPHolderAdmin_msg_div").innerHTML = arg;
}
function chkSpace(strValue)
{
    var objRegExp
    objRegExp = new RegExp(/\s+/g)
    if(!objRegExp.test(strValue.value))
    {
        bValid = 1;
    }
    else
    {
        Alert('No space is allowed in '+strValue.getAttribute("label"));
        bValid = 0;
    }
}
function ckeckStatesValidation(arg)
{
    if(arg.options[arg.options.selectedIndex].text.toUpperCase()  == 'INDIA')
    {
        if(document.getElementById('CPHolderAdmin_cmbState').value == 0)
            //Alert("Please select State from the list");
            inlineMsg('CPHolderAdmin_cmbState','Please select State from the list' ,2)
            bValid = 0;
    }
    else
    {
        if(document.getElementById('CPHolderAdmin_txtOther').value.replace(/ /g,"") == '')
        {
            //Alert("Please enter Other");
            inlineMsg('CPHolderAdmin_txtOther','Please enter Other' ,2)
            bValid = 0;
        }   
    }
}

//***************************************************************************888//

// START OF MESSAGE SCRIPT //

var MSGTIMER = 20;
var MSGSPEED = 5;
var MSGOFFSET = 3;
var MSGHIDE = 3;

// build out the divs, set attributes and call the fade function //
function inlineMsg(target,string,autohide) 
{
  var msg;
  var msgcontent;
  if(!document.getElementById('msg')) 
  {
    msg = document.createElement('div');
    msg.id = 'msg';
    msgcontent = document.createElement('div');
    msgcontent.id = 'msgcontent';
    document.body.appendChild(msg);
    msg.appendChild(msgcontent);
    msg.style.filter = 'alpha(opacity=0)';
    msg.style.opacity = 0;
    msg.alpha = 0;    
  } 
  else 
  {
    msg = document.getElementById('msg');
    msgcontent = document.getElementById('msgcontent');
  }
  msgcontent.innerHTML = string;  
  msg.style.display = 'block';
  var msgheight = msg.offsetHeight;  
  var targetdiv = document.getElementById(target);
  targetdiv.focus();
  var targetheight = targetdiv.offsetHeight;
  var targetwidth = targetdiv.offsetWidth;
  var topposition = topPosition(targetdiv) - ((msgheight - targetheight) / 2);
  var leftposition = leftPosition(targetdiv) + targetwidth + MSGOFFSET;
  msg.style.top = topposition + 'px';
  msg.style.left = leftposition + 'px';
  clearInterval(msg.timer);
  msg.timer = setInterval("fadeMsg(1)", MSGTIMER);
  if(!autohide) {
    autohide = MSGHIDE;
  }
  window.setTimeout("hideMsg()", (autohide * 1000));
}

// hide the form alert //
function hideMsg(msg) {
  var msg = document.getElementById('msg');
  if(!msg.timer) {
    msg.timer = setInterval("fadeMsg(0)", MSGTIMER);
  }
}

// face the message box //
function fadeMsg(flag) {
  if(flag == null) {
    flag = 1;
  }
  var msg = document.getElementById('msg');
  var value;
  if(flag == 1) {
    value = msg.alpha + MSGSPEED;
  } else {
    value = msg.alpha - MSGSPEED;
  }
  msg.alpha = value;
  msg.style.opacity = (value / 100);
  msg.style.filter = 'alpha(opacity=' + value + ')';
  if(value >= 99) {
    clearInterval(msg.timer);
    msg.timer = null;
  } else if(value <= 1) {
    msg.style.display = "none";
    clearInterval(msg.timer);
  }
}

// calculate the position of the element in relation to the left of the browser //
function leftPosition(target) {
  var left = 0;
  if(target.offsetParent) {
    while(1) {
      left += target.offsetLeft;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.x) {
    left += target.x;
  }
  return left;
}

// calculate the position of the element in relation to the top of the browser window //
function topPosition(target) {
  var top = 0;
  if(target.offsetParent) {
    while(1) {
      top += target.offsetTop;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.y) {
    top += target.y;
  }
  return top;
}

// preload the arrow //
if(document.images) {
 arrow1 = new Image(7,80); 
  arrow1.src = "images/msg_arrow.gif";
}

function RequiredFCKValiDation()
{
    
    var oEditor = FCKeditorAPI.GetInstance('ctl00_ContentPlaceHolder1_FCKeditor1') ;					
    var sTemp1 = oEditor.EditorDocument.body.innerHTML;                 	                       
    var _blankspace='&nbsp;'; 
    var _nospace='';
    
    regX = new RegExp(_blankspace,"g");  
    sTemp1 = sTemp1.replace(regX,_nospace);                        

    _blankspace='<p>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</p>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<P>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</P>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<br>';                     
    regX = new RegExp(_blankspace,"g"); 
    sTemp1 = sTemp1.replace(regX,_nospace);
    
    var sTemp1 = sTemp1.replace(/^\s+/, '');
        sTemp1 = sTemp1.replace(/\s+$/, '');    
        
                  
   if(sTemp1.length == 0)
   {                          
       oEditor.EditorDocument.body.innerHTML = '';                                                              
       inlineMsg('divFCK','Please Enter Text' ,2) 
       return false;           
   }
  else
  {                      
       return true;
  } 
 
}

function ValidateQuickPost()
{
    
    var oEditor = FCKeditorAPI.GetInstance('ctl00_ContentPlaceHolder1_FCKeditor1') ;					
    var sTemp1 = oEditor.EditorDocument.body.innerHTML;                 	                       
    var _blankspace='&nbsp;'; 
    var _nospace='';
    
    regX = new RegExp(_blankspace,"g");  
    sTemp1 = sTemp1.replace(regX,_nospace);                        

    _blankspace='<p>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</p>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<P>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</P>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<br>';                     
    regX = new RegExp(_blankspace,"g"); 
    sTemp1 = sTemp1.replace(regX,_nospace);
    
    var sTemp1 = sTemp1.replace(/^\s+/, '');
        sTemp1 = sTemp1.replace(/\s+$/, '');    
        
                  
   if(sTemp1.length == 0)
   {                          
       oEditor.EditorDocument.body.innerHTML = '';                                                              
       inlineMsg('divFCK','Please enter Description' ,2) 
       return false;
   }
//  else
//  {                      
//       return true;
//  } 
  if(document.getElementById('ctl00_ContentPlaceHolder1_txtUserName').value =="")
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtUserName','Please enter UserName' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtUserName').value.length >100)
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtUserName','UserName should not exceed the maximum length of 100 characters ' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtEmail').value =="")
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','Please enter Email' ,2) 
       return false;
    }
    else 
    {
        var email = document.getElementById('ctl00_ContentPlaceHolder1_txtEmail');
        var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        if (!filter.test(email.value)) 
        {        
            inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','Please enter valid Email ID.' ,2);
            email.focus();
            return false;
        }
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtEmail').value.length >100)
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','EmailID should not exceed the maximum length of 100 characters ' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length != 0)
     {
      val=document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.substring(document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length-4,document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length);
      
      if (val !='.jpeg' && val!='.gif' && val!='.jpg')
      {
       inlineMsg('ctl00_ContentPlaceHolder1_ImageUpload','Only image file can be uploaded.' ,2);            
       return false;
      }
     }

}
function ValidateNewPost()
{    
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtTitle').value =="")
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtTitle','Please enter Title' ,2) 
       return false;
    }
    
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtTitle').value.length >100)
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtTitle','Title should not exceed the maximum length of 100 characters ' ,2) 
       return false;
    }
    
    var oEditor = FCKeditorAPI.GetInstance('ctl00_ContentPlaceHolder1_FCKeditor1') ;					
    var sTemp1 = oEditor.EditorDocument.body.innerHTML;                 	                       
    var _blankspace='&nbsp;'; 
    var _nospace='';
    
    regX = new RegExp(_blankspace,"g");  
    sTemp1 = sTemp1.replace(regX,_nospace);                        

    _blankspace='<p>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</p>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<P>';                    
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
                        
    _blankspace='</P>'; 
    regX = new RegExp(_blankspace,"g");
    sTemp1 = sTemp1.replace(regX,_nospace); 
    
    _blankspace='<br>';                     
    regX = new RegExp(_blankspace,"g"); 
    sTemp1 = sTemp1.replace(regX,_nospace);
    
    var sTemp1 = sTemp1.replace(/^\s+/, '');
        sTemp1 = sTemp1.replace(/\s+$/, '');    
        
                  
   if(sTemp1.length == 0)
   {                          
       oEditor.EditorDocument.body.innerHTML = '';                                                              
       inlineMsg('divFCK','Please enter Description' ,2) 
       return false;           
   }
//  else
//  {                      
//       return true;
//  } 
  if(document.getElementById('ctl00_ContentPlaceHolder1_txtUserName').value =="")
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtUserName','Please enter UserName' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtUserName').value.length >100)
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtUserName','UserName should not exceed the maximum length of 100 characters ' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtEmail').value =="")
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','Please enter Email' ,2) 
       return false;
    }
    else 
    {
        var email = document.getElementById('ctl00_ContentPlaceHolder1_txtEmail');
        var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        if (!filter.test(email.value)) 
        {        
            inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','Please enter valid Email ID.' ,2);
            email.focus();
            return false;
        }
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_txtEmail').value.length >100)
    {
       inlineMsg('ctl00_ContentPlaceHolder1_txtEmail','EmailID should not exceed the maximum length of 100 characters ' ,2) 
       return false;
    }
    if(document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length != 0)
     {
      val=document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.substring(document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length-4,document.getElementById('ctl00_ContentPlaceHolder1_ImageUpload').value.length);
      
      if (val !='.jpeg' && val!='.gif' && val!='.jpg')
      {
       inlineMsg('ctl00_ContentPlaceHolder1_ImageUpload','Only image file can be uploaded.' ,2);            
       return false;
      }
     }

}
function onkeyPress(e)
{ 
    var key = window.event ? e.keyCode : e.which;
    if (key == 13) StartClick(); e.cancelBubble = true; e.returnValue = false; return false; 
}

function ValidateSearch()
{
   var strTxtValue = '';
   var strRadId = '';
   
   if(document.getElementById('ctl00_ucltop_txtSearch')!=null)
        strTxtValue = 'ctl00_ucltop_txtSearch';
   else
        strTxtValue = 'ucltop_txtSearch';
        
    if(document.forms[0].ctl00$ucltop$rdoWebsite!=null)
        strRadId = 'ctl00$ucltop$rdoWebsite';
    else
        strRadId = 'ucltop$rdoWebsite';        
        
    var varSearch = document.getElementById(strTxtValue).value;
    if(varSearch =="")
    {
       inlineMsg(strTxtValue,'Please enter text for search.' ,2);
       return false;
    }
 }
function onkeyPresstext(e)
{
    if(navigator.appName=='Microsoft Internet Explorer') //check the browser
    {
        var key = window.event ? e.keyCode : e.which;        
        if(event.keyCode==13)
        {
            event.keyCode=9;
            if(document.getElementById('ctl00_ucltop_btnSearch')!=null)
                strTxtValue = 'ctl00_ucltop_btnSearch';
            else
                strTxtValue = 'ucltop$btnSearch';
            var btnControlID = strTxtValue;            
            var btn = document.getElementById(btnControlID);
            if(btn != null)
             {
                btn.click();
                return false;
             }
             return true;
        }
     }
}
function placeFocus()
{
//    if(document.getElementById('ctl00_ucltop_txtSearch')!=null)    
//        document.getElementById('ctl00_ucltop_txtSearch').focus();
//   else
//        document.getElementById('ucltop_txtSearch').focus();       
    if(document.getElementById('frmIndex')!=null)
        document.getElementById('frmIndex').focus();
    else
        document.getElementById('aspnetForm').focus();
}
function textCounter(field, maxlimit)// check length of textarea
    {
        if (field.value.length > maxlimit)
        {
            field.value = field.value.substring(0,maxlimit);
            inlineMsg(field.id,field.getAttribute("label") + ' should not exceed the maximum length of ' + field.getAttribute("maxlengths"),2);
        }
    }