DBCheckError = 'Record Already exists in Airoma Database!'; DBCheckErrorIgnore = 'Record Already exists in Airoma Database! ignore'; function DBCheck(SQLFetch,Model,DisplayError,IgnoreLink, SQLResp,PopupURL,ErrorFieldName){ var url = '/includes/fetch_existDBcheck_sql.php?SQL=' + encodeURIComponent(SQLFetch); // notice the use of a proxy to circumvent the Same Origin Policy. if(SQLResp==undefined) SQLResp=''; if(DisplayError==undefined) DisplayError=true; if(IgnoreLink==undefined) IgnoreLink=false; if(Model==undefined) Model=true; if(ErrorFieldName==undefined) ErrorFieldName='SubmitMessage'; if(PopupURL==undefined) PopupURL=''; new Ajax.Request(url, { method: 'get', onSuccess: function(transport) { var SQLResp; if (transport.responseText.match('true')){ if(DisplayError==true){ if(!$(ErrorFieldName).hasClassName('ExistAlert')){ // If the required fields are missing values display error message $(ErrorFieldName).addClassName('ExistAlert'); if(!$(ErrorFieldName).hasClassName('alert')){ $(ErrorFieldName).addClassName('alert'); } if(IgnoreLink==true){$(ErrorFieldName).update(DBCheckErrorIgnore);} else{$(ErrorFieldName).update(DBCheckError);} new Effect.Appear(ErrorFieldName, {beforeStart: function() { if(Model==true){ Modalbox.resizeToInclude(ErrorFieldName);} }, afterFinish: function() { if(Model==true){Modalbox.resizeToContent();}} }); if(PopupURL!=''){ Modalbox.show(PopupURL, {title:'Record Exists', width: 600, overlayClose:false, autoFocusing:false, CenterWindow: false, HideEffect: Effect.SlideUp, ShowEffect: Effect.SlideDown});} } } SQLResp = transport.responseText; }else{ if(DisplayError==true){ if(($(ErrorFieldName).visible())&&$(ErrorFieldName).hasClassName('ExistAlert')) { new Effect.Fade(ErrorFieldName, {afterFinish: function() { if(Model==true){Modalbox.resizeToContent();}}}); $(ErrorFieldName).removeClassName('alert'); $(ErrorFieldName).removeClassName('ExistAlert'); $(ErrorFieldName).update('') } } SQLResp = transport.responseText; } } }); return SQLResp; } function IgnoreAlert(){ new Effect.Fade("SubmitMessage", {afterFinish:function() { Modalbox.resizeToContent();}}); $("SubmitMessage").removeClassName("alert"); $('SubmitMessage').removeClassName('ExistAlert'); $('SubmitMessage').update(''); } function ValidateForm(FRM,SubmitURL,ReWidth,RefindFocus,Model,SQLFetch,ReHeight){ if(!$('SubmitMessage').hasClassName('ExistAlert')){ // alert('Form Works'); ok = true; //set Required to default as OK SForm = FRM; SFormVars= SForm.getElements(); //define form variables URLVars = ''; RequiredFocus=''; CheckDB = false; if(ReWidth==undefined) ReWidth=350; if(RefindFocus==undefined) RefindFocus=false; SFormVars.each(function(item) { if($(item).type == 'checkbox'){ //check if variable is a checkbox if ($(item).checked){ if($(item).value=='') URLVars += $(item).name + '=y&'; // if so and is checked add to SFormVars else URLVars += $(item).name + '='+ $(item).value +'&' } }else if($(item).type == 'radio'){ //check if variable is a radio button if ($(item).checked) URLVars += $(item).name + '='+ $(item).value +'&';// if so and is selected add to SFormVars }else { NLVal = $(item).value; // all other variables add to SFormVars directly NLVal = NLVal.replace(/\n/g, "%0A") //replace newline with url encoded version so it can be passed to PHP correctly .replace(/\n\n+/g, "%0A%0A") .replace(/\&/g, "\%26"); //Replace the & with the url encoded version so that is does not confuse the php script with Variabales URLVars += $(item).name + '=' +NLVal+'&'; } // alert($(item).name + ' ' + $(item).value + ' ' + $(item).classNames()); if($(item).hasClassName('required')){ if($(item).value=='') { //if so and it is empty change field colour to DB the Error Field Colour ok = false; if(!$(item).hasClassName('ErrorFieldColor')) $(item).addClassName('ErrorFieldColor') if(RequiredFocus=='') RequiredFocus = $(item).name; } else{ if($(item).type == 'select-one'){ if ($(item).value=='NULL'){ //and is set to NULL display error ok = false; if(!$(item).hasClassName('ErrorFieldColor')) $(item).addClassName('ErrorFieldColor') if(RequiredFocus=='') RequiredFocus = $(item).name; }else{ // else set field to white if it isn't already if($(item).hasClassName('ErrorFieldColor')) $(item).removeClassName('ErrorFieldColor') } }else if($(item).type == 'checkbox'){ CheckBoxParent = $(item).ancestors(); if (!$(item).checked){ //and is set to NULL display error ok = false; if(!CheckBoxParent[0].hasClassName('ErrorFieldColor')) CheckBoxParent[0].addClassName('ErrorFieldColor') if(RequiredFocus=='') RequiredFocus = $(item).name; } else{ // else set field to white if it isn't already if(CheckBoxParent[0].hasClassName('ErrorFieldColor')) CheckBoxParent[0].removeClassName('ErrorFieldColor') } }else{ // else set field to white if it isn't already if($(item).hasClassName('ErrorFieldColor')) $(item).removeClassName('ErrorFieldColor') } // alert($(item).type) } } }); if(ok==true) { // If the required fields are missing values display error message if($('SubmitMessage').visible()) { new Effect.Fade('SubmitMessage'); if(Model ==true){ Modalbox.resizeToContent(); } $('SubmitMessage').update('') $('SubmitMessage').removeClassName('alert'); } } if(ok==false) { if(!$('SubmitMessage').hasClassName('alert')){ // If the required fields are missing values display error message $('SubmitMessage').addClassName('alert'); $('SubmitMessage').update('Some fields that are required are still empty!'); if(Model==true){ new Effect.Appear('SubmitMessage', {duration: .5, beforeStart: function() { Modalbox.resizeToInclude('SubmitMessage'); } }); }else new Effect.Appear('SubmitMessage'); } // alert(RequiredFocus); if(RequiredFocus!=''){ $(RequiredFocus).focus(); }//{ $(RequiredFocus).focus(); } }else{ // alert(URLVars) if(Model ==true){ if(ReHeight!=undefined){ Modalbox.options.height=ReHeight } Modalbox.show(SubmitURL+'?'+URLVars, {title:'Details Have Been Submitted', width: ReWidth, overlayClose:false, CenterWindow: true, HideEffect: Effect.Shrink, ShowEffect: Effect.Grow}); }else parent.location = SubmitURL+'?'+URLVars } } return false; }