//GETS RID OF 'CLICK TO ACTIVATE & USE THIS CONTROL' WARNING ON FLASH
theObjects = document.getElementsByTagName("object");
for (var i = 0; i < theObjects.length; i++) {
theObjects[i].outerHTML = theObjects[i].outerHTML;
}
//

//FOR ADDTHIS BUTTON
var addthis_brand = "ACCTivate!";

//CHANGES TEXT COLOR ON BUTTONS
function change(id, color) {
	var obj = document.getElementById(id);
		obj.style.color = color;
}

//


//INITIATE TABS
function gettabs(id) {
	var tabs = new ddtabcontent(id)
		tabs.setpersist(true)
		tabs.setselectedClassTarget("linkparent") //"link" or "linkparent"
		tabs.init()
}
//


//FORM VALIDATION

function validate (id) {
	var frmvalidator = new Validator(id);
		frmvalidator.addValidation("name","req","Please enter your first and last name");
		frmvalidator.addValidation("name","maxlen=50", "The max length for name is 50 characters");
		frmvalidator.addValidation("name","minlen=4","Please enter your full name");
		frmvalidator.addValidation("name","alpha_s");
		 
		frmvalidator.addValidation("company","req","Please enter the name of your company");
		frmvalidator.addValidation("company","maxlen=50","The max length for a company name is 50 characters");
		frmvalidator.addValidation("company","minlen=3","Please enter your full company name");
		 
		frmvalidator.addValidation("email","maxlen=99");
		frmvalidator.addValidation("email","req","Please enter a valid email address");
		frmvalidator.addValidation("email","email");
		 
		frmvalidator.addValidation("phone","req","Please enter your phone number");
		frmvalidator.addValidation("phone","maxlen=50","Your phone number is too long, please enter phone number. Example: 817-870-1311");
		frmvalidator.addValidation("phone","minlen=9","Please enter a valid phone number");
		
		frmvalidator.addValidation("country","dontselect=0","Please choose a country");
		
        frmvalidator.addValidation("zip","req","Please enter your zip code");
		
		
		//frmvalidator.addValidation("box","req","Please enter your state/province");
		//frmvalidator.addValidation("state","dontselect=0","Please choose a state");
		//frmvalidator.addValidation("province","dontselect=0","Please choose a state/province");
		
}


function validateReferral (id) {
	var frmvalidator = new Validator(id);
		frmvalidator.addValidation("customerName","req","Please enter your first and last name");
		frmvalidator.addValidation("customerName","maxlen=50", "The max length for name is 50 characters");
		frmvalidator.addValidation("customerName","minlen=4","Please enter your full name");
		frmvalidator.addValidation("customerName","alpha_s");
		
		frmvalidator.addValidation("customerEmail","maxlen=99");
		frmvalidator.addValidation("customerEmail","req","Please enter a valid email address");
		frmvalidator.addValidation("customerEmail","email");
		
		frmvalidator.addValidation("mention","selone_radio","Please let us know whether or not we can mention your name when contacting the referral.");
		
		frmvalidator.addValidation("referredName","req","Please enter your referral's first and last name");
		frmvalidator.addValidation("referredName","maxlen=50", "The max length for name is 50 characters");
		frmvalidator.addValidation("referredName","minlen=4","Please enter your referral's full name");
		frmvalidator.addValidation("referredName","alpha_s");
		
		frmvalidator.addValidation("referredCompany","req","Please enter the name of your referral's company");
		frmvalidator.addValidation("referredCompany","maxlen=50","The max length for a company name is 50 characters");
		frmvalidator.addValidation("referredCompany","minlen=3","Please enter your referral's full company name");
		
		frmvalidator.addValidation("referredEmail","maxlen=99");
		frmvalidator.addValidation("referredEmail","req","Please enter a valid email address for your referral.");
		frmvalidator.addValidation("referredEmail","email");
		 
		frmvalidator.addValidation("referredPhone","req","Please enter your phone number");
		frmvalidator.addValidation("referredPhone","maxlen=50","The phone number is too long, please enter phone number. Example: 817-870-1311");
		frmvalidator.addValidation("referredPhone","minlen=9","Please enter a valid phone number");
		  
		frmvalidator.addValidation("referredCountry","dontselect=0","Please choose your referral's country");
		  
		frmvalidator.addValidation("referredZip","req","Please enter your referral's zip code");
		
}

