function getQueryStringParamValue(strQStrParam){var defaultValue=null;var strURL=document.location.href;var strQStrParamValue="";if(strURL.indexOf("?")!=-1){strQStrParamValue=strURL.substr(strURL.indexOf("?")+1);if(strQStrParamValue.indexOf(strQStrParam)!=-1){strQStrParamValue=strQStrParamValue.substr(strQStrParamValue.indexOf(strQStrParam));strQStrParamValue=strQStrParamValue.substr(strQStrParamValue.indexOf("=")+1);if(strQStrParamValue.indexOf("&")!=-1){strQStrParamValue=strQStrParamValue.substr(0,strQStrParamValue.indexOf("&"));}return strQStrParamValue;}else{strQStrParamValue=defaultValue;return strQStrParamValue;}}else{strQStrParamValue=defaultValue;return strQStrParamValue;}}function setCampaignID(elqForm){if(typeof(elqForm.elements["CampaignID"].value)=="undefined"){elqForm.elements["CampaignID"].value=getQueryStringParamValue("CID");}}var errorSet=null;FieldObj=function(){var Field;this.get_Field=function(){return Field;};this.set_Field=function(val){Field=val;};var ErrorMessage;this.get_ErrorMessage=function(){return ErrorMessage;};this.set_ErrorMessage=function(val){ErrorMessage=val;};};function ResetHighlight(){var field;if(errorSet!=null){for(var i=0;i<errorSet.length;i++){errorSet[i].Field.className="elqField";}}errorSet=new Array();}function DisplayErrorSet(ErrorSet){var element;var ErrorMessage="";for(var i=0;i<ErrorSet.length;i++){ErrorMessage=ErrorMessage+ErrorSet[i].ErrorMessage+"\n";ErrorSet[i].Field.className="elqFieldValidation";}if(ErrorMessage!=""){alert(ErrorMessage);}}function ValidateRequiredField(Element,args){var elementVal=Element.value;var testPass=true;if(Element){if(args.Type=="text"){if(Element.value==null||Element.value==""){return false;}}else{if(args.Type=="singlesel"){if(Element.value==null||Element.value==""){return false;}}else{if(args.Type=="multisel"){var selCount=0;for(var i=0;i<Element.length;i++){if(Element[i].selected&&Element[i].value!=""){selCount+=1;}}if(selCount==0){return false;}}}}}else{testPass=false;}return testPass;}function ValidateEmailAddress(Element){var varRegExp="^[A-Z0-9!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\|\\}~][A-Z0-9!#\\$%&'\\*\\+\\-/=\\?\\^_`\\{\\|\\}~\\.]{0,62}@([A-Z0-9](?:[A-Z0-9\\-]{0,61}[A-Z0-9])?(\\.[A-Z0-9](?:[A-Z0-9\\-]{0,61}[A-Z0-9])?)+)$";if((Element)&&(Element.value!="")){var reg=new RegExp(varRegExp,"i");var match=reg.exec(Element.value);if((match)&&(match.length==3)&&(match[1].length<=255)&&((match[2].length>=3)&&(match[2].length<=7))){return true;}}return false;}function ValidateDataTypeLength(Element,args,ErrorMessage){var elementVal=Element.value;var testPass=true;if(Element){if(args.Type=="text"){if((args.Minimum!="")&&(elementVal.length<args.Minimum)){testPass=false;}if((args.Maximum!="")&&(elementVal.length>args.Maximum)){testPass=false;}}else{if(args.Type=="numeric"){if((elementVal=="")){testPass=false;}if((elementVal!="")&&(elementVal!=parseFloat(elementVal))){testPass=false;}if(args.Minimum!=""){if((elementVal=="")||(parseFloat(elementVal)<args.Minimum)){testPass=false;}}if(args.Maximum!=""){if((elementVal!="")&&(parseFloat(elementVal)>args.Maximum)){testPass=false;}}}}}else{testPass=false;}return testPass;}function CheckElqForm(elqForm){var args=null;var allValid=true;if(elqForm==null){alert("Unable to execute form validation!Unable to locate correct form");return false;}ResetHighlight();formField=new FieldObj();formField.Field=elqForm.elements["FirstName"];formField.ErrorMessage="Please enter your first name.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["LastName"];formField.ErrorMessage="Please enter your last name.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["EmailAddress"];formField.ErrorMessage="Please enter your email address.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Region"];formField.ErrorMessage="Please enter your state / province.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Title"];formField.ErrorMessage="Please enter your title.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Company"];formField.ErrorMessage="Please enter your company.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["WorkPhone"];formField.ErrorMessage="Please enter your telephone.";args={"Type":"text"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Country"];formField.ErrorMessage="Please enter your country.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["SolutionInterest"];formField.ErrorMessage="Please enter your solution of interest.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Function"];formField.ErrorMessage="Please enter your function.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Types_of_services_looking_for__c"];formField.ErrorMessage="Please enter the type of services you're looking for.";args={"Type":"multisel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["How_Many_offices_do_you_have__c"];formField.ErrorMessage="Please tell us how many offices you have.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["SteelheadLocations"];formField.ErrorMessage="Please enter your number of deployed locations.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["UpgradeDeployment"];formField.ErrorMessage="Please tell us if you have more than two upgrade locations.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["RVUGRegion"];formField.ErrorMessage="Please enter your region of interest.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}formField=new FieldObj();formField.Field=elqForm.elements["Shirt"];formField.ErrorMessage="Please enter your t-shirt size.";args={"Type":"singlesel"};if(formField.Field!=null){if(!ValidateRequiredField(formField.Field,args)){errorSet.push(formField);allValid=false;}}if(!allValid){DisplayErrorSet(errorSet);return false;}return true;}function submitForm(elqForm){setCampaignID(elqForm);if(CheckElqForm(elqForm)){prepareSelectsForEloqua(elqForm);fnPrepareCheckboxMatricesForEloqua(elqForm);return true;}else{return false;}}function prepareSelectsForEloqua(elqForm){var selects=elqForm.getElementsByTagName("SELECT");for(var i=0;i<selects.length;i++){if(selects[i].multiple){createEloquaSelectField(elqForm,selects[i]);}}return true;}function createEloquaSelectField(elqForm,sel){var inputName=sel.name;var newInput=document.createElement("INPUT");newInput.style.display="none";newInput.name=inputName;newInput.value="";for(var i=0;i<sel.options.length;i++){if(sel.options[i].selected){newInput.value+=sel.options[i].value+"::";}}if(newInput.value.length>0){newInput.value=newInput.value.substr(0,newInput.value.length-2);}sel.disabled=true;newInput.id=inputName;elqForm.insertBefore(newInput,elqForm.firstChild);}function fnPrepareCheckboxMatricesForEloqua(elqForm){var matrices=elqForm.getElementsByTagName("TABLE");for(var i=0;i<matrices.length;i++){var tableClassName=matrices[i].className;if(tableClassName.match(/elqMatrix/)){if(fnDetermineMatrixType(matrices[i]).toLowerCase()=="checkbox"){if(matrices[i].rows[0].cells[0].childNodes.length==1){if(matrices[i].rows[0].cells[0].childNodes[0].nodeName!="#text"){fnCreateHorizontalMatrixCheckboxField(elqForm,matrices[i]);}else{fnCreateVerticalMatrixCheckboxField(elqForm,matrices[i]);}}}}}return true;}function fnCreateVerticalMatrixCheckboxField(elqForm,matrix){var inputName=matrix.id+"r"+1;var newInput=document.createElement("INPUT");newInput.style.display="none";newInput.name=inputName;newInput.value="";var inputs=document.getElementsByName(inputName);for(var i=0;i<inputs.length;i++){if(inputs[i].nodeName.toLowerCase()=="input"){if(inputs[i].checked==true){if(inputs[i].type.toLowerCase()=="checkbox"){newInput.value+=inputs[i].value+"::";inputs[i].disabled=true;}}}}if(newInput.value.length>0){newInput.value=newInput.value.substr(0,newInput.value.length-2);}newInput.id=inputName;elqForm.insertBefore(newInput,elqForm.firstChild);matrix.disabled=true;}function fnCreateHorizontalMatrixCheckboxField(elqForm,matrix){for(var i=1;i<matrix.rows.length;i++){var inputs=document.getElementsByName(matrix.id+"r"+i);var oMatrixRow=matrix.rows[i];var inputName=oMatrixRow.id;var newInput=document.createElement("INPUT");newInput.style.display="none";newInput.name=inputName;newInput.value="";for(var j=0;j<inputs.length;j++){if(inputs[j].nodeName.toLowerCase()=="input"){if(inputs[j].checked==true){if(inputs[i].type.toLowerCase()=="checkbox"){newInput.value+=inputs[j].value+"::";inputs[j].disabled=true;}}}}if(newInput.value.length>0){newInput.value=newInput.value.substr(0,newInput.value.length-2);}newInput.id=inputName;elqForm.insertBefore(newInput,elqForm.firstChild);}matrix.disabled=true;}function fnDetermineMatrixType(oTable){var oFirstMatrixInput=oTable.rows[1].cells[1].childNodes[0];return oFirstMatrixInput.type;}

