function updateCurrentPageUrlForBuyingDetailsPage() {
	var curPage = document.getElementById("loginForm_currentPage").value;
	console.debug("curPage="+curPage);
	if(new String(curPage).indexOf("productdetails",0) != -1) {
		console.debug("entering");
		
		var currentUrl = curPage 
			+ "&quantity="+document.getElementById("buyingdet_quantity").value 
			+ "&prevMyPoints="+document.getElementById("myMiles").value;
		if(document.getElementById("deliveryDate")) {
			currentUrl += "&deliveryDate="+document.getElementById("deliveryDate").value;
		}
		if(document.getElementById("memberCommentsTx")) {
			currentUrl += "&memberComments="+document.getElementById("memberCommentsTx").value;
		}
		if(document.getElementById("printLabel1")) {
			currentUrl += "&printLabel1="+document.getElementById("printLabel1").value;
		}
		if(document.getElementById("printLabel2")) {
			currentUrl += "&printLabel2="+document.getElementById("printLabel2").value;
		}
		var my_objects = findElementsByCondition("select","name","attrib_");
		for(i=0; i < my_objects.length; i++) {
			console.debug("my_objects.length="+my_objects[i].name);
			if(my_objects[i].value != -1) {
				currentUrl += '&'+my_objects[i].name+'='+my_objects[i].value;
			}
		}
		console.debug("currentUrl="+currentUrl);
		document.getElementById("loginForm_currentPage").value = currentUrl;
		
	} else if(new String(curPage).indexOf("givingdetails",0) != -1) {
	
		var currentUrl = curPage
			+ "&points="+document.getElementById("points").value 
			+ "&confirmationEmail="+document.getElementById("confirmationEmail").value; 
		
		
		var frequency = document.getElementById("oneTime").checked ? 1 : 2;
		currentUrl = currentUrl + "&frequency="+frequency;

		if(document.getElementById("additionalEmail"))
			currentUrl = currentUrl + "&additionalEmail="+document.getElementById("additionalEmail").value;
		
		if(document.getElementById("allMiles"))	{
			var isChecked = document.getElementById("allMiles").checked ? "true" : "false";
			currentUrl = currentUrl + "&allMiles="+isChecked;
		}
			
		document.getElementById("loginForm_currentPage").value = currentUrl;	
	
	} else if(new String(curPage).indexOf("raffledetails",0) != -1) {
	
		var currentUrl = curPage
			+ "&numberOfTickets="+document.getElementById("numberOfTickets").value
			+ "&numberOfPoints="+document.getElementById("numberOfPoints").value
			+ "&confirmationEmail="+document.getElementById("confirmationEmail").value; 
		
		if(document.getElementById("additionalEmail"))
			currentUrl = currentUrl + "&additionalEmail="+document.getElementById("additionalEmail").value;
		
		document.getElementById("loginForm_currentPage").value = currentUrl;	
	}	
}

function findElementsByCondition (object_type,attribute,condition){
	var all = document.getElementsByTagName(object_type); // select all elements that have the TagName object_type and are children of the element you uses this method on
	var res = []; // preparing result array
	for (var i=0; i<all.length; i++){ // do the following for all found elements
		var obj = all[i]; // assignment is just done to avoid dynamic attribute addressing issues with IE...hope it helps
		if (obj.nodeType==1 && obj[attribute]!=undefined && new String(obj[attribute]).indexOf(condition) != -1){
			res.push(obj);
		}//any object of the certain type whose certain attribute matches the given condition is added to the result
	}
	return res;//result array is returned
}

function checkForSubmit(e) {
	try {
		if(e.keyCode == 13) {
			setTimeout('submitLoginForm()', 300);
			return false;
		} else {
			// set timeout to check if password got set using autocomplete
		}
	} catch (err) {
	  // alert('checkForSubmit()-->' + err.message);
	}
}

function checkAutoFilledText() {
	var usernameFieldElem = document.getElementById('usernamefield');
	if (usernameFieldElem && usernameFieldElem.value != "") {
		document.getElementById(usernameFieldElem.id+"label").style.textIndent = "-9999px";
	}
	var usernamePasswdElem = document.getElementById('passwordfield');
	if (usernamePasswdElem && usernamePasswdElem.value != "") {
		document.getElementById(usernamePasswdElem.id+"label").style.textIndent = "-9999px";
	}
	var usernameoFieldElem = document.getElementById('usernamefieldo');
	if (usernameoFieldElem && usernameoFieldElem.value != "") {
		document.getElementById(usernameoFieldElem.id+"label").style.textIndent = "-9999px";
	}
	var usernameoPasswdElem = document.getElementById('passwordfieldo');
	if (usernameoPasswdElem && usernameoPasswdElem.value != "") {
		document.getElementById(usernameoPasswdElem.id+"label").style.textIndent = "-9999px";
	}
}