function validateRequest(id) {
	var frmvalidator = new Validator(id);
		frmvalidator.addValidation("name","req","Please enter your first and last name");
		frmvalidator.addValidation("name","maxlen=50", "The max length for name is 50 characters");
		frmvalidator.addValidation("name","minlen=4","Please enter your full name");
		frmvalidator.addValidation("name","alpha_s");
		 
		frmvalidator.addValidation("email","maxlen=99");
		frmvalidator.addValidation("email","req","Please enter a valid email address");
		frmvalidator.addValidation("email","email");
		 
		frmvalidator.addValidation("phone","req","Please enter your phone number");
		frmvalidator.addValidation("phone","maxlen=50","Your phone number is too long, please enter phone number. Example: 817-870-1311");
		frmvalidator.addValidation("phone","minlen=9","Please enter a valid phone number");
		 
		frmvalidator.addValidation("supportType","dontselect=0"); 
		  
		frmvalidator.addValidation("supportText","req","Please enter a full description of your request");
		frmvalidator.addValidation("supportText","minlen=15","Please enter a more complete description");
}

function validateSolutionProvider (id) {
	var frmvalidator = new Validator(id);
  		//frmvalidator.EnableMsgsTogether();

		//COMPANY INFORMATION SECTION 			 
		frmvalidator.addValidation("company","req","Please enter the name of your company");
		frmvalidator.addValidation("company","maxlen=50","The max length for a company name is 50 characters");
		frmvalidator.addValidation("company","minlen=3","Please enter your full company name");
		
		frmvalidator.addValidation("address1","req","Please fill in the company address");
		frmvalidator.addValidation("address1","maxlen=41","The max length for a company name is 41 characters");
		frmvalidator.addValidation("address1","minlen=3","Please enter your full company address");
		
		frmvalidator.addValidation("city","req","Please enter a city");
		frmvalidator.addValidation("city","maxlen=41","The max length for a city is 41 characters");
		  
		frmvalidator.addValidation("state","dontselect=0","Please choose a state");
		  
		frmvalidator.addValidation("zip","req","Please enter your zip code");
		
		frmvalidator.addValidation("phone","req","Please enter your phone number");
		frmvalidator.addValidation("phone","maxlen=30","Your phone number is too long, please enter phone number. Example: 817-870-1311");
		frmvalidator.addValidation("phone","minlen=9","Please enter a valid phone number");
		 
		//frmvalidator.addValidation("website","maxlen=99");
		//frmvalidator.addValidation("website","req","Please enter a website address");
		
		//CONTACT INFORMATION SECTION		
		frmvalidator.addValidation("primaryName","req","Please enter a primary contact name");
		frmvalidator.addValidation("primaryName","maxlen=50", "The max length for the contact name is 50 characters");
		frmvalidator.addValidation("primaryName","minlen=4","Please enter the full contact name");
		frmvalidator.addValidation("primaryName","alpha_s"); 
		
		frmvalidator.addValidation("primaryPhone","req","Please enter a primary phone number");
		frmvalidator.addValidation("primaryPhone","maxlen=30","The primary phone number is too long, please enter phone number. Example: 817-870-1311");
		frmvalidator.addValidation("primaryPhone","minlen=9","Please enter a valid primary phone number");
		 
		frmvalidator.addValidation("primaryEmail","maxlen=99");
		frmvalidator.addValidation("primaryEmail","req","Please enter a valid primary email address");
		frmvalidator.addValidation("primaryEmail","email");
		
		
		//BUSINESS DETAILS SECTION
		frmvalidator.addValidation("businessYrs","req","Please enter a number of years in business");
		frmvalidator.addValidation("businessYrs","maxlen=2");
		frmvalidator.addValidation("businessYrs","numeric"); 
		
		frmvalidator.addValidation("partnersAssociates","req","Please enter a number of partners or associates");
		frmvalidator.addValidation("partnersAssociates","numeric"); 
		
		frmvalidator.addValidation("markets","req","Please enter the geographical markets covered");
		frmvalidator.addValidation("markets","maxlen=50");
		
		frmvalidator.addValidation("accounts","req","Please enter a number of accounts with QuickBooks");
		frmvalidator.addValidation("accounts","numeric");
		
		frmvalidator.addValidation("otherSoftware","req","Please enter other accounting software used by clients");
		frmvalidator.addValidation("otherSoftware","maxlen=99");
		
		frmvalidator.addValidation("offerings","req","Please enter current product and service offerings");
		frmvalidator.addValidation("offerings","maxlen=99");
		  
		frmvalidator.addValidation("marketingType","selone_radio","Please select your current marketing type");
		
		frmvalidator.addValidation("otherVARPrograms","req","Please enter other VAR programs you are involved in. If you are not involved in any other programs, please enter 'none.'");
		
		frmvalidator.addValidation("businessHistory","req","Please describe the history of your business");
		
		frmvalidator.addValidation("customerProfile","req","Please describe your typical customer profile");
		  
		frmvalidator.addValidation("prospects","selone_radio","Please specify if you have ACCTivate! prospects");
		  
		frmvalidator.addValidation("crystalReports","selone_radio","Please specify if you have Crystal ReportsŪ design capability");
		
		
		//TECHNICAL &amp; ACCOUNTING CERTIFICATIONS SECTION	
		frmvalidator.addValidation("employeeName","req","Please enter an employee name for certifications");
		frmvalidator.addValidation("employeeName","maxlen=50", "The max length for an employee name is 50 characters");
		frmvalidator.addValidation("employeeName","minlen=4","Please enter a full employee name");
		frmvalidator.addValidation("employeeName","alpha_s"); 
		
		frmvalidator.addValidation("employeePosition","req","Please enter an employee position for certifications");
		frmvalidator.addValidation("employeePosition","maxlen=50", "The max length for an employee position is 50 characters");
		
		frmvalidator.addValidation("certifications","req","Please enter certifications");
		frmvalidator.addValidation("certifications","maxlen=99");
		  
}
//-->


