function addRemoveClass(id,className){
	domObj = document.getElementById(id);
	currentClass = domObj.className;
	if (currentClass.indexOf(className)<0){
		currentClass = currentClass+" "+className;
		domObj.className = currentClass;
	}else{
		currentClass = currentClass.replace(className, "");
		domObj.className = currentClass;
	}
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

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_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 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 replaceCharacters(conversionString,inChar,outChar){
	var convertedString = conversionString.split(inChar);
	convertedString = convertedString.join(outChar);
	return convertedString;
}

function mailto(email,subject,body){
	//%0A%0D
 	location.href = "mailto:"+email+"?subject="+subject+"&body="+replaceCharacters(replaceCharacters(body,"<br>","%0A"),"<br />","%0A");
}

function encodeNameAndValue(sName, sValue) {
	var sParam = encodeURIComponent(sName);
	sParam += "=";
	sParam += encodeURIComponent(sValue);
	return sParam;
}

function getRequestBody(oForm) {

	//array to hold the params
	var aParams = new Array();

	//get your reference to the form
	//var oForm = document.forms[0];

	//iterate over each element in the form
	for (var i=0 ; i < oForm.elements.length; i++) {

		//get reference to the field
		var oField = oForm.elements[i];

		//different behavior based on the type of field
		switch (oField.type) {

			//buttons - we don't care
			case "button":
			case "submit":
			case "reset":
					 break;

			//checkboxes/radio buttons - only return the value if the control is checked.
			case "checkbox":
			case "radio":
				if (!oField.checked) {
					break;
				} //End: if

			//text/hidden/password all return the value
			case "text":
			case "hidden":
			case "password":
				aParams.push(encodeNameAndValue(oField.name, oField.value));
				break;

			//everything else
			default:

				switch(oField.tagName.toLowerCase()) {
					case "select":
						aParams.push(encodeNameAndValue(oField.name, oField.options[oField.selectedIndex].value));
						break;
					default:
						aParams.push(encodeNameAndValue(oField.name, oField.value));
				}
		}

	}

	return aParams.join("&");
}

function removeLeadingAndTrailingChar (inputString, removeChar){
	var returnString = inputString;
	if (removeChar.length){
		while(''+returnString.charAt(0)==removeChar){
			returnString=returnString.substring(1,returnString.length);
		}
		while(''+returnString.charAt(returnString.length-1)==removeChar){
			returnString=returnString.substring(0,returnString.length-1);
		}
	}
	return returnString;
}
function checkFieldLength(field,length,displayName){
	var field = MM_findObj(field);
	field.value = removeLeadingAndTrailingChar (field.value, " ");
	if(field.value.length < length){
		if(length == 1){
			alert("Please make sure "+displayName+" is completed.");
			field.select();
			field.focus();
		}else{
			alert("Please make sure "+displayName+" has at least "+length+" characters.");
			field.select();
			field.focus();
		}
		return false;
	}else{
		return true;
	}
}
function matchFields(field_1,field_2,displayName){
	var field_1 = MM_findObj(field_1);
	var field_2 = MM_findObj(field_2);
	if(field_1.value != field_2.value){
		alert("Please make sure that both "+displayName+" match correctly.");
		field_1.select();
		field_1.focus();
		return false;
	}else{
		return true;
	}
}

function validateSelectList(selectID,diplayValue){
	var selectObj = MM_findObj(selectID);
	if(-1 == parseInt(selectObj.value)){
		alert("Please select a "+diplayValue+" value.");
		selectObj.focus();
		return false;
	}else{
		return true;
	}
}
// emailName is the name of the text field
function validateEmail(emailName) {
	var emailObj = MM_findObj(emailName);
	if (window.RegExp) {
		var regstr_1 = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)"; //invalid email
		var regstr_2 = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4})(\\]?)$"; //valid email
		var reg1 = new RegExp(regstr_1);
		var reg2 = new RegExp(regstr_2);
		if (emailObj.value.length > 0 && !reg1.test(emailObj.value) && reg2.test(emailObj.value)){
			return true;
		}else{
			alert("Please enter a valid email address.");
			emailObj.focus();
			emailObj.select();
			return false;
		}
	}else{
		var p=emailObj.value.indexOf('@'); var z=emailObj.value.indexOf('.');
        if (z<1 || z==(emailObj.value.length-1) || p<1 || p==(emailObj.value.length-1)){
			alert("Please enter a valid email address.");
			emailObj.focus();
			emailObj.select();
			return false;
		}else{
			return true;
		}
	}
}
function checkFieldNumber(field,length,displayName){
	var field = MM_findObj(field);
	if(isNaN(field.value)){
		alert("Please make sure "+displayName+" is a number.");
		field.select();
		field.focus();
		return false;
	}else{
		if(length<0){
			if(field.value.length > 0){
				return true;
			}else{
				alert("Please make sure "+displayName+" has a value.");
				field.select();
				field.focus();
				return false;
			}
		}else if(field.value.length != length){
			alert("Please make sure "+displayName+" has "+length+" number(s).");
			field.select();
			field.focus();
			return false;
		}else{
			return true;
		}
	}
}
function lettersOnly(id,msg){
	if(window.RegExp){
		var o = document.getElementById(id);
		var regstr = "^[a-zA-Z]*$";
		var reg = new RegExp(regstr);
		if(reg.test(o.value)){
			return true;
		}else{
			alert(msg);
			o.select();
			o.focus();
			return false;
		}
	}else{
		return true;
	}
}

function isChecked(field,msg){
	field = MM_findObj(field);
	if(field.checked){
		return true;
	}else{
		alert(msg);
		field.focus();
		return false;
	}
}

//support form js - START
	checkSpam = function(id){
		var o=MM_findObj(id);
		var a=['af3@p','y5jdx','wh4qk','72zv8','bm3uc'];
		for(var i=0;i<a.length;i++){
			if(o.value==a[i]){
				return true;
			}
		}
		alert("Please enter the Anti-Spam Phrase.");
		o.select();
		o.focus();
		return false;
	};
submitform = function(){
		if(
			checkFieldLength('fullname',1,"Your Name") &&
			checkFieldLength('orgname',1,"Organization Name") &&
			checkFieldLength('mpid',1,"Media Portal Address") &&
			validateEmail('email') &&
			checkSpam('antispam')
	//		checkFieldLength('description',1,"Please enter a description of problem")
		){
			document.supportFrom.submit();
		}
};
//Support from js - END
function initSelectValue(selectID,selectValue){
	var selectObj = document.getElementById(selectID);
	for(var i=0;i<selectObj.options.length;i++){
		if(selectValue == selectObj.options.item(i).value){
			selectObj.selectedIndex = i;
		}
	}
}