var initializedLoginForm = false;
function initializeLoginForm() {
	try {
		if (!initializedLoginForm) {
			initializedLoginForm = true;
			var usernameFieldElem = document.getElementById('usernamefield');
			var usernamePasswdElem = document.getElementById('passwordfield');
			var usernameoFieldElem = document.getElementById('usernamefieldo');
			var usernameoPasswdElem = document.getElementById('passwordfieldo');
			var nameFields = new Array();
			var passFields = new Array();
			if (usernameFieldElem) {
				nameFields[0] = usernameFieldElem;
				passFields[0] = usernamePasswdElem;
			}
			if (usernameoFieldElem) {
				nameFields[1] = usernameoFieldElem;
				passFields[1] = usernameoPasswdElem;
			}
			for (var i=0; i<nameFields.length; i++) {
				uNameField = nameFields[i];
				uNameField.onfocus = function () {
					document.getElementById(this.id+"label").style.textIndent = "-9999px";
				};
				uNameField.onblur = function () {
					if(this.value == "") {
						document.getElementById(this.id+"label").style.textIndent = "0px";
					} else {
						if (this.id == 'usernamefield') {
							var pfield = document.getElementById('passwordfield');
							if (pfield.value != "") {
								document.getElementById("passwordfieldlabel").style.textIndent = "-9999px";
							}
						} else if (this.id == 'usernamefieldo') {
							var pofield = document.getElementById('passwordfieldo');
							if (pofield.value != "") {
								document.getElementById("passwordfieldolabel").style.textIndent = "-9999px";
							}
						}
					}
				};
				var fieldId = uNameField.id;
				if(uNameField.value == "") {
					document.getElementById(fieldId+"label").style.textIndent = "0px";
				} else {
					document.getElementById(fieldId+"label").style.textIndent = "-9999px";
				}
			}
			for (i=0; i<passFields.length; i++) {
				passField = passFields[i];
				passField.onfocus = function() {
					document.getElementById(this.id+"label").style.textIndent = "-9999px";
				};
				passField.onblur = function () {
					if(this.value == "") {
						document.getElementById(this.id+"label").style.textIndent = "0px";
					}
				};
				var passFieldId = passField.id;
				if(passField.value == "") {
					document.getElementById(passFieldId+"label").style.textIndent = "0px";
				} else {
					document.getElementById(passFieldId+"label").style.textIndent = "-9999px";
				}
			}
			window.setTimeout(checkAutoFilledText, 2000);
		}
	} catch(err) {
	}
}

function submitLoginForm() {
	
	try {
		var userNameDefaultText = document.getElementById('login.user.name').value;
		var userPasswordDefaultText = document.getElementById('common.label.password').value;
		var emptyUserNameText =  document.getElementById('login.empty.username').value;
		var emptyPasswordText =  document.getElementById('login.empty.password').value;
		var usernameInputElem = document.getElementById("usernamefield");
		var userpasswordInputElem = document.getElementById("passwordfield")
		var messageFieldElem = document.getElementById("messageFieldTD");
		if (trim(usernameInputElem.value) == ''|| trim(usernameInputElem.value) == userNameDefaultText) {
			messageFieldElem.innerHTML = emptyUserNameText;
			document.getElementById('errorMessageID').style.display = 'block';
			usernameInputElem.focus();
			return false;
		} else if (trim(userpasswordInputElem.value) == '') {
			messageFieldElem.innerHTML = emptyPasswordText;
			document.getElementById('errorMessageID').style.display = 'block';
			userpasswordInputElem.focus();
			return false;
		} else {
			document.getElementById("loginButton").disabled = true;
			showActivityIndicatorDialog(document.getElementById('common.msg.login.loading').value, true);
			document.loginForm.currentPage.value = document.location.href;
			updateCurrentPageUrlForBuyingDetailsPage();
			submitStorefrontForm('loginForm', 'login', true);
			usernameInputElem.disabled = true;
			userpasswordInputElem.disabled = true;
		}
	} catch (err) {
		//  alert('submitLoginForm()-->' + err.message);
	}
}

