
/* emg.js.php */
/* 6:20 PM 4/16/2010
/*
Copyright © 2008 Eckx Media Group, LLC. All rights reserved.
Eckx Media Group respects the intellectual property of others, and we ask our users to do the same.
*/
/*<script>*/
var theDate = '01/34/2010'
var dateParts = theDate.split('/');
var day = dateParts[1];
var month = dateParts[0];
var year = dateParts[2];
var dteDate = new Date(year, month, day);
if(day == dteDate.getDate() && month == dteDate.getMonth() && year == dteDate.getFullYear()){
	alert('1');
}

function emgInit(){
	externalLinks();
	autoCompleteOff();
	defaultClear();
			BrowserDetect.init();				initValForm();				slideshow.init(false, true);			ie6Check();
	
	//flash
	if($('flash-div')){
		showFlash(window.CR+'/flash/header.swf?CR='+window.CR+'&xmlPath='+window.CR+'/xml/slideshow.php?CR='+window.CR, 785, 152, 'logo');	
	}
	if($('emg-link')){
		$('emg-link').style.display = 'none';
	}

}

Event.observe(window, 'load', emgInit);

// Show / Hide object
function toggle(obj) {
	var el = $(obj);
	el.style.display = (el.style.display != 'block' ? 'block' : 'none' );
	el.blur();
}
function toggle2(obj) {
	var el = $(obj);
	el.style.display = (el.style.display != 'block' ? 'block' : 'none' );
	el.blur();
}

function toggleClass(id, className) {
	var el = $(id);
	if (el.hasClassName(className)) {
		el.removeClassName(className);
	}
	else {
		el.addClassName(className);
	}
}

// Reset form fields
function clearForm(id, skipids) {
	if(!skipids){
		skipids = new Array();
	}
	var form = document.getElementById(id);
	for (var i = 0; i < form.length; i++) {
		if(skipids.indexOf(form[i].id) != -1 || form[i].type == 'submit' || form[i].type == 'button' ){
			continue;
		}
		if(form[i].type == 'checkbox' || form[i].type == 'radio') {
			form[i].checked = false;	
		}
		else {
			form[i].value = '';
		}
	}
}

// Reset form fieldset fields
function clearFieldset(id) {
	var fieldset = $$('#' + id + ' input[type="text"], ' + '#' + id + ' input[type="password"], ' + '#' + id + ' input[type="file"], ' + '#' + id + ' select, ' + '#' + id + ' textarea');
	
	for (var i = 0; i < fieldset.length; i++) {
		clearField(fieldset[i]);
	}
}
// Clear individual field
function clearField (field) {
	if(field.type == 'checkbox' || field.type == 'radio') {
		field.checked = false;	
	}
	else {
		field.value = '';
	}
}

function popUpA(URL) { //allow all features
day = new Date();
id = "aboutUS";
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=900,height=400,left = 240,top = 212');");
}

function popUpB(URL) { // disable all features
day = new Date();
id = "aboutUS";
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=300,height=300,left = 240,top = 212');");
}

function isset(obj){
	if(typeof obj == 'undefined'){
		return false;
	}
	else{
		return true;	
	}
}


function getMousePos(e) {
	var IE = document.all?true:false
	var scrollXY = getScrollXY();
	var mousePos = new Array();
	if (IE) { // grab the x-y pos.s if browser is IE
		tempX = e.x;
		tempY = e.y;
	} 
	else {  // grab the x-y pos.s if browser is NS
		tempX = e.clientX;
		tempY = e.clientY;
	}
	// catch possible negative values in NS4
	if (tempX < 0){tempX = 0}
	if (tempY < 0){tempY = 0}  
	mousePos['x'] = tempX + scrollXY[0];
	mousePos['y'] = tempY + scrollXY[1];
	return mousePos;
}


function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

function getPageDim(){
	if(document.all?true:false){ // IE
		if(document.body.clientHeight > document.body.scrollHeight){
			var height = document.body.clientHeight;
			var width = document.body.clientWidth;
		}
		else{
			var height = document.body.scrollHeight;
			var width = document.body.scrollWidth;
		}
	}
	else{
		var height = document.height;
		var width = document.weidth;
	}
	var viewPortHeight = document.viewport.getHeight();
	if(height < viewPortHeight){
		height = viewPortHeight;
	}
	return [ width, height ];
}

function getVisibleDim(){ alert('function getVisibleDim() decremented, use prototype viewport');
	if(!$('getTopLeft-fake-body')){ //generate fake div to get screen size
		var fakeDiv = document.createElement('div');
		fakeDiv.id = 'getTopLeft-fake-body';
		fakeDiv.style.visibility = 'hidden';
		fakeDiv.style.margin = '0';
		fakeDiv.style.padding = '0';
		fakeDiv.style.position = 'absolute';
		fakeDiv.style.top = '0';
		fakeDiv.style.bottom = '0';
		fakeDiv.style.left = '0';
		fakeDiv.style.right = '0';
		fakeDiv.style.width = '100%';
		fakeDiv.style.height = '100%';
		fakeDiv.style.zIndex = '-1';
		document.body.appendChild(fakeDiv);
	}
	
	var fakeDiv = $('getTopLeft-fake-body');
	var width = fakeDiv.getWidth();
	var height = fakeDiv.getHeight();
	return [ width, height ];
}


function alert2(text, dim, alertTime, className){ 
	//check if alert 2 already exist
	var i=0;
	while($('alert2_'+i)){
		i++;
	}
	var alert2 = document.createElement('div');
	alert2.id = 'alert2_'+i;
	alert2.style.visibility = 'hidden';
	document.body.appendChild(alert2);
	
	alert2 = $('alert2_'+i);
	if (className === undefined) {
		alert2.addClassName('alert2');
	}
	else {
		alert2.addClassName(className);	
	}
	
	alert2.innerHTML = text;
	if(dim){
		width = dim[0];
		height = dim[1];
		alert2.style.width = width+'px';
		alert2.style.height = height+'px';
	}
	else{
		width = alert2.getWidth();
		height = alert2.getHeight();
	}
	if(isNaN(width) || isNaN(height)){
		alert('Alert2() error, width or height isNaN');	
	}
	
	var xy = getScrollXY(); 
	var topLeft = getTopLeft(width, height);
	alert2.style.top = topLeft[0]+'%';
	alert2.style.left = topLeft[1]+'%';
	alert2.style.visibility = 'visible';
	if(!alertTime){
		alertTime = 2000;	
	}
	setTimeout("document.body.removeChild(document.getElementById('alert2_"+i+"'))", alertTime);
}


