/************************************************************************
*
  Functions for handling Fencepost user login
*
************************************************************************/
function include(scriptFilename) {
    document.write('<' + 'script');
    document.write(' language="javascript"');
    document.write(' type="text/javascript"');
    document.write(' src="' + scriptFilename + '">');
    document.write('</' + 'script' + '>');
}

include("/login/staticfiles/prototype.js");
include("/login/staticfiles/ws.js");

String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}

function submitLogin(form) {
	var login = form.login.value;
	var pwd = form.password.value;

	if ((login != "") && (pwd != "")) {
		var nsuri = 'http://dev.fonterra.com/FencepostLogin';
		var qn_op = new WS.QName('getUserId', nsuri);
		var qn_op_resp = new WS.QName('getUserIdResponse', nsuri);
	
		var call = new WS.Call('/fencepost/FencepostLogin/services/FencepostLoginSOAP');
		call.invoke_rpc (
			qn_op,
			new Array({name:'userName', value:login}),
			null,
			function(call, response, responseXml) {
				var username;
				var startIndex = responseXml.indexOf('<userId>');
				if (startIndex > -1) {
					startIndex += '<userId>'.length;
					var endIndex = responseXml.indexOf('</userId>');
					username = responseXml.slice(startIndex, endIndex);
				} else {
					username = form.login.value;
				}
				
				eraseCookie('PD-S-SESSION-ID');
				eraseCookie('AMWEBJCT!%2F!JSESSIONID');
				eraseCookie('AMWEBJCT!%2Ffencepost%2Fwps%2Fwcm!JSESSIONID');
				eraseCookie('termsandconditions');

				form.username.value = username;                
				form.submit();
			}
		);
	}

	return false;
}

function eraseCookie(name) {
	var date = new Date();
	date.setTime(0);
	document.cookie = name + "=; expires=" + date.toGMTString() + "; path=/";
}