/*
	Form Manager: A simple method of constructing complex dynamic forms.
	Written by Twey, http://www.twey.co.uk/.
	Use, copying, and modification allowed, so long as credit
	remains intact, under the terms of the GNU General Public License,
	version 2 or later. See http://www.gnu.org/copyleft/gpl.html for details.
*/


var FORM_MANAGER_CONDITION_SEPARATOR = " AND ";
var FORM_MANAGER_POSSIBILITY_SEPARATOR = " OR ";
var FORM_MANAGER_NAME_VALUE_SEPARATOR = " BEING ";
var FORM_MANAGER_DEPENDS = "DEPENDS ON ";
var FORM_MANAGER_CONFLICTS = "CONFLICTS WITH ";
var FORM_MANAGER_EMPTY = "EMPTY";

function addEvent(el, ev, f) {
  if(el.addEventListener)
    el.addEventListener(ev, f, false);
  else if(el.attachEvent) {
    var t = function() {
      f.apply(el);
    };
    addEvent.events.push({'element': el, 'event': ev, 'handler': f});
    el.attachEvent("on" + ev, t);
  } else
    el['on' + ev] = f;
}

function addEvents(els, evs, f) {
  for(var i = 0; i < els.length; ++i)
    for(var j = 0; j < evs.length; ++j)
      addEvent(els[i], evs[j], f);
}

addEvent.events = [];

if(typeof window.event !== "undefined")
  addEvent(window, "unload", function() {
      for(var i = 0, e = addEvent.events; i < e.length; ++i)
        e[i].element.detachEvent("on" + e[i].event, e[i].handler);
    }
  );