//return the top left percentage for an absolute centered layer, req 100% body height
function getTopLeft(width, height){
	//var visibleDim = getVisibleDim();
	//var windowWidth = visibleDim[0];
	//var windowHeight = visibleDim[1];
	document.viewport.getWidth()
	var windowWidth = document.viewport.getWidth();
	var windowHeight = document.viewport.getHeight();
	var ie = getIEVerNum();
	
	//compensate for scroll
	var xy = getScrollXY();
	
	//get %
	var top = (windowHeight/2 + xy[1] - (height/2)) / windowHeight;
	var left = (windowWidth/2 + xy[0] - (width/2)) / windowWidth;

	if(top < 0){
		top = 0;	
	}
	if(left <0){
		left = 0;	
	}
	
	//compensate for ie 6 usage of %, the entire document not just what u see is 100%
	if(ie == 6){ // ie 6
		var pxHeight = windowHeight * top; //get pixel height
		top = pxHeight/document.body.clientHeight; // get decimal height
	}
	
	top  = Math.round(top * 100); 
	left  = Math.round(left * 100);
			
	return [ top, left ];
}

function money(num){
	var formated = Math.round(num*100)/100;
	formated = formated.toString();
	if(formated.indexOf('.') == -1){
		formated += '.00';
	}
	else{
		var parts = formated.split('.');
		if(parts[1].length == 1){
			formated += '0';	
		}
	}
	return formated;
}

function urlencode(str) {
	str = escape(str);
	str = str.replace('+', '%2B');
	str = str.replace('%20', '+');
	str = str.replace('*', '%2A');
	str = str.replace('/', '%2F');
	str = str.replace('@', '%40');
	return str;
}

function urldecode(str) {
	str = str.replace('+', ' ');
	str = unescape(str);
	return str;
}

function htmlentities(html) {
	html = html.replace('<','&lt;');
	html = html.replace('>','&gt;');
	html = html.replace('"','&quot;');
	return html;
} 

function getJs(url){
	if(url.indexOf('?')==-1) {
		url += '?';	
	}
	var jsel = document.createElement('SCRIPT');
	jsel.type = 'text/javascript';
	jsel.src = url+'&klioe='+Math.random()*10000;
	document.body.appendChild(jsel);
}

//Get IE Version Number
function getIEVerNum() {
    var ua = navigator.userAgent;
    var MSIEOffset = ua.indexOf("MSIE ");
    
    if (MSIEOffset == -1) {
        return 0;
    } else {
        return parseFloat(ua.substring(MSIEOffset + 5, ua.indexOf(";", MSIEOffset)));
    }
}

function confirm2(e, title, yesEval, noEval){
	var delConfirm = document.createElement('div');
	delConfirm.id = 'confirm2';
	document.body.appendChild(delConfirm);
	modal.load();
	modal.content('<p><strong>'+title+'</strong></p><ul class="tools confirm"><li class="yes"><a href="#" id="confirm2-yes">Yes</a></li><li class="no"><a href="#" id="confirm2-no">No</a></li></ul>');
	//delConfirm = $('confirm2');
	//delConfirm.addClassName('confirm2');
	//delConfirm.innerHTML = '<div>'+title+'</div><input type="button" id="confirm2_yes" value="Yes"/><br/><input type="button" id="confirm2_no" value="No" />';
	
	//var mousePos = getMousePos(e);
	//delConfirm.style.left=mousePos['x']+'px';
	//delConfirm.style.top=mousePos['y']+'px';
	$('confirm2-yes').onclick= function(){ 
		//document.body.removeChild($('confirm2'));
		eval(yesEval);
		modal.close();
		return false;
	}
	$('confirm2-no').onclick= function(){ 
		//document.body.removeChild($('confirm2'));
		eval(noEval); 
		modal.close();
		return false;
	}
}

function checkAll(name, trueFalse){
	var checkBoxes = document.getElementsByName(name);
	var len = checkBoxes.length;
	for(var i=0; i<len; i++){
		checkBoxes[i].checked = trueFalse;
	}
}

function externalLinks(container) {
	if(container){
		var anchors = container.select('a[rel*="external"]');
	}
	else{
		var anchors = $$('a[rel*="external"]');
	}
	for (var i=0; i<anchors.length; i++) {
		anchors[i].target = "_blank";
	}
}

function autoCompleteOff(){
	var inputs = $$('input.autocomplete-off');
	for (var i=0; i<inputs.length; i++) {
		inputs[i].setAttribute("autocomplete", "off");
	}
}

function defaultClear(){
	var inputs = $$('input.default-clear');
	for (var i=0; i<inputs.length; i++) {
		inputs[i].onfocus = function(){
			if(this.value == this.defaultValue){
				this.value = ''; 
			}
		}
		inputs[i].onblur = function(){
			if(this.value == ''){
				this.value = this.defaultValue;
			}
		}
	}
}

function bookMark(url, title){
	if(document.all?true:false){ // IE
		window.external.AddFavorite(url, title);
	}
	else{
		window.sidebar.addPanel(title, url, '')
	}
}

function ajaxFill(url, containerid, callback){
	alert('depercated, please use EmgAjax.call()');
	return;
	var container = $(containerid);
	if(!container){
		alert('ajaxFill(): '+containerid+' id dosnt exist');
		return;
	}
	container.innerHTML = '<div style="text-align:center"><img src="'+window.CR+'/images/library/loading.gif" /></div>';
	new Ajax.Request(url, { method: 'get', onSuccess: function(ajaxReturn) {
		if(ajaxReturn.responseText == 'died'){
			window.location = window.CR+'/action/died';
			return;
		}
		container.innerHTML = ajaxReturn.responseText;
		curtain.initLinks(container); //curtain reference
		eval(callback);
	}}); 
}

