/*
JKI TOOLS
www.jeffkalsow.info
*/
var JKIT = new Object();
JKIT.VALIDATE = new Object();
JKIT.VALIDATE.email = function(s) {
	var isvalid = (/^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/.test(s))
	/*alert('\' ' + s + '\' Validation: ' + isvalid);*/
	return isvalid;
}
/*
******************************************************
SWF METHODS
******************************************************
*/
JKIT.SWF = new Object();
JKIT.SWF.get_movie_name = function(s) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
    	return window[s]
    }
    else {
    	return document[s]
    }
}
/*
******************************************************
XML METHODS
******************************************************
*/
JKIT.XML = new Object();
JKIT.XML.fExC = function(classname, elm) {
	
	var l, r, aa, i;
	elm = (elm != null) ? elm : document.getElementsByTagName("body")[0];
	r = new Array();
	if (elm.className == classname) r.push(elm);
	l = elm.childNodes.length;
	for (i = 0; i < l; i++) {
		if (elm.childNodes[i].nodeType == 1) {
			aa = new Array();
			aa = JKIT.XML.fExC(classname, elm.childNodes[i]);
			if (aa.length > 0) r = r.concat(aa);
		}
	}
	//if (elm == document.body) alert("Final length of return array of elements of classname: "+ classname + ", is: " + r.length);
	return r;	
}
JKIT.XML.get_elements_by_tagname = function(xx, ns, tagname)
{
	var r;
	r = xx.getElementsByTagName(ns + ":" + tagname);
	if (typeof(r) != 'object')
	{
		/*Using Safari*/
		r = xx.getElementsByTagName(tagname);
	}
	return r;
}
JKIT.XML.get_attribute = function(xx, ns, attname)
{
	var r;
	r = xx.getAttribute(ns + ":" + attname);
	if (typeof(r) != 'string')
	{
		/*Using Safari*/
		r = xx.getAttribute(attname);
	}
	return r;
}
JKIT.XML.modify_attribute = function(node_id, n, v)
{
	var e = document.getElementById(node_id);
	e.setAttribute(n, v);
}
JKIT.XML.xremovechild = function(s, typ) {
	
	var elm,prnt;
	
	switch (typ) {
		
		case "object":
		
			s.parentNode.removeChild(s);
			break;
			
		case "string":
		default:
			
			try
			{
				elm = document.getElementById(s);
				prnt = elm.parentNode;
				prnt.removeChild(elm);
			}
			catch(e){}
			
	}
}
JKIT.XML.newxml = function()
{
	var xmldoc;
	try //Internet Explorer
	{
		xmldoc=new ActiveXObject("Microsoft.XMLDOM");
	}
	catch(e)
	{
		try //Firefox, Mozilla, Opera, etc.
		{
			xmldoc=document.implementation.createDocument("","",null);
		}
		catch(e) {alert(e.message);}
	}
	return xmldoc;
}
JKIT.XML.newxmlfromtext = function(t)
{
	var xmldoc;
	try //Internet Explorer
	{
		xmldoc=new ActiveXObject("Microsoft.XMLDOM");
		xmldoc.async="false";
		xmldoc.loadXML(t);
	}
	catch(e)
	{
		try //Firefox, Mozilla, Opera, etc.
		{
		parser=new DOMParser();
		xmldoc=parser.parseFromString(t,"text/xml");
		}
		catch(e) {alert(e.message);}
	}
	return xmldoc;
}
JKIT.XML.clean_nodevalue = function(s)
{
	return s.replace(/[\s]+/g, '');
}
/*
******************************************************
FORM TOOLS
******************************************************
*/
// t = search form
// s = search input default
JKIT.Fi_chk = function()
{
	var a = JKIT.Fi_chk.arguments;
	var s = (a[1]) ? a[1] : '';
	if (a[0].value==s) a[0].value='';
	a[0].select();
	a[0].style.fontStyle = 'normal';
	
	
}
JKIT.Fi_next = function(evt, o, nn, l)
{
	//f = (f) ? f : 0;
	var charok = (evt.charCode > 47 && evt.charCode < 58);
	if (o.value.length == (l-1) && charok)
	{
		//document.forms[f].elements[nn].focus();
		//document.forms[f].elements[nn].select();
		document.getElementById(nn).focus();
		document.getElementById(nn).select();
	}
}
/*
*******************************************************
WINDOW TOOLS
*******************************************************
*/
/*
wnew - New Window:
[0]width
[1]height
[2]do not use screen w dim
[3]do not use screen h dim
[4]url incl. get vars (optional)
[5]window name (optional)
*/
JKIT.wnew = function()
{
	var a = JKIT.wnew.arguments;
	var nw = JKIT.wwh('w', a[0], Boolean(a[2]));
	var nh = JKIT.wwh('h', a[1], Boolean(a[3]));
	var u = (a[4]) ? a[4] : '/';
	var wnm = (a[5]) ? a[5] : '_blank';
	var vrs = "width="+nw+",height="+nh+",status=no,toolbar=no,menubar=no,location=no,left=0,top=0,resizable=yes";	
	var w = window.open(u, wnm, vrs);
	return false;
}
/*
wwh - Window - Width - Height
[0] w or h
[1] desired w/h
[2] do not use screen dim
*/
JKIT.wwh = function wwh(){
	var a = JKIT.wwh.arguments;
	var rs;
	if(a[0] == 'w'){
		rs = (screen.availWidth && !(a[2])) ? screen.availWidth : a[1];
	}
	if(a[0] == 'h'){
		rs = (screen.availHeight && !(a[2])) ? screen.availHeight : a[1];
	}
	return rs;
}
/*
*******************************************************
XMLHTTP
*******************************************************
*/
JKIT.XMLHTTP = new Object();
JKIT.XMLHTTP.rq = null;
JKIT.XMLHTTP.rq_o = null;
JKIT.XMLHTTP.rq_ocheck = null;

