/*
Set to false if you don't want the error messages
*/
var err = true;
/*
Set to true if you want modal javascript dialogues instead of DOM messages
*/
var modal = false;
/*
The type of container to create for the error message
*/
var errContainer = 'div';
var errorbgcolor = '#FF9999';
var validbgcolor = '#ffffff';
var theForm = getFormId();
/*
Browser detect, need's a little work
*/
var ie;
if (navigator.appVersion.indexOf("MSIE")!=-1) {
ie = true;
} else {
ie = false;
}
function getFormId() {
var totalforms = 0;
var frms = document.getElementsByTagName('form');
for (var i=0; i 1) {
alert('Too many forms to validate!');
} else {
return document.getElementById(formtovalidate);
}
}
function getElementId(type) {
var frm = getFormId();
var total = 0;
var el = frm.elements;
for (var i=0; i 0) {
for (var iCounter=0; iCounter");
return str1;
}
function showContactTimer () {
var fieldArea = getFormId();
var msg = 'Sending Email...
';
displayStatusmsg(fieldArea,msg,'none');
sentTimer = setTimeout("hideContactTimer()",6000);
}
function hideContactTimer () {
var status = grabPosXML("status");
var fieldArea = getFormId();
var inputs = fieldArea.getElementsByTagName('input');
var inputsLen = inputs.length;
var tAreas = fieldArea.getElementsByTagName('textarea');
var tAreasLen = tAreas.length;
var msg = '';
if ( status == 'NOTOK' ) {
msg = grabPosXML("confirmation");
displayStatusmsg(fieldArea,msg,'errorMessage');
} else if ( status == 'OK' ) {
msg = 'Thanks for your message, we\\\\\\\'ll get back to you as soon as possible!'
displayStatusmsg(fieldArea,msg,'OK');
resetForm();
} else {
displayStatusmsg(fieldArea,'Timeout error, please try again','errorMessage');
}
}
function hidemessage() {
msg = 'Thank you! Your message has been sent.'
displayStatusmsg(getFormId(),msg,'OK');
}
function showmessage() {
var fieldArea = getFormId();
var name = unCleanString(grabPosXML("name"));
var email = unCleanString(grabPosXML("email"));
var subject = unCleanString(grabPosXML("regarding"));
var message = unCleanString(grabPosXML("message"));
var msg = 'From: '+name+' ('+email+')
Subject: '+subject+'
Message:
'+message+'
Hide';
displayStatusmsg(fieldArea,msg,'none');
}
function ajaxFunction(){
var ajaxRequest; // The variable that makes Ajax possible!
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
return ajaxRequest;
}
var pos; // variable for posting information
function loadXMLPosDoc(url,posData) {
// branch for native XMLHttpRequest object
pos = ajaxFunction();
if (pos) {
pos.onreadystatechange = processPosChange;
pos.open("POST", url, true);
pos.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
pos.send(posData);
}
}
function grabPosXML(tagName) {
if (pos.responseXML.documentElement.getElementsByTagName(tagName)[0].childNodes[0]) {
var resp = pos.responseXML.documentElement.getElementsByTagName(tagName)[0].childNodes[0].nodeValue;
return resp;
} else {
displayStatusmsg(getFormId(),'Error submitting form, please try again.','errorMessage');
return false;
}
}
function processPosChange() {
// page loaded "complete"
if (pos.readyState == 4) {
// page is "OK"
if (pos.status == 200) {
if ( grabPosXML("status") == 'NOTOK' ) {
displayStatusmsg(getFormId(),'There were problems Sending Email. Please check back in a couple minutes','errorMessage');
}
}
}
}
function addEvent(elm, evType, fn, useCapture) {
if (ie) {
/* var r = elm.attachEvent('on' + evType, fn);
EventCache.add(elm, evType, fn);
return r; */
elm.attachEvent('on' + evType, fn, false);
}
else {
elm.addEventListener(evType, fn, useCapture);
}
}
function getEventSrc(e) {
if (!e) e = window.event;
if (e.originalTarget)
return e.originalTarget;
else if (e.srcElement)
return e.srcElement;
}
var EventCache = function(){
var listEvents = [];
return {
listEvents : listEvents,
add : function(node, sEventName, fHandler, bCapture){
listEvents.push(arguments);
},
flush : function(){
var i, item;
for(i = listEvents.length - 1; i >= 0; i = i - 1){
item = listEvents[i];
if(item[0].removeEventListener){
item[0].removeEventListener(item[1], item[2], item[3]);
};
/* From this point on we need the event names to be prefixed with 'on" */
if(item[1].substring(0, 2) != "on"){
item[1] = "on" + item[1];
};
if(item[0].detachEvent){
item[0].detachEvent(item[1], item[2]);
};
item[0][item[1]] = null;
};
}
};
}();
/*
Add onLoad events to start the whole thing
*/
function ajaxContact() {
var frmEl = getFormId();
addEvent(frmEl, 'submit', validateFields, false);
addEvent(frmEl, 'reset', resetForm, false);
frmEl.onsubmit = function() { return false; }
}
if (ie) {
window.attachEvent("onload", addBlursandHighlights, false);
window.attachEvent("onload", attachConditions, false);
} else {
window.addEventListener("load", addBlursandHighlights, false);
window.addEventListener("load", attachConditions, false);
}
/*addEvent(window, 'load',ajaxContact, false);
addEvent(window,'unload',EventCache.flush, false);*/