function ie6Check() {
	if (BrowserDetect.browser == 'Explorer' && BrowserDetect.version < 7) {
		var ie6Notice = document.createElement('div');
		ie6Notice.id = 'ie6-notice';
		ie6Notice.innerHTML = '<p class="title">It seems like you are using Internet Explorer 6 or lower.</p><p>IE6 is an outdated web browser that cannot provide the rich web experience that a modern web browser is able to.  This site may not display and function correctly as a result.</p><p>You may want to upgrade to one of these newer web browsers:</p><ul class="browsers"><li><a href="http://www.microsoft.com/windows/downloads/ie/getitnow.mspx" title="Download Internet Explorer 8">Download Internet Explorer 8</a></li><li><a href="http://www.mozilla.com/en-US/firefox/" title="Download Mozilla Firefox">Download Mozilla Firefox</a></li><li><a href="http://www.google.com/chrome" title="Download Google Chrome">Download Google Chrome</a></li></ul><p class="hide-notice"><a href="#" onclick="document.getElementById(\'ie6-notice\').style.display = \'none\'; return false;" title="Hide this notice" rel="external">Hide this notice</a></p>';
		document.body.appendChild(ie6Notice);
	}
}
// verify the captcha
function verifyCaptcha(captchaFieldid){
	var url = window.CR + "/action/verify-captcha?area=" + captchaFieldid + "&captcha=" + $(captchaFieldid).value + "&k=" + Math.round(100000*Math.random());
	valForm.ajaxRunning[captchaFieldid] = true;
	new Ajax.Request(url, { method: 'get',  onSuccess: function(verifyCaptcha2) {
			if(verifyCaptcha2.responseText == '0'){
				var error = ' is incorrect.'; //error
			}
			else{
				 var error = false; // no errror
			}
			valForm.errorHandler($(captchaFieldid), error);
			valForm.ajaxRunning[captchaFieldid] = false;
		}
	});
}

function refreshImg(id){
	var img = $(id);
	if(img.src.include('?')){
		img.src = img.src + '&k='+Math.random();
	}
	else{
		img.src = img.src + '?k='+Math.random();
	}
}

function showFlash(src, w, h, container){
	var s1 = new SWFObject(src,"mediaplayer",w, h,"7");
	s1.addParam("wmode", "transparent");
	if(!s1.write(container)){
		$(container).innerHTML = '<a href="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash">Click here to get the flash player.</a>';
	}
}

function textAreaExp(id){
	var label = $$('label[for="'+id+'"]');
	var header = '';
	if(label){
		header = '<h3>'+label[0].innerHTML+'</h3>';
	}

	var html = '<div class="emg-form">'+header+'<textarea rows="25" cols="100" id="'+id+'-expanded" class="fluid">'+$(id).value+'</textarea><br /><button onclick="$(\''+id+'\').value = $(\''+id+'-expanded\').value; modal.close();">Finish</button></div>';
	modal.load();
	modal.content(html);
}

//use to show all the properties of an object;
function objProperties(obj, objName){
	var output = '';
	for (var prop in obj ) {
		output += objName + "." + prop + " = " + obj[prop] + "\n" ;
	}
	alert(output);
}


function checkedToStr(inputName){
	var checkboxes = document.getElementsByName(inputName);
	var values = new Array();
	for(var i=0; i<checkboxes.length; i++){
		if(checkboxes[i].checked){
			values[values.length] = checkboxes[i].value;
		}
	}
	return values.join('-');
}

function moneyFormat(value, nosymbol) {
	if (isNaN(value)) {
		var formatted = '0.00';
	}
	else {
		var formatted = Math.round(value*100)/100;
		formatted = formatted.toString();
		if (formatted.indexOf('.') == -1) {
			formatted += '.00';
		}
		else {
			var parts = formatted.split('.');
			if (parts[1].length == 1) {
				formatted += '0';
			}
		}
	}
	if(!nosymbol){
		formatted = '$' + formatted;
	}
	return formatted;
}

function emailExist(emailFieldid){
	var url = window.CR + "/action/check-exist?check-field=login&check-value=" + $(emailFieldid).value + "&k=" + Math.round(100000*Math.random());
	valForm.ajaxRunning[emailFieldid] = true;
	var resetPassUrl = new RegExp('\\' + window.CR + '\/reset-password(\/)?$');
	new Ajax.Request(url, { method: 'get',  onSuccess: function(emailExist2) {
			if(location.pathname.match(resetPassUrl)){  // for reset password form
				var error = emailExist2.responseText == '0' ? ' does not exist.' : false;
			}
			else{
				var error = emailExist2.responseText == '1' ? ' already in use.' : false;
			}
			valForm.errorHandler($(emailFieldid), error);
			valForm.ajaxRunning[emailFieldid] = false;
		}
	}); 
}

