
var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
try {
	xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
	try {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	} catch (E) {
		xmlhttp = false;
  	}
}
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  xmlhttp = new XMLHttpRequest();
}
var boundary = "AaB03x";
function postDoc(fragment_url, element_id, met, qStr) {
    var element = document.getElementById(element_id);
    element.innerHTML = 'Connecting to server...';
    switch (met) {
	case "GET":
		xmlhttp.open("GET", fragment_url);
		break;
	case "POST":
		xmlhttp.open("POST", fragment_url,true);
		xmlhttp.setRequestHeader("Content-Type","multipart/form-data; boundary="+boundary);
		xmlhttp.setRequestHeader("charset", "UTF-8");
		break;
    }
	xmlhttp.onreadystatechange = function() {
		//xmlhttp.setRequestHeader("Accept-Charset", "UTF-8");
		if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			element.innerHTML = xmlhttp.responseText;
		}
	}
	xmlhttp.send(qStr);
}
function setBody(element) {
	var body = '';
	if (element) {
		body += '--' + boundary + '\r\n';
		body += 'Content-Disposition: form-data; name="' + element.name + '"' + '\r\n\r\n';
		body += element.value + '\r\n';
	}
	
	return body;
}
function setBodyMulti(n,v) {
	var body = '';
	body += '--' + boundary + '\r\n';
	body += 'Content-Disposition: form-data; name="' + n+ '"' + '\r\n\r\n';
	body += v + '\r\n';
	return body;
}
function writeDoc(message, element_id) {
	var element = document.getElementById(element_id);
	var preHtml="<div class='clearer'></div>"
	element.innerHTML = preHtml+message;
}

/* ------------------- */

function GetCheckBoxRadioQstr(ele) {
	if (ele.checked) {
		var str=ele.name+"="+encodeURIComponent(ele.value)
	}
	return str
}
function GetSelectQstr(ele) {
	var body=''
	with (ele) {
		for (var i=0;i<options.length;i++) {
			if (options[i].selected==true) {
				body += setBodyMulti(ele.name,options[i].value)
			}
		}
	}
	return body;
}
function GetTextQstr(ele) {
	with (ele) {
		var str=name+"="+encodeURIComponent(value)
	}
	return str
}
function makePostQstr(theForm) {
	var body='';
	var arr=new Array()
	with (theForm) {
		for (var i=0; i < elements.length; i++) {
			//alert(elements[i].type)
			switch (elements[i].type) {
				case 'checkbox':
					if (elements[i].checked) {
						body += setBody(elements[i])
					}
					break;
				case 'radio':
					if (elements[i].checked) {
						body += setBody(elements[i])
					}
					break;
				case 'select-one':
					body += GetSelectQstr(elements[i])
					break;
				case 'select-multiple':
					body += GetSelectQstr(elements[i])
					break;
				default:
					body += setBody(elements[i])
			}
		}
	}
	body += "--" + boundary + "--"; //end of body
	return body;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - - */

// EMAIL address check
var mess=new Object();
function emailCheck(em) {
	mess.invalid=new Object();
	mess.invalid.eng="Invalid email address"
	mess.invalid.jp="無効なメール･アドレス"
	mess.invalid.jp="Adresse email non valide"
	var lang="eng"
	var ml=em.value
	var emailreg=/^[0-9a-zA-Z_]+(\.*[a-zA-Z0-9_\-]+)*@[a-zA-Z0-9_\-]+(\.*[a-zA-Z0-9_\-]+)*\.[a-zA-Z_]+$/gi
	if (emailreg.test(ml)) {
		return true
	}
	else {
		alert(mess['invalid'][lang])
		return false
	}
}

function Fr_add_end(ele) {
	bool=(ele.checked)?true:false;
	if (bool) {
		document.forms.myFr.subAction.value='add'
	}
}

/* -------------------------------------- */

function sendMess(theForm, scriptURL,divid) {
	//window.location="#box";
	var str=makePostQstr(theForm);
	postDoc(scriptURL, divid, "POST", str);
}


function faceBoxAjax(uri) {
	alert(uri);
	jQuery.facebox(function() {
		jQuery.get(uri, function(data) {
			jQuery.facebox(data);
		});
	});
}
