/* --------------------------------------------
 *
 * _pages.js
 * Javascripts for Authentication and Authorization
 *
 * Authors: TOT
 * Authors: SABER
 * Authors: Lersak Limwiwatkul
 *
 * --------------------------------------------
 * 
 * THIS  SOURCE CODE   AND  DOCUMENTATION   IS   PROVIDED "AS IS," 
 * AND COPYRIGHT  HOLDERS MAKE NO REPRESENTATIONS  OR  WARRANTIES, 
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT  LIMITED TO,  WARRANTIES 
 * OF MERCHANTABILITY   OR   FITNESS  FOR  ANY PARTICULAR PURPOSE 
 * OR  THAT THE USE OF THE SOFTWARE   OR   DOCUMENTATION WILL NOT 
 * INFRINGE  ANY   THIRD PARTY   PATENTS, COPYRIGHTS,  TRADEMARKS 
 * OR OTHER RIGHTS.
 * 
 * COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, 
 * SPECIAL OR CONSEQUENTIAL  DAMAGES  ARISING  OUT OF  ANY USE OF 
 * THE SOFTWARE OR DOCUMENTATION.
 *
 * The name and trademarks of copyright holders may NOT be used in 
 * advertising or publicity pertaining to the software without 
 * specific, written prior permission. Title to copyright in this 
 * software and any associated
 *
 * --------------------------------------------
 *
 */

/*
 *
 * Service Authentication Provider
 * Delimeter for Proxy Radius
 *
 */
var AAADelimeter = "%";

/* ---------------------
 *
 * Initialize
 *
 * -------------------- */

function totinit() {

	/* Focus on username */
	document.authenticateForm.login.focus();

}

/* ---------------------
 *
 * Submit and Reset
 *
 * -------------------- */

/* 
 * loginSubmit : Submit Authentication function
 */
function loginSubmit() {

	try {
		var unameText = document.authenticateForm.login;
		var pnameText = document.authenticateForm.password;
		var providerSelect = document.authenticateForm.provider;

		// Append select provider for authentication
		if (providerSelect.value == "") {
			var UserName = unameText.value;			
		} else {
			var UserName = unameText.value + AAADelimeter + providerSelect.value;
		}
		// alert ('User:\t\t'+unameText.value+'\r\n'+'Password:\t'+pnameText.value+'\r\n'+'Provider:\t\t'+providerSelect.value+'\r\n'+'User & All:\t'+UserName);
	
		// Submit for processing
		document.authenticateForm.username.value = UserName;
		document.authenticateForm.password.value = pnameText.value;
		// alert ('Form\r\nUser:\t\t'+document.authenticateForm.username.value+'\r\n'+'Password:\t'+document.authenticateForm.password.value+"\r\n");
	
	} catch (e) {
		// alert(e + "\r\nDescription: "+e.description+"\r\nName: "+e.name+"\r\nMessage: "+e.message);
	}
}

/* ---------------------
 *
 * Yes and No
 *
 * -------------------- */

function yesSubmit() {
	document.forms[0].submit();
}

function cancelSubmit(url) {
	document.location = url;
}

/* ---------------------
 *
 * Event Handler
 *
 * -------------------- */

/* Login Enter keypress */
function loginCheckEnter(e) {
	var characterCode;

	/* Netscape and Mozilla */
	if (e && e.which) {
		e = e;
		characterCode = e.which;
	} 
	/* Internet Explorer */
	else {
		e = event;
		characterCode = e.keyCode
	}

	/* If key press, submit this form */
	if (characterCode == 13) {
		loginSubmit();
		yesSubmit();
	}
}

/* Enter keypress */
function checkEnter(e) {
	var characterCode;

	/* Netscape and Mozilla */
	if (e && e.which) {
		e = e;
		characterCode = e.which;
	} 
	/* Internet Explorer */
	else {
		e = event;
		characterCode = e.keyCode
	}

	/* If key press, submit this form */
	if (characterCode == 13) {
		yesSubmit();
	}
}

/* ---------------------
 *
 * Image function
 *
 * -------------------- */

/* Javascript helper function */
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