// Get hash value from url
function getHash(href) {
	return href.split(/#/)[1];
}

// Set/append return false
function setOnclickFalse(el, replaceOnclick) {
	if (replaceOnclick == true) {
		el.setAttribute('onclick', 'return false;');
	}
	else {
		var originalOnclick = el.onclick;
		el.onclick = (function(e) {
			if (originalOnclick) {
				originalOnclick();
			}
			return false;
		});
	}
}
/* browser-detect.js.php */
/*<script>*/
// Browser name:	BrowserDetect.browser
// Browser version:	BrowserDetect.version
// OS name:			BrowserDetect.OS
/* July 16 09 */ 
/*
Copyright Â© 2008 Eckx Media Group, LLC. All rights reserved.
Eckx Media Group respects the intellectual property of others, and we ask our users to do the same.
*/

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.userAgent,
			subString: "iPhone",
			identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
/* ecommerce.js.php */
/* 10:13 AM 5/27/2010 */ 
/*<script>*/
function updateCartCount(){
	var url = window.CR + '/ajax/cart-details';
	new Ajax.Request(url, { method: 'get',  onSuccess: function(updateCartCount2) { //https redirect is casuing problems
			var containers = $$('.cart-item-count');
			for(var i = 0; i < containers.length; i++){
				containers[i].innerHTML = updateCartCount2.responseText;
			}
		}
	}); 	
}


function changeCountry(country, pre){
	if(country == 'US'){
		$(pre + 'province-container').addClassName('hide');
		$(pre + 'state-container').removeClassName('hide');
		$(pre + 'state').addClassName('val_req');
		$(pre + 'province').removeClassName('val_req');
		$(pre + 'province').value = '';
		$(pre + 'zip').addClassName('val_req');
	}
	else{
		$(pre + 'province').addClassName('val_req');
		$(pre + 'province-container').removeClassName('hide');
		$(pre + 'state-container').addClassName('hide');
		$(pre + 'state').removeClassName('val_req');
		$(pre + 'state').value = '';
		$(pre + 'zip').removeClassName('val_req');
	}
}

function valCC(){
	if($('cctype').value == ''){// no cc type, let cc type req validation take over
		return false;
	}
	var ccNumField = $('ccnumber');
	if(ccNumField.value.length == 0){ // no cc, let req validation take over
		return false;
	}
	if(checkCreditCard(ccNumField.value, $('cctype').value)){ //valid cc
		return false;
	}
	else{ // invalid cc
		return " is invalid.";
	}
	
}

function setBillingInfoReq(req){
	var reqFields = new Array('b-fname', 'b-lname', 'b-address1', 'b-city', 'b-country', 'b-zip', 'cctype', 'ccnumber', 'cccode', 'ccexp0', 'ccexp1');
	if($('country').value == 'US'){
		reqFields[reqFields.length] = 'b-state';
	}
	else{
		reqFields[reqFields.length] = 'b-province';
	}

	for(var  i=0; i < reqFields.length; i++){
		if(req){
			$(reqFields[i]).addClassName('val_req');
		}
		else{
			$(reqFields[i]).removeClassName('val_req');
		}
	}
	//changeCountry($('country').value); would set state/zip back to required, plust dont even think this is needed
}

function changePaymentMethod(){
	if($('payment-method-credit_card').checked){
		$('ccfields').removeClassName('hide'); //hide cc fields
		setBillingInfoReq(true);
	}
	else{
		$('ccfields').addClassName('hide'); //hide cc fields
		setBillingInfoReq(false);
	}
}

//function used to update price when an option is selected in items details
function priceUpdate(){
	var addToCartForm = $('add-to-cart-form');
	var oldAction = addToCartForm.action;
	addToCartForm.action = window.CR + '/ajax/price-check'; //need to reset form aciton so it has ajax in it
	var callBackSuccess =  function(ajaxReturn) { //alert(ajaxReturn.responseText);
			if(ajaxReturn.responseText == 'died'){ //in case something died in ajax
				window.location = window.CR+'/action/died';
				return;
			}
			$('item-current-price').innerHTML = ajaxReturn.responseText;	
			addToCartForm.action = oldAction;
		};
	
	var callBackFailed = function(){
		addToCartForm.action = oldAction;
		alert2('Failed to update price, please try again.');
	};
	
	addToCartForm.request({onSuccess: callBackSuccess, onFailure: callBackFailed});
	
}


function processPayment(){
	setTimeout('window.location = \''+window.CR+'/action/process-payment\'', 5000);
	/*
	var url = window.CR+"/action/process-payment/?k="+ Math.round(100000*Math.random());	
	new Ajax.Request(url, { method: 'get',  onSuccess: function(processPayment2) {
			if(processPayment2.responseText == 'died'){
				window.location = window.CR+'/action/died'; return;
			}
			if(processPayment2.responseText == 'good'){
				window.location = window.CR+'/account/orders/';
			}
			else{
				alert(processPayment2.responseText);
				window.location = window.CR+'/account/shipping-billing-info/?r=checkout';
			}
		}
	});*/ 
}

//need to verify 

function starSelect(containerid, inputidPrefix, value){
	var startContainer = $(containerid);
	var starSelectidPrefix = 'selected-';
	//remove existing class that dictates the amount of stars

	var classNames = startContainer.className.split(' ');
	for(var i = 0; i<classNames.length; i++){
		if(classNames[i].include(starSelectidPrefix)){
			startContainer.removeClassName(classNames[i]);
		}
	}
	
	startContainer.addClassName(starSelectidPrefix+value);
	$(inputidPrefix+value).checked = true;
}

function swapMainItemImg(psml, pmed, pbig, position){
	var mainImg = $('image-main-img');
	var mainLink = $('image-main-link');
	var smlImg = $('item-img-'+position);
	var smlLink = $('item-img-link-'+position);
	var mainImgName = mainImg.src.replace(document.location.protocol+'//'+document.domain+pmed, '');
	var smlImgName = smlImg.src.replace(document.location.protocol+'//'+document.domain+psml, '');
	mainImg.src = pmed+smlImgName;
	mainLink.href = pbig+smlImgName;
	//smlImg.src = psml+mainImgName;
	//smlLink.href = pbig+mainImgName;
}

function checkoutCartUpdate(){
	updateCartCount();
	if($('empty-cart-checkout')){
		window.location	= window.CR + '/checkout';
	}
	else{
		EmgAjax.refresh('totals-container');
	}
}
function updateCheckoutPage(){
	EmgAjax.refresh('cart-container', 'checkoutCartUpdate()');
}
/* functions.js.php */
/*<script>*/
Event.observe(window, 'load', slideVideo);
Event.observe(window, 'load', webinarTabs);

function slideVideo() {
	if ($('video-container')) {
		Event.observe($('video-play-button'), 'click', playSlideVideo);
		Event.observe($('video-play-link'), 'click', playSlideVideo);
	}
	if ($('watch-videos')) {
		Event.observe($('yt-play-link-0'), 'click', function(e) {
			this.style.zIndex = '-1';
			document.getElementById("myytplayer0").playVideo();
			Event.stop(e);
		});
		Event.observe($('yt-play-link-1'), 'click', function(e) {
			this.style.zIndex = '-1';
			document.getElementById("myytplayer1").playVideo();
			Event.stop(e);
		});
	}
}
function playSlideVideo(e) {
	slideshow.autoplayFlag = false;
	$('video-container').style.zIndex = '2';
	ytplayer.playVideo();
	Event.stop(e);
}
function onYouTubePlayerReady(playerId) {
	ytplayer = document.getElementById("myytplayer");
}


function copyBusinessAddress(){
	var fields = new Array('street', 'street2', 'city', 'state', 'zip', 'country');
	for(var i = 0; i < fields.length; i++){
		$('shipping-' + fields[i]).value = $(fields[i]).value;	
	}
	
	$('shipping-first-name').value = $('first-name').value;
	$('shipping-last-name').value = $('last-name').value;
	$('shipping-phone').value = $('store-phone').value;
}

function storeSetupCheck(){
	if($('password').value == $('admin-password').value){
		alert('Login password can not be the same as admin password.');
		$('password').focus();
		return false;
	}
	return true;	
}

function webinarTabs() {
	if ($$('ul.webinars')) {
		var tabbed = new Tabbed('ul.webinar.nav', 'ul.webinars');
	}
}
/* slideshow.js.php */
/*<script>*/
//11:36 AM 1/7/2010
//may require scriptaculous

/*
usage, may need to configure: containerPrefix, imgdir, slideshowid
<script type="text/javascript">
<!--
	slideshow.init(3, true, true);
//-->
</script>
*/

var slideshow = {
	
	interval: 5000, //ms
	
	containerPrefix: 'slide-', //id prefix for slideshows that uses containers and not background images
	hideclass: 'current',
	
	linkPrefix: 'slide-link-', //id prefixes for slideshows that uses links to trasverse
	
	imgdir: 'slides', //assume imgdir is in clientroot/images
	
	usebg: false, // set to true if slideshow dosnt use containers but rather bg images
	slideshowid: 'slideshow', //the container that has the bg for the slideshow
	curclass: 'current',
	curPrevclass: 'current-previous', //allow fading out of current
	
	//private
	current: 1, //current slide #
	autoplayFlag: true,
	cnt: 0,
	loaded: false,
	
	init: function(bgSlideCnt, autoplay){
		if(bgSlideCnt){ //if use bg, need to specify the slide cnt
			this.usebg = true;
			this.cnt = bgSlideCnt;
		}
		else{ //slide cnt is automated if using containers instead of bg
			if($(this.containerPrefix + '1') == null){ //slideshow dosnt exist, need to check since init is always called
				return;	
			}
			//determine the number of slides
			this.cnt = 1;
			while(1){
				if($(this.containerPrefix + this.cnt) == null){
					this.cnt--; //compensate for last increment
					break;
				}
				this.cnt++;
			}
		}
			
		this.autoplayFlag = autoplay;
		this.loaded = true;
		
		setTimeout('slideshow.autoplay()', this.interval);
	},
	
	autoplay: function(){
		if(!this.autoplayFlag){
			return;
		}
		var next = this.current + 1;
		if(next > this.cnt){
			next = 1;
		}
		this.swap(next, true);
		setTimeout('slideshow.autoplay()', this.interval);
	},
	
	swap: function(number, autoplay){
		if(!this.loaded){
			return ;	
		}
		if(!autoplay){
			this.autoplayFlag = false;	
		}
        else{
        	this.autoplayFlag = true;	
        }
		
		if(this.usebg){
			$(this.slideshowid).style.backgroundImage = 'url(' + window.CR + '/images/'+this.imgdir+'/slide-' + number + '.jpg)';
		}
		
		// Clear classes
		for (var i = 1; i <= this.cnt; i++) {
			if(!this.usebg){ //reset all containers
				$(this.containerPrefix + i).removeClassName(this.curclass);
				$(this.containerPrefix + i).removeClassName(this.curPrevclass);
			}
			if($(this.linkPrefix + i) != null){
				$(this.linkPrefix + i).removeClassName(this.curclass);	
			}
		}
		
		// Set new current
		if(!this.usebg){ //show next container
			$(this.containerPrefix + this.current).addClassName(this.curPrevclass); //so we can fade out from it
			$(this.containerPrefix + number).addClassName(this.curclass);
			
			$(this.containerPrefix + number).setStyle({opacity:0 }); // for fade in
			$(this.containerPrefix + number).fade({ duration: .75, from: 0, to: 1 }); //fade in
			// grow
			//$(this.containerPrefix + number).hide();
			//Effect.Grow(this.containerPrefix + number, { duration: 1.0, direction: 'top-left'});
		}
		if($(this.linkPrefix + number) != null){
			$(this.linkPrefix + number).addClassName(this.curclass);
			// Blur anchor, cant figure out
			var anchors = $$('#'+this.linkPrefix+ number + ' a');
			if(anchors[0]){
				anchors[0].blur();
			}
		}
		
		this.current = number;
	},
	
	next: function(){
		var next = this.current + 1;
		if(next > this.cnt){
			next = 1;
		}
		this.swap(next, false);
	},
	
	prev: function(){
		var prev = this.current - 1;
		if(prev < 1){
			prev = this.cnt;
		}
		this.swap(prev, false);
	}
}
/* swf-obj.js.php */
/**
 * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
 *
 * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 */
if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\"";_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";var _1a=this.getParams();for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}var _1c=this.getVariablePairs().join("&");if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\" style=\""+this.getAttribute("style")+"\">";_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";var _1d=this.getParams();for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major){return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};deconcept.util={getRequestParameter:function(_2b){var q=document.location.search||document.location.hash;if(_2b==null){return q;}if(q){var _2d=q.substring(1).split("&");for(var i=0;i<_2d.length;i++){if(_2d[i].substring(0,_2d[i].indexOf("="))==_2b){return _2d[i].substring((_2d[i].indexOf("=")+1));}}}return "";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){var _2f=document.getElementsByTagName("OBJECT");for(var i=_2f.length-1;i>=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;
/* swfobject.js.php */
/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> 
	is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/
var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();
/* tabbed.js.php */
/*<script>*/
// Usage:
// var tabbed = new Tabbed('.tabbed-content ul.nav', '.tabbed-content ul.content');
function Tabbed(navClass, contentClass, currentItem, replaceOnclick) {
	this.currentClass = 'current';
	this.tabbedClass = 'tabbed';
	
	this.currentNav = false;
	this.currentContent = false;
	
	this.navClass = navClass;
	this.contentClass = contentClass;
	this.replaceOnclick = replaceOnclick;
	this.currentItem = currentItem > 0 ? currentItem : 1;
	
	this.navs = $$(this.navClass + ' > li');
	this.contents = $$(this.contentClass + ' > li');
	
	// Constructor
	this.construct = function(currentItem) {
		// Return if contents don't exist
		if (this.contents.length < 1) {
			return;
		}
		
		this.contents.invoke('addClassName', this.tabbedClass);
		
		// Set current class to currentItem's nav & content
		$$(this.navClass + ' > li a').each((function(el, i) {
			if (i + 1 == this.currentItem) {
				this.setCurrents(getHash(el.href), el);
			}
		}).bind(this));
		
		this.setEvents();
	}
	
	// Set click events on anchors
	this.setEvents = function() {
		$$(this.navClass + ' > li a').each((function(el) {
			// Set/append return false for hash
			setOnclickFalse(el, this.replaceOnclick);
			
			// Click event
			el.observe('click', (function(event) {
				el.blur();
				
				// Clear 'current' class from navs and contents
				// Set current nav and content
				// Apply 'current' class
				this.setCurrents(getHash(el.href), el);
			}).bind(this, el))
		}).bind(this));
	};
	
	// Remove 'current' class name from navs and contents
	this.clearCurrents = function() {
		[this.navs, this.contents].invoke('invoke', 'removeClassName', this.currentClass);
	};
	
	// Add 'current' class name on current nav and content
	this.setCurrents = function(target, targetAnchor) {
		this.clearCurrents();
		//[this.currentNav, this.currentContent].invoke('addClassName', this.currentClass);
		
		// If numeric navigation exists, then set
		if (this.navs.length > 0 && targetAnchor !== undefined) {
			this.currentNav = targetAnchor.up('li');
			this.currentNav.addClassName(this.currentClass);
		}
		
		// Set content
		this.currentContent = $(target);
		this.currentContent.addClassName(this.currentClass);
	}
	
	this.construct();
}

/* valform-v2.js.php */
 /* 
 CUSTOM DONT REPLACE
 1:13 PM 8/16/2010 */
/*
Copyright © 2008 Eckx Media Group, LLC. All rights reserved.
Eckx Media Group respects the intellectual property of others, and we ask our users to do the same.
*/
/*<script>*/
var valForms = new Array(); function initValForm(container){
 if(container){ var forms = container.select('form[class*="val-form"]');
} else{ var forms = $$('form[class*="val-form"]'); }; 
 for(var i = forms.length; i > 0; i--){
 
 var existFlag = false; for(var j = 0; j < valForms.length; j++){ if(valForms[j].form.id == forms[i-1].id){
 
 valForms[j].reset(); valForms[j].init(forms[i-1]); existFlag = true; } } if(!existFlag){ var nextIndex = valForms.length;
valForms[nextIndex] = new Valform(); valForms[nextIndex].init(forms[i-1]); } } } function valFormsResetSubmit(){
 for(var i = 0; i < valForms.length; i++){ valForms[i].resetSubmit(); } } function getValFormIndex(nodeid){ 
 for(var valFormIndex = 0; valFormIndex < valForms.length; valFormIndex++){ if(valForms[valFormIndex].form.id == nodeid ){
 return valFormIndex; } for(var i = 0; i < valForms[valFormIndex].inputs.length; i++){ if(valForms[valFormIndex].inputs[i].id == nodeid ){
 return valFormIndex; } } } alert('valform index not found'); } function Valform() { 
 this.errorTag = 'div';
this.errorClass = 'val_error';
 
 this.classList = new Array('val_req', 'val_min', 'val_max', 'val_maxNum', 'val_minNum', 'val_alpha', 'val_alpha_num', 'val_alpha_num_sym', 'val_alpha_space', 'val_alpha_num_space', 'val_num', 'val_int', 'val_email', 'val_len', 'val_same', 'val_notSame', 'val_url', 'val_ajax', 'val_money', 'val_func', 'val_checked', 'val_checked_min', 'val_checked_max', 'val_date', 'val_datetime', 'val_phone', 'val_mac');
 
 this.dependents = new Array('val_len', 'val_min', 'val_max', 'val_maxNum', 'val_minNum', 'val_same', 'val_notSame', 'val_ajax', 'val_func', 'val_checked', 'val_checked_min', 'val_checked_max');
this.failed = true; this.form = null; this.formObsFunc = null; this.submitBtn = null; this.submitBtnDefaultVal = null; 
 this.ajaxRunning = new Object(); this.alertErrorsFlag = false; this.hideErrorsFlag = false; this.errors = new Object();
this.errorFocusedFlag = false; this.inputs = new Array(); this.inputObsFuncs = new Array(); this.originalSubmit = null; 
 this.init = function(form){ if(!form){ alert('Valform.init(), form object dosnt exist'); return false;
} this.form = form; 
 if(form.hasClassName('alert-errors')){ this.alertErrorsFlag = true; } if(form.hasClassName('hide-errors')){
 this.hideErrorsFlag = true; } 
 var submitBtns = this.form.select('input[type="submit"]'); if(submitBtns.length == 0){
 alert('valForm init error: no submit button'); } else{ this.submitBtn = submitBtns[0]; this.submitBtnDefaultVal = this.submitBtn.defaultValue;
this.resetSubmit(); } 
 var validNodes = new Array('INPUT', 'TEXTAREA', 'SELECT'); for(var i = 0; i < this.form.elements.length; i++){
 if(this.form.elements[i].disabled || validNodes.indexOf(this.form.elements[i].nodeName) == -1){ continue; 
 } this.inputs[this.inputs.length] = this.form.elements[i]; } 
 var focusThisFlag = true; if(form.hasClassName('auto-focus-on')){
 focusThisFlag = false; } for(var i=0; i < this.inputs.length; i++){ var inputType = this.inputs[i].type.toLowerCase();
 
 if(!focusThisFlag && this.inputs[i].name && inputType != 'hidden'){ focusThisFlag = true; if( inputType != 'radio' && inputType != 'checkbox'){ 
 this.inputs[i].focus(); } } 
 this.inputObsFuncs[i] = this.fieldCheck.bindAsEventListener(this.inputs[i], this); 
 Event.observe(this.inputs[i], 'blur', this.inputObsFuncs[i]); if($w(this.inputs[i].className).indexOf('val_ajax') != -1 ){
 this.ajaxRunning[this.inputs[i].id] = false; } } 
 this.originalSubmit = this.form.onsubmit; this.form.onsubmit = null; 
 this.formObsFunc = this.submitCheck.bindAsEventListener(this.form, this); Event.observe(this.form, 'submit', this.formObsFunc); 
 }; this.reset = function(){
 this.failed = true; this.ajaxRunning = new Object(); if(this.inputs){ 
 for(var i=0; i<this.inputs.length; i++){ Event.stopObserving(this.inputs[i], 'blur', this.inputObsFuncs[i]); 
 } } this.inputs = new Array(); this.inputObsFuncs = new Array(); if(this.formObsFunc){ Event.stopObserving(this.form, 'submit', this.formObsFunc); 
 } }; this.submitCheck = function(event){ var Va956af09 = $A(arguments); var parent = Va956af09[1]; 
 parent.errorFocusedFlag = false; if(!parent.form.hasClassName('dont-disable')){ parent.submitBtn.disabled = true; 
 } parent.submitBtn.value = 'Please wait...'; parent.errors = new Object(); parent.failed = false;
for(var fieldID in this.ajaxRunning){ this.ajaxRunning[fieldID] = true; } for(var i=0; i < parent.inputs.length; i++){
 parent.fieldCheckSubmit(parent.inputs[i]); if(parent.errors[parent.inputs[i].id] && !parent.errorFocusedFlag){ 
 parent.inputs[i].focus(); parent.errorFocusedFlag = true; } } parent.submitAjaxChk();
 Event.stop(event); 
 return false; }; this.submitAjaxChk = function(){ var Vc5417c1e = false; for(var fieldID in this.ajaxRunning){
 if(this.ajaxRunning[fieldID]){ Vc5417c1e = true; } else{ if(this.errors[fieldID] && !this.errorFocusedFlag){ 
 $(fieldID).focus(); this.errorFocusedFlag = true; } } } if(Vc5417c1e){ var valFormIndex = getValFormIndex(this.form.id);
setTimeout('valForms[' + valFormIndex + '].submitAjaxChk()', 100); } else if(!this.failed){ var tosubmit = true; 
 if(this.originalSubmit){ tosubmit = this.originalSubmit.call(this.form); } if(tosubmit == 'dont reset'){ 
 } else if(tosubmit){ this.form.submit(); } else{ this.resetSubmit(); } } else{ if(this.alertErrorsFlag){
 var Vcefb778c = ''; for(var fieldID in this.errors){ Vcefb778c += this.errors[fieldID] + "\n"; } alert(Vcefb778c);
} this.resetSubmit(); } }; this.resetSubmit = function(){ this.submitBtn.disabled = false; this.submitBtn.value = this.submitBtnDefaultVal;
}; this.fieldCheck= function(event){ var Va956af09 = $A(arguments); var parent = Va956af09[1]; 
 var classes = $w(this.className);
 var index = classes.indexOf('val_combo'); if(index != -1){ 
 if(index+1 == classes.length){ alert('val_combo id required'); return; } var comboID = classes[index + 1];
if($(parent.comboID + '_error')){ $(parent.comboID + '_error').remove(); } if(parent.errors[comboID]){ 
 parent.errors[comboID] = false; } var comboFields = parent.form.select('.' + comboID); for(var i=0; i<comboFields.length; i++){
 parent.validate(comboFields[i], comboID); if(parent.errors[comboID]){ return; } } return; } parent.validate(this);
return; }; this.fieldCheckSubmit= function(field){ var classes = $w(field.className); var index = classes.indexOf('val_combo');
if(index != -1){ if(index + 1 == classes.length){ alert('val_combo id required'); return; } var comboID = classes[index + 1];
if($(this.comboID + '_error')){ $(this.comboID + '_error').remove(); } if(this.errors[comboID]){ 
 this.errors[comboID] = false; } var comboFields = this.form.select('.' + comboID); for(var i=0; i < comboFields.length; i++){
 this.validate(comboFields[i], comboID); if(this.errors[comboID]){ return; } } return; } this.validate(field);
return; }; this.validate= function(field, comboID){ if(field.value && field.type.toLowerCase() != 'file'){ 
 field.value = field.value.strip(); } var classes = $w(field.className); 
 var V0fb06b86 = classes.indexOf('val_skipifis');
if(V0fb06b86 != -1 && V0fb06b86 != (classes.length - 1)){ var ifisInput = $(classes[V0fb06b86 + 1]);
if( ifisInput.value != '' && field.value == ifisInput.value){ if(classes.indexOf('val_ajax') !=-1 ){ 
 this.ajaxRunning[field.id] = false; } this.errorHandler(field, false); return; } } for(var i=0; i<classes.length; i++){
 if(this.classList.indexOf(classes[i]) == -1){ continue; } if(this.dependents.indexOf(classes[i]) == -1){ 
 var run = 'var error = this.'+classes[i]+'(field);'; } else{ if(i+1 == classes.length){ alert('valForm dependent required');
return false; } var run = 'var error = this.'+classes[i]+'(field, "'+classes[i+1]+'");'; } eval(run); 
 if(classes[i] == 'val_ajax'){ continue; } var V3cf7317e = field; if(comboID){ V3cf7317e = $(comboID);
} if(this.errorHandler(V3cf7317e, error)){ break; } } }; this.errorHandler= function(field, error){ 
 var fieldType = field.type.toLowerCase(); if(fieldType == 'checkbox' && field.name.indexOf('[') != -1 ){ 
 var V943db850 = this.form.select('[name="'+field.name+'"]')[0].id; } else{ var V943db850 = field.id;
} var label = this.form.select('label[for=' + V943db850 + ']'); if($(field.id+'_error')){ $(field.id+'_error').remove();
label[0].removeClassName('val-error'); } if(!error){ return false; } this.failed = true; 
 if(this.ajaxRunning[field.id]){
 this.ajaxRunning[field.id] = false; } if(!label[0]){ alert(field.id+' label is missing, check label id');
return; }
 var errorMsg = label[0].innerHTML; var Va8039183 = label[0].innerHTML.indexOf(':'); if(Va8039183 == -1){ 
 var htmlOpenPos = label[0].innerHTML.indexOf('<'); if(htmlOpenPos != -1){ var errorMsg = label[0].innerHTML.substring(0, htmlOpenPos-1);
} } else{ var errorMsg = label[0].innerHTML.substring(0, Va8039183); }
 errorMsg = errorMsg.gsub(/^\s+|\s+$|:|<em>\*<\/em>/i, '') + ' ' + error;
errorMsg = errorMsg.stripTags(); if(!this.hideErrorsFlag){
 var classNames = $w(field.className);
var findKeyword = classNames.indexOf('val_errorAfter'); if( findKeyword != -1){ if(findKeyword == (classNames.length - 1)){ 
 alert('val_form: val_errorAfter is missing an id'); } else{ new Insertion.After($(classNames[findKeyword+1]), '<'+this.errorTag+' id="'+field.id+'_error" class="'+this.errorClass+'">'+errorMsg+'</'+this.errorTag+'>');
label[0].addClassName('val-error'); } } else{ new Insertion.After(field, '<'+this.errorTag+' id="'+field.id+'_error" class="'+this.errorClass+'">'+errorMsg+'</'+this.errorTag+'>');
label[0].addClassName('val-error'); } } this.errors[field.id] = errorMsg; return true; }; 
 this.val_num = function(field) {
 if(field.value.match(/(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/) || field.value == '') { return false;
} else { return 'needs to be a number.'; } }; this.val_req = function(field) { var fieldType = field.type.toLowerCase();
if(fieldType == 'checkbox' || fieldType == 'radio'){ var values = this.form.select('[name="'+field.name+'"]');
for(var i=0; i<values.length; i++){ if(values[i].checked){ return false; } } } else if(field.value.length != 0) {
 return false; } return 'is required.'; }; this.val_min = function(field, minLen) { if(field.value.length < parseFloat(minLen) && field.value != ''){
 return 'must be at least '+minLen+' characters long.'; } else{ return false; } }; this.val_max = function(field, maxLen) {
 if(field.value.length > parseFloat(maxLen) && field.value != ''){ return 'must be at most '+maxLen+' characters long.';
} else{ return false; } }; this.val_maxNum = function(field, maxNum){ if( !isNaN(field.value) && field.value > parseFloat(maxNum)){ 
 return 'must be '+maxNum+' or less.'; } else{ return false; } }; this.val_minNum = function(field, minNum){
 if(!isNaN(field.value) && (field.value < parseFloat(minNum))){ return 'must be '+minNum+' or greater.';
} else{ return false; } }; this.val_len = function(field, len) { if(field.value.length != parseFloat(len) && field.value != ''){
 return 'must be '+len+' characters long.'; } else{ return false; } }; this.val_same = function(field, field2){
 var field2Obj = $(field2); if(!field2Obj){ alert('val_same: '+field2+' is not defined'); return true;
} if(field.value != field2Obj.value && field2Obj.value != ''){ var label = this.form.select('label[for=' + field2Obj.id + ']');
return 'does not match '+label[0].innerHTML.gsub(/:|<em>\*<\/em>|<EM>\*<\/EM>/, '')+'.'; } return false;
}; this.val_notSame = function(field, field2){ if(!$(field2)){ alert('val_notSame: '+field2+' is not defined');
return 'error'; } if(field.value.length == 0){ return false; } var checkFields = $(field2).value.split(' ');
for(var i=0; i<checkFields.length; i++){ if(checkFields[i] == field.id){ continue; } if(!$(checkFields[i])){
 alert('val_notSame: '+checkFields[i]+' is not defined'); return 'error'; } if(field.value == $(checkFields[i]).value){
 return ' has already been entered.'; } } return false; }; this.val_email = function(field){ if(field.value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/) || field.value == '') {
 return false; } else { return 'is not a valid email address.'; } }; this.val_alpha = function(field) {
 if(field.value.match(/^[a-zA-Z]+$/) || field.value == '') { return false; } else { return 'should contain only letters.';
} }; this.val_alpha_space = function(field) { if(field.value.match(/^[a-zA-Z\s]*$/) || field.value == '') {
 return false; } else { return 'should contain only letters and spaces.'; } }; this.val_alpha_num = function(field) {
 if(field.value.match(/^[a-zA-Z0-9]*$/) || field.value == '') { return false; } else { return 'should contain only letters and numbers.';
} }; this.val_alpha_num_space = function(field) { if(field.value.match(/^[a-zA-Z0-9\s]*$/) || field.value == '') {
 return false; } else { return 'value should contain only letters, numbers, and spaces.'; } }; this.val_alpha_num_sym = function(field) {
 if(field.value.match(/^[a-zA-Z0-9_\-.]*$/) || field.value == '') { return false; } else { return 'should contain only letters, numbers, and "-", "_", or ".".';
} }; this.val_int = function(field) { if(field.value.match(/(^-?\d\d*$)/) || field.value == '') {
 return false; } else { return 'needs to be a whole number.'; } }; this.val_url = function(field) {
 if(field.value.match(/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i) || field.value == '') {
 return false; } else { return 'needs to be a valid url.'; } }; this.val_checked = function(field, len){
 var checked = 0; var values = this.form.select('[name="'+field.name+'"]'); for(var i=0; i<values.length; i++){
 if(values[i].checked){ checked++; } } if(checked != len){ return 'requires '+len+' selections.';
} return false; }; this.val_checked_min = function(field, len){ var checked = 0; var values = this.form.select('[name="'+field.name+'"]');
for(var i=0; i<values.length; i++){ if(values[i].checked){ checked++; } } if(checked < len){ return 'requires at least '+len+' selections.';
} return false; }; this.val_checked_max = function(field, len){ var checked = 0; var values = this.form.select('[name="'+field.name+'"]');
for(var i=0; i<values.length; i++){ if(values[i].checked){ checked++; } } if(checked > len){ return 'requires at most '+len+' selections.';
} return false; }; this.val_ajax= function(field, func){ eval(func + "('"+field.id+"')"); return true;
}; this.val_func= function(field, func){ eval('var valForm_error = '+func + "('"+field.id+"')"); if(valForm_error){
 return valForm_error; } else{ return false; } }; 
 this.val_money = function(field){ field.value = field.value.replace(/[^0-9\.]/g, '');
if(field.value == ''){ return; } if(isNaN(field.value)){ formated = '0.00'; } else{ var formated = Math.round(field.value*100)/100;
formated = formated.toString(); if(formated.indexOf('.') == -1){ formated += '.00'; } else{ var parts = formated.split('.');
if(parts[1].length == 1){ formated += '0'; } } } field.value = formated; }; this.val_date = function(field) {
 if(field.value == ''){ return false; } else if(field.value.match(/^[0-9]{2}\/[0-9]{2}\/[0-9]{4}$/)) {
 
 var dateParts = field.value.split('/'); var day = dateParts[1]; var month = dateParts[0]; var year = dateParts[2];
var dteDate = new Date(year, month - 1, day); if(day == dteDate.getDate() && (month == dteDate.getMonth() + 1) && year == dteDate.getFullYear()){
 return false; } return 'is an invalid date.'; } else { return 'needs to be mm/dd/yyyy.'; } }; this.val_datetime = function(field) {
 if(field.value.match(/^[0-9]{2}\/[0-9]{2}\/[0-9]{4} [0-9]{2}:[0-9]{2}(:[0-9]{2})? (am|pm|AM|PM)$/) || field.value == '') {
 return false; } else { return 'needs to be mm/dd/yyyy hh:mm:ss am/pm.'; } };
 
 this.val_phone = function(field) {
 	if(field.value == ''){
		return false; 
	}
	var numbers = field.value.replace(/[^0-9]/g, '');
	if(numbers.length < 10){
 	return 'needs to be 10 digits.'; 
	}
	field.value = numbers.substr(0, 3) + '-' + numbers.substr(3, 3) + '-' + numbers.substr(6, 4);
 
 	if(numbers.length > 10){
		field.value += ' x ' + numbers.substr(10);
	}
	return false; 
 }; 
 
 this.val_mac = function(field) {
 	if(field.value == ''){
		return false; 
	}
	var noColons = field.value.replace(/[^0-9A-Fa-f]/g, '');

	field.value = noColons.substr(0, 2) + ':' + noColons.substr(2, 2) + ':' + noColons.substr(4, 2) + ':' + noColons.substr(6, 2) + ':' + noColons.substr(8, 2) + ':' + noColons.substr(10, 2);
 	if(noColons.length < 12){
 		return 'needs to be 12 characters.'; 
	}
	return false; 
 }; 
 
 } 