function getRadioValue(el) {
  if(!el.length) return null;
  for(var i = 0; i < el.length; ++i)
    if(el[i].checked) return el[i].value;
  return null;
}

function getSelectValue(el) {
  if(!el.tagName  || el.tagName.toLowerCase() !== "select")
    return null;
  return el.options[el.selectedIndex].value;
}

function isElementValue(el, v) {
  if(v === FORM_MANAGER_EMPTY) v = '';
  return (
    getRadioValue(el) == v ||
    getSelectValue(el) == v ||
    (
      el.tagName &&
      el.tagName.toLowerCase() !== "select" &&
      el.value == v
    )
  );
}

function setupDependencies() {
  var showEl = function() {
    this.style.display = "";
    if(this.parentNode.tagName.toLowerCase() == "label")
      this.parentNode.style.display = "";
  };
  var hideEl = function() {
    this.style.display = "none";
    if(typeof this.checked !== "undefined") this.checked = false;
    else this.value = "";
    if(this.parentNode.tagName.toLowerCase() == "label")
      this.parentNode.style.display = "none";
    this.hidden = true;
  };
  var calcDeps = function() {
    for(var i = 0, e = this.elements; i < e.length; ++i) {
      e[i].hidden = false;
      for(var j = 0, f = e[i].className.split(FORM_MANAGER_CONDITION_SEPARATOR); j < f.length; ++j)
        if(f[j].indexOf(FORM_MANAGER_DEPENDS) === 0) {
          for(var k = 0, g = f[j].substr(FORM_MANAGER_DEPENDS.length).split(FORM_MANAGER_POSSIBILITY_SEPARATOR); k < g.length; ++k)
            if(g[k].indexOf(FORM_MANAGER_NAME_VALUE_SEPARATOR) === -1) {
	      if(e[g[k]] && e[g[k]].checked) break;
            else if(k + 1 == g.length)
                e[i].hide();
            } else {
              var n = g[k].split(FORM_MANAGER_NAME_VALUE_SEPARATOR),
                v = n[1];
              n = n[0];
	      if(e[n])
	        if(isElementValue(e[n], v)) break;
	        else if(k + 1 == g.length) e[i].hide();
	    }
        } else if(f[j].indexOf(FORM_MANAGER_CONFLICTS) === 0) {
          if(f[j].indexOf(FORM_MANAGER_NAME_VALUE_SEPARATOR) === -1) {
	    if(e[f[j].substr(FORM_MANAGER_CONFLICTS.length)] && e[f[j].substr(FORM_MANAGER_CONFLICTS.length)].checked) {
              e[i].hide();
              break;
            }
          } else {
            var n = f[j].substr(FORM_MANAGER_CONFLICTS.length).split(FORM_MANAGER_NAME_VALUE_SEPARATOR),
              v = n[1];
            n = n[0];
            if(e[n]) {
              if(isElementValue(e[n], v)) {
                e[i].hide();
                break;
              }
            }
          }
        }
      if(!e[i].hidden) e[i].show();
    }
  };
  var changeHandler = function() {
    this.form.calculateDependencies();
    return true;
  };
  for(var i = 0; i < arguments.length; ++i) {
    for(var j = 0, e = window.document.forms[arguments[i]].elements; j < e.length; ++j) {
      addEvents([e[j]], ["change", "keyup", "focus", "click", "keydown"], changeHandler);
      e[j].hide = hideEl;
      e[j].show = showEl;
    }

    (e = window.document.forms[arguments[i]]).calculateDependencies = calcDeps;
    e.calculateDependencies();
  }
}



/* DISABLE SUBMIT BUTTONS

var submitcount=0;

function disableSubmit()
{
	if (typeof(Page_ClientValidate)=='Validator')
	{
		if (Page_ClientValidate() == true)
		{
			return checkSubmit();
		}
		else
		{
			return true;
		}
	}
	else
	{
		return checkSubmit();
	}
}
	
function checkSubmit()
	{
	if (submitcount == 0)
	{
		submitcount++; return true;
	}
	else
	{
		  document.contact.submit.value="Sending...";return false;
	}
}
*/