JKIT.XMLHTTP.requestGET = function(serverside, first_callback, add_html_to_id, send_data, check_if_exists_id, second_callback, async)
{
	var xs, xo, contenttype, httpmethod;
	JKIT.XMLHTTP.rq = null;
	JKIT.XMLHTTP.rq_o = null;
	JKIT.XMLHTTP.rq_secondmethod = null;
	JKIT.XMLHTTP.rq_ocheck = null;
	if (window.XMLHttpRequest)
	{
		try {
			JKIT.XMLHTTP.rq = new XMLHttpRequest();
		} catch(e)
		{
			JKIT.XMLHTTP.rq = null;
		}
	}else if (window.ActiveXObject)
	{
		try
		{
			JKIT.XMLHTTP.rq = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try
			{
				JKIT.XMLHTTP.rq = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(e) {
				JKIT.XMLHTTP.rq = null;
			}
		}
	}
	if (JKIT.XMLHTTP.rq)
	{
		JKIT.XMLHTTP.rq_o = add_html_to_id;
		JKIT.XMLHTTP.rq_ocheck = check_if_exists_id;
		JKIT.XMLHTTP.rq_secondmethod = second_callback;
		if (send_data)
		{
			httpmethod = 'POST';
			contenttype = "application/x-www-form-urlencoded";
			/*xs = '<?xml version="1.0"?><root><data><name>state</name><value>' + send_data + '</value></data></root>';*/
			xo = send_data;
			/*xo = JKIT.XML.newxmlfromtext(xs);*/
		}else{
			httpmethod = 'GET';
			contenttype = "text/xml";
			xo = null;
			
		}
		JKIT.XMLHTTP.rq.open(httpmethod, serverside, async);
		JKIT.XMLHTTP.rq.onreadystatechange = first_callback;
		JKIT.XMLHTTP.rq.setRequestHeader("Content-Type", contenttype);
		JKIT.XMLHTTP.rq.send(xo);
		if (!async)
		{
			return JKIT.XMLHTTP.rq.responseText;
		}
	}
}
JKIT.XMLHTTP.prq_html = function()
{
	/*alert('State: ' + JKIT.CONTACT.rq.readyState + "\n" + 'Status: ' + JKIT.CONTACT.rq.status);*/
	if (JKIT.XMLHTTP.rq.readyState == 4 && JKIT.XMLHTTP.rq.status == 200)
	{
		var htmlstring = JKIT.XMLHTTP.rq.responseText;
		if (htmlstring)
		{
			var o = document.getElementById(JKIT.XMLHTTP.rq_o);
			var bnodeexists = Boolean(document.getElementById(JKIT.XMLHTTP.rq_ocheck));
			var bexistscheck = Boolean(JKIT.XMLHTTP.rq_ocheck);
			var addhtml = !(bnodeexists && bexistscheck);
			/*alert('Node Exists: ' + bnodeexists + "\nExists Check On: " + bexistscheck);*/
			if (o && addhtml)
			{
				o.innerHTML = htmlstring;
			}else{
				//Content Not Added
			}
			if (JKIT.XMLHTTP.rq_secondmethod) JKIT.XMLHTTP.rq_secondmethod();
		}
	}
}
/*
*******************************************************
FORMAT TEXT/PHONES/STUFF
*******************************************************
*/
JKIT.FORMAT = new Object();
JKIT.FORMAT.rdf_label = function(l)
{
	switch(l)
	{
		case 'free':
		return 'toll free';
		
		case 'work':
		return 'office';
		
		case 'work2':
		return 'office';
		
		default:
		return l;
	}
}
JKIT.FORMAT.clean_null = function(o)
{
	var r;
	switch(typeof(o))
	{
		case 'string':
		r = (o != null) ? o : '';
		break;
		
		default:
		r = new Object();
		for (i in o)
		{
			r[i] = (o[i] != null) ? o[i] : '';
		}
	}
	return r;
}
		
/*
*******************************************************
CONTACT
*******************************************************
*/
JKIT.CONTACT = new Object();
JKIT.CONTACT.region = null;
JKIT.CONTACT.regionform = null;
JKIT.CONTACT.contactform = null;
JKIT.CONTACT.xmldoc = null;
JKIT.CONTACT.pvars = null;
JKIT.CONTACT.missingfields = null;
JKIT.CONTACT.allinputs = new Array();
JKIT.CONTACT.captchanames = new Array();
JKIT.CONTACT.container_id = '';

JKIT.CONTACT.ini = function(region_form, contact_form, contact_container_id)
{
	JKIT.CONTACT.allinputs[0] = {name:'name', id:'cF_nm', sn:'Name', type:'text', required:true, dflt:'Your Name'};
	JKIT.CONTACT.allinputs[1] = {name:'email', id:'cF_eml', sn:'Email', type:'text', required:true, dflt:'Email Address'};
	JKIT.CONTACT.allinputs[2] = {name:'adr.street', id:'cF_street', sn:'Street 1', type:'text', required:true, dflt:''};
	JKIT.CONTACT.allinputs[3] = {name:'adr.locality', id:'cF_locality', sn:'City', type:'text', required:true, dflt:''};
	JKIT.CONTACT.allinputs[4] = {name:'adr.region', id:'cF_region', sn:'Region', type:'text', required:true, dflt:''};
	JKIT.CONTACT.allinputs[5] = {name:'adr.postalcode', id:'cF_postalcode', sn:'Postal Code', type:'text', required:true, dflt:''};
	


	JKIT.CONTACT.captchanames.push('captcha');
	JKIT.CONTACT.captchanames.push('captcha_possible');
	JKIT.CONTACT.captchanames.push('captcha_precode');
	JKIT.CONTACT.container_id = contact_container_id;
	JKIT.CONTACT.regionform = (region_form) ? region_form : null;
	JKIT.CONTACT.contactform = (contact_form) ? contact_form : null;
	e = document.createElement("div");
	e.id = "regionD";
	//e.setAttribute("id", "regionD");
	e2 = document.createElement("a");
	e2.setAttribute("name", "regionA");
	e2.id = "regionA";
	//e2.setAttribute("id", "regionA");
	ee = document.createElement("div");
	//ee.setAttribute("id", "repD");
	ee.id = "repD";
	eee = document.createElement("div");
	//eee.setAttribute("id", "contact_emsgD");
	eee.id = "contact_emsgD";
	eeee = document.createElement("div");
	//eeee.setAttribute("id", "contactD");
	eeee.id = "contactD";
	
	ee2 = document.createElement("dl");
	ee.appendChild(ee2);
	ee3 = document.createElement("dt");
	ee3.setAttribute("id", "rep_hdr");
	ee2.appendChild(ee3);
	ee3 = document.createElement("dd");
//	ee3.setAttribute("id", "rep_fn");
	ee3.id = "rep_fn";
	ee2.appendChild(ee3);
	ee3 = document.createElement("dd");
//	ee3.setAttribute("id", "rep_adr1");
	ee3.id = "rep_adr1";
	ee2.appendChild(ee3);
	ee3 = document.createElement("dd");
//	ee3.setAttribute("id", "rep_adr2");
	ee3.id = "rep_adr2";
	ee2.appendChild(ee3);
	ee3 = document.createElement("dd");
//	ee3.setAttribute("id", "rep_adr3");
	ee3.id = "rep_adr3";
	ee2.appendChild(ee3);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("span");
//	ee4.setAttribute("id", "rep_work");
	ee4.id = "rep_work";
	ee3.appendChild(ee4);
	ee4 = document.createElement("attr");
//	ee4.setAttribute("id", "rep_work_l");
	ee4.id = "rep_work_l";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("span");
//	ee4.setAttribute("id", "rep_work2");
	ee4.id = "rep_work2";
	ee3.appendChild(ee4);
	ee4 = document.createElement("attr");
//	ee4.setAttribute("id", "rep_work2_l");
	ee4.id = "rep_work2_l";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("span");
//	ee4.setAttribute("id", "rep_free");
	ee4.id = "rep_free";
	ee3.appendChild(ee4);
	ee4 = document.createElement("attr");
//	ee4.setAttribute("id", "rep_free_l");
	ee4.id = "rep_free_l";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("span");
//	ee4.setAttribute("id", "rep_cell");
	ee4.id = "rep_cell";
	ee3.appendChild(ee4);
	ee4 = document.createElement("attr");
//	ee4.setAttribute("id", "rep_cell_l");
	ee4.id = "rep_cell_l";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("span");
//	ee4.setAttribute("id", "rep_fax");
	ee4.id = "rep_fax";
	ee3.appendChild(ee4);
	ee4 = document.createElement("attr");
//	ee4.setAttribute("id", "rep_fax_l");
	ee4.id = "rep_fax_l";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("a");
	ee4.setAttribute("href", "");
//	ee4.setAttribute("id", "rep_email");
	ee4.id = "rep_email1";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("a");
	ee4.setAttribute("href", "");
	ee4.id = "rep_email2";
	ee3.appendChild(ee4);
	ee3 = document.createElement("dd");
	ee2.appendChild(ee3);
	ee4 = document.createElement("a");
	ee4.setAttribute("href", "");
	ee4.id = "rep_email3";
	ee3.appendChild(ee4);
	
	document.getElementById(contact_container_id).appendChild(e2);
	document.getElementById(contact_container_id).appendChild(e);
	document.getElementById(contact_container_id).appendChild(ee);
	document.getElementById(contact_container_id).appendChild(eee);
	document.getElementById(contact_container_id).appendChild(eeee);
	

}
JKIT.CONTACT.data_validate = function(f, captchamsg)
{
	f = (f) ? f : document.forms[JKIT.CONTACT.contactform];
	var replacee = document.getElementById('contact_emsgD');
	e = document.createElement('div');
//	e.setAttribute('id', 'contact_emsgD');
	e.id = 'contact_emsgD';
	ee0 = document.createElement('a');
	ee0.setAttribute('name', 'contact_incomplete_msg');
//	ee0.setAttribute('id', 'contact_incomplete_msg');
	ee0.id = 'contact_incomplete_msg';
	ee1 = document.createElement('div');
	e.appendChild(ee0);
	e.appendChild(ee1);
	
	var i, dflt, formelm, empty, ee1a, ee1a0, dlid, ll;
	var a = JKIT.CONTACT.allinputs;
	var al = a.length;
	var berrors = false;
	var value_is_valid;
	
	dlid = f.getAttribute('id') + '_emsgDL';
	for (i = 0; i < al; i++)
	{
		formelm = f[a[i].name];
		formelm_l = document.getElementById([a[i].id + '_l']);
		if (formelm.value == a[i].dflt || formelm.value == '')
		{
			formelm.value = '';
			empty = true;
		}else{
			empty = false;
		}
		switch (a[i].name)
		{
			case 'email':
				/*validate email*/
				if (!empty)
				{
					value_is_valid = JKIT.VALIDATE.email(formelm.value);
				}
				break;
			
			default:
				value_is_valid = true;
			
		}
		if ((empty && a[i].required) || !value_is_valid)
		{
			berrors = true;
			if (ee1.childNodes.length == 0)
			{
				ee1a0 = document.createElement('h3');
				txt = document.createTextNode('!!!! The following required information is missing and/or invalid. Please fill them in, verify text from verification image and re-submit form. ');
				ee1a0.appendChild(txt);
				ee1.appendChild(ee1a0);
				ee1a = document.createElement('ul');
//				ee1a.setAttribute('id', dlid);
				ee1a.id = dlid;
				ee1.appendChild(ee1a);
			}
			ee1a0 = document.createElement('li');
			ee1a0a = document.createElement('strong');
			txt = (!value_is_valid) ? document.createTextNode('Invalid ' + a[i].sn) : document.createTextNode(a[i].sn);
			ee1a0a.appendChild(txt);
			ee1a0.appendChild(ee1a0a);
			ee1a.appendChild(ee1a0);
			formelm_l.style.background = '#faa';
		}else{
			formelm_l.style.background = 'none';
		}
	}
	/*
	var captchadata = 'httprq=1';
	for (i = 0; i < JKIT.CONTACT.captchanames.length; i++)
	{
		formelm = f[JKIT.CONTACT.captchanames[i]];
		captchadata += '&' + formelm.name + '=' + formelm.value;
	}
	
	var captchapass = JKIT.XMLHTTP.requestGET('/contact/s/check_captcha.php', null, null, captchadata, null, null, false);
	
	captchapass = Boolean(Number(captchapass));
	*/
	if (captchamsg)
	{
		if (!berrors)
		{
			ee1a0 = document.createElement('h3');
			txt = document.createTextNode('!! The following form fields are missing below and are required before submitting. Please fill them in, verify the image code, and re-submit form. ');
			ee1a0.appendChild(txt);
			ee1.appendChild(ee1a0);
			ee1a = document.createElement('ul');
//			ee1a.setAttribute('id', dlid);
			ee1a.id = dlid;
			ee1.appendChild(ee1a);
		}
		berrors = true;
		ee1a0 = document.createElement('li');
		ee1a0a = document.createElement('strong');
		txt = document.createTextNode('Image Code Verification');
		ee1a0a.appendChild(txt);
		ee1a0.appendChild(ee1a0a);
		ee1a.appendChild(ee1a0);
		
		
		
	}
	/*
	captchadata = '';
	captchadata = 'captcha_httprq=1';
	var captcharow = JKIT.XMLHTTP.requestGET('/contact/s/get_captcha.php', null, null, captchadata, null, null, false);
	
	document.getElementById('captchaR').innerHTML = captcharow;
	*/
		
	if (berrors)
	{
		document.getElementById('cF_captcha_l').style.background = '#faa';
		document.getElementById(JKIT.CONTACT.container_id).replaceChild(e, replacee);
		window.location.href = '#contact_incomplete_msg';
		return false;
	}else{
		return true;
	}
}
JKIT.CONTACT.regionform_mod = function()
{
	JKIT.XML.xremovechild(JKIT.CONTACT.regionform + "_submit");
	//if region selected coming back from processor to fill in missing form fields
	if(JKIT.CONTACT.region)
	{
		var elms = document.getElementsByTagName('option');
		//alert(elms.length);
		var i;
		for (i = 1; i < elms.length; i++)
		{
			if (elms[i] != null)
			{
				if (elms[i].firstChild)
				{
					if (elms[i].value === JKIT.CONTACT.region)
					{
						elms[i].setAttribute("selected", "selected");
						JKIT.XMLHTTP.requestGET('/contact/s/getrep.php', JKIT.CONTACT.__repprocess, 'repD', 'region='+JKIT.CONTACT.region+'&httprq=1', null, null, true);
						i = elms.length;
					}
				}
				
			}
		}
		
	}
}
JKIT.CONTACT.regionupdate = function(elmname)
{
	JKIT.CONTACT.region = document.forms[JKIT.CONTACT.regionform].elements[elmname].value;
	JKIT.XMLHTTP.requestGET('/contact/s/getrep.php', JKIT.CONTACT.__repprocess, 'repD', 'region='+JKIT.CONTACT.region+'&httprq=1', null, null, true);
	
}
JKIT.CONTACT.__repprocess = function()
{
	var repcode, xmldoc, reprdffile, fn, tel, adr, email;
	if (JKIT.XMLHTTP.rq.readyState == 4 && JKIT.XMLHTTP.rq.status == 200)
	{
		repcode = JKIT.XMLHTTP.rq.responseText;
		
		reprdffile = '/contact/vcard/' + repcode + ".xml";
		reprdffile = JKIT.XML.clean_nodevalue(reprdffile);

		if (repcode)
		{
			try 
			{
				JKIT.XMLHTTP.requestGET(reprdffile, JKIT.CONTACT.__repprocess_rdf, null, null, null, null, true);
	
			}
			catch(e) {alert(e.message);}
		}
		
	}
	
	
	
}
JKIT.CONTACT.__repprocess_rdf = function()
{
	var xmldoc, x, fn, tn, ne, e, xx, xxx, xxxn, oo, telcnt, ss, repnum;
	oo = JKIT.CONTACT.__newcontactobj();
	if (JKIT.XMLHTTP.rq.readyState == 4 && JKIT.XMLHTTP.rq.status == 200)
	{
		/*fn = xmldoc.getElementsByTagName('vCard:FN').nodeValue;*/
		
		e = document.getElementById('rep_hdr');
		if (e.childNodes.length == 0)
		{
			ne = document.createElement("h2");
			tn = document.createTextNode('Local Sales Representative');
			ne.appendChild(tn);
			e.appendChild(ne);
		}
		JKIT.CONTACT.__clear_contact_info(oo);
		xmldoc = JKIT.XMLHTTP.rq.responseXML;
		xx = xmldoc.documentElement;
		try{oo.fn = (JKIT.XML.get_elements_by_tagname(xx, "vCard", "FN"))[0].firstChild.nodeValue;} catch(e){}
		x = JKIT.XML.get_elements_by_tagname(xx, "vCard", "ADR")[0];
		try{oo.street = (JKIT.XML.get_elements_by_tagname(x, "vCard", "Street"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.pobox = (JKIT.XML.get_elements_by_tagname(x, "vCard", "PoBox"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.locality = (JKIT.XML.get_elements_by_tagname(x, "vCard", "Locality"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.region = (JKIT.XML.get_elements_by_tagname(x, "vCard", "Region"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.postalcode = (JKIT.XML.get_elements_by_tagname(x, "vCard", "Pcode"))[0].firstChild.nodeValue;} catch(e){}
		telcnt = 0;
		x = JKIT.XML.get_elements_by_tagname(xx, "vCard", "TEL");
		for (i = 0; i < x.length; i++)
		{
			telcnt++;
			xxxn = 'tel'+(i+1);
			try{oo[xxxn] = (JKIT.XML.get_elements_by_tagname(x[i], "rdf", "value"))[0].firstChild.nodeValue;} catch(e){}
			xxx = (JKIT.XML.get_elements_by_tagname(x[i], "rdf", "type"))[0];
			try{oo[xxxn + 'type'] = JKIT.XML.get_attribute(xxx, "rdf", "label");} catch(e){}
		}
		x = JKIT.XML.get_elements_by_tagname(xx, "vCard", "EMAIL");
		try{oo.email1 = (JKIT.XML.get_elements_by_tagname(x[0], "rdf", "value"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.email2 = (JKIT.XML.get_elements_by_tagname(x[1], "rdf", "value"))[0].firstChild.nodeValue;} catch(e){}
		try{oo.email3 = (JKIT.XML.get_elements_by_tagname(x[2], "rdf", "value"))[0].firstChild.nodeValue;} catch(e){}
		
		/*
		x = JKIT.XML.get_elements_by_tagname(xx, "vCard", "EMAIL")[0];
		try{oo.email = (JKIT.XML.get_elements_by_tagname(x, "rdf", "value"))[0].firstChild.nodeValue;} catch(e){}
		*/
		
		oo = JKIT.FORMAT.clean_null(oo);
		adr1 = oo.pobox;
		adr2 = oo.street;
		adr3 = oo.locality + ', '+oo.region+' '+oo.postalcode;
		
		JKIT.CONTACT.__update_contact_info('rep_fn', oo.fn);
		JKIT.CONTACT.__update_contact_info('rep_adr1', adr1);
		JKIT.CONTACT.__update_contact_info('rep_adr2', adr2);
		JKIT.CONTACT.__update_contact_info('rep_adr3', adr3);
		
		for (i = 0; i < 3; i++)
		{
			repnum = i + 1;
			if (oo["email"+repnum]) { JKIT.CONTACT.__update_contact_info('rep_email'+repnum, oo["email"+repnum]); JKIT.XML.modify_attribute('rep_email'+repnum, 'href', 'mailto:'+oo["email"+repnum]);}
		}
		/*
		if (oo.email1) { JKIT.CONTACT.__update_contact_info('rep_email', oo.email); JKIT.XML.modify_attribute('rep_email', 'href', 'mailto:'+oo.email1);}
		if (oo.email2) { JKIT.CONTACT.__update_contact_info('rep_email01', oo.email2); JKIT.XML.modify_attribute('rep_email01', 'href', 'mailto:'+oo.email2);}
		if (oo.email3) { JKIT.CONTACT.__update_contact_info('rep_email02', oo.email3); JKIT.XML.modify_attribute('rep_email02', 'href', 'mailto:'+oo.email3);}
		JKIT.XML.modify_attribute('rep_email', 'href', 'mailto:'+oo.email);
		*/
		
		for (i = 0; i < telcnt; i++)
		{
			ss = 'tel'+(i+1);
			JKIT.CONTACT.__update_contact_info('rep_'+oo[ss+'type'], oo[ss]);
			JKIT.CONTACT.__update_contact_info('rep_'+oo[ss+'type']+'_l', ' ' + JKIT.FORMAT.rdf_label(oo[ss+'type']));
		}
		var senddata, ee1a0, txt, ee1, ee1a, dlid, ee1a0a;
		if (JKIT.CONTACT.pvrs)
		{
			/*alert('Organization: ' + JKIT.CONTACT.pvrs.organization);*/
			senddata = 'httprq=1';
			for (sss in JKIT.CONTACT.pvrs)
			{
				senddata += '&' + sss + '=' + JKIT.CONTACT.pvrs[sss];
			}
			
		}else{
			senddata = null;
		}
		JKIT.XMLHTTP.requestGET('/contact/s/contact_form.inc.php', JKIT.XMLHTTP.prq_html, 'contactD', senddata, JKIT.CONTACT.contactform, JKIT.CONTACT.__updatecontactform, true);
	}
}
JKIT.CONTACT.__newcontactobj = function()
{
	var r = new Object();
	r['street'] = null;
	r['fn'] = null;
	r['pobox'] = null;
	r['locality'] = null;
	r['region'] = null;
	r['postalcode'] = null;
	r['tel1'] = null;
	r['tel1type'] = null;
	r['tel2'] = null;
	r['tel2type'] = null;
	r['tel3'] = null;
	r['tel3type'] = null;
	r['email1'] = null;
	r['email2'] = null;
	r['email3'] = null;
	r['org'] = null;
	r['adr1'] = null;
	r['adr2'] = null;
	r['adr3'] = null;
	r['cell'] = null;
	r['cell_l'] = null;
	r['work'] = null;
	r['work_l'] = null;
	r['work2'] = null;
	r['work2_l'] = null;
	r['free'] = null;
	r['free_l'] = null;
	r['fax'] = null;
	r['fax_l'] = null;
	return r;
}
JKIT.CONTACT.__clear_contact_info = function(oo)
{
	var ni, s, e;
	for (s in oo)
	{
		ni = "rep_"+s;
		try{
			e = document.getElementById(ni);
			if (e.childNodes.length > 0){ e.removeChild(e.childNodes[0]) }
			switch(e.nodeName)
			{
				case 'span':
				case 'SPAN':
				case 'attr':
				case 'ATTR':
				e.style.display = 'none';
				break;
				default:
			}
		} catch(e) {}
	}
}
JKIT.CONTACT.__update_contact_info = function(node_id, newtext)
{
	var tn = document.createTextNode(newtext);
	var e = document.getElementById(node_id);
	if (e.childNodes.length > 0){ e.removeChild(e.childNodes[0]) }
	e.appendChild(tn);
	
	switch(e.nodeName)
	{
		case 'span':
		case 'SPAN':
		case 'attr':
		case 'ATTR':
		e.style.display = 'inline';
		break;
		default:
	}
}

JKIT.CONTACT.__updatecontactform = function()
{
	var f = document.forms[JKIT.CONTACT.contactform].region.value = JKIT.CONTACT.region;
	document.forms[JKIT.CONTACT.contactform].mailto.value = JKIT.XML.clean_nodevalue(document.getElementById('rep_email1').firstChild.nodeValue);
	document.forms[JKIT.CONTACT.contactform].repfn.value = document.getElementById('rep_fn').firstChild.nodeValue;
	/*alert(JKIT.CONTACT.pvrs + ' ' + JKIT.CONTACT.pvrs.captcha_pass);*/
	if (JKIT.CONTACT.pvrs)
	{
		if (!JKIT.CONTACT.pvrs.captcha_pass)
		{
			JKIT.CONTACT.data_validate(document.forms[JKIT.CONTACT.contactform], true);				
		}
	}
	window.location.href = '#regionA';
	
}

/*





















*/
