/*
'Author					: Sonja Goosen
'Date Created			: 19-Apr-2005
'Last Changed by		: Sonja Goosen
'Date Changed			: 25-Jul-2006
'Version				: 2.0.25072006
'Comments:
'Date:			Desc:															
'---------------------------------------------------------------------------------------------
'26-Apr-2005	Change user add edit to use grid
'25-Jul-2006	Changed the password back sync after update for md5 hashing.

'ToDoList:
'Date:		Desc:															Status:
'--------------------------------------------------------------------------------------------
*/
//==========================Dynamic fill page=======================================

var userAdmin_SEC_FILL_PAGE = "bin/commoncomponents/fill/Security/Security_dofill_dynamic.asp"

//==========================Dynamic fill page=======================================

//==========================Add Users=======================================

//Display the user details for editing
function user_showUserDetail(userID){

	var setDivHtml = function(oXML) {
		var returnVal = oXML.responseText				
		document.all("DetailEditUser").innerHTML = returnVal			
		regularCursor();
	}
	
	//show or hide site shuffle
	if (userID == 0) {
		document.all("tblShufflerUser").style.display = "none"
	}
	else {
		document.all("tblShufflerUser").style.display = "block"
	}
	
	var page = "modules/users/UserDetail.asp"
	var data = "submit=true&userID=" + userID
	hiddenSubmit(page,data, setDivHtml, 0, null,null, false)	
}

//Add or update the user details
function user_updateUserDetail(userID){

	var setDivHtml = function(oXML) {	
		var returnVal = oXML.responseText
		if (returnVal.substr(0,5) == "ERROR") {
			alert(returnVal)
		}
		else {
			//portal_reloadUserGrid()
			alert("Successfully updated the user details!");
			/*//Commented out when using user grid
			document.all("DetailEditUesr").innerHTML = returnVal
			
			//hide site shuffle
			document.all("tblShufflerUser").style.display = "none"
			
			//Reload listbox		
			var listbox = frmMain.selUser
			proc = "proc_PortalAdmin_GetUsers null, null, null "
			fillListBoxSql(listbox, proc, "UserID", "DisplayName", userAdmin_SEC_FILL_PAGE, "-- ADD NEW USER --") 			
			*/	
		}
		regularCursor();
	}
	
	if (user_checkUserDataValid()) {		
		var activeBit
		if (document.frmDetailUser.chkActive.checked) {
			activeBit = "1"
		} else {
			activeBit = "0"	
		}
		
		var page = "modules/users/UserDetail.asp"
		var	data = "submit=true&action=update&" + fetchInputFormData("frmDetailUser") + "&userID=" + userID	
		hiddenSubmit(page,data, setDivHtml, 0, null,null, false)
	}
				
}
//Added by Pieter Le Roux 14 Sep 2005
function user_updateMyUserDetail(userID){

	var setDivHtml = function(oXML) {	
		var returnVal = oXML.responseText		
		if (returnVal.substr(0,5) == "ERROR") {
			alert(returnVal)
		}
		else {
			document.frmDetailUser.all("txtnewPassword").value = ""
			document.frmDetailUser.all("txtconfPassword").value = ""
			alert("Successfully edited the user details!");
			//portal_reloadUserGrid()
			
			/*//Commented out when using user grid
			document.all("DetailEditUesr").innerHTML = returnVal
			
			//hide site shuffle
			document.all("tblShufflerUser").style.display = "none"
			
			//Reload listbox		
			var listbox = frmMain.selUser
			proc = "proc_PortalAdmin_GetUsers null, null, null "
			fillListBoxSql(listbox, proc, "UserID", "DisplayName", userAdmin_SEC_FILL_PAGE, "-- ADD NEW USER --") 			
			*/	
		}
		regularCursor();
	}
	
	if (user_checkUserDataValid()) {		
		//Commented Out by Pieter Le Roux 14 Sep 2005. Code holds no value.
		/*var activeBit
		if (frmDetailUser.chkActive.checked) {
			activeBit = "1"
		} else {
			activeBit = "0"	
		}*/
		var cont = true
		if (document.frmDetailUser.all("txtnewPassword").value.Trim() != "" && document.frmDetailUser.all("txtconfPassword").value.Trim() != "") {
			if (document.frmDetailUser.all("txtnewPassword").value.Trim() != document.frmDetailUser.all("txtconfPassword").value.Trim()){
				alert("Your new password does not match the password you re-typed in the confirmation box!");
				cont = false;
			}
			else {
				//there is something typed into the password boxes and they match
				/*Removed this on 25-Jul-2006*/
				//document.frmDetailUser.all("txtPassword").value = document.frmDetailUser.all("txtnewPassword").value.Trim()
				cont = true;		
			}
		}
		else {
			//there is nothing typed into the password boxes
			cont = true;
		}
		if (cont){
			var page = "modules/users/myUserDetail.asp"
			var	data = "submit=true&action=update&" + fetchInputFormData("frmDetailUser") + "&userID=" + userID
			alert(data);
			hiddenSubmit(page,data, setDivHtml, 0, null,null, false)
		}
	}
				
}

//Validate user input and return true if valid
function user_checkUserDataValid() {
	var valid = true
	//alert("");
	var firstname = document.frmDetailUser.txtFirstname.value.trim()

	if (firstname == "") {
		valid = false
		alert("Please enter a first name.")
	}
	else {
		var surname = document.frmDetailUser.txtSurname.value.trim()
		if (surname == "") {
			valid = false
			alert("Please enter a surname.")
		}
		else {
			var email = document.frmDetailUser.txtEmail.value.trim()
			if (!isValidEmail(email)) {
				valid = false
				alert("Please enter a valid email address.")
			}
			else {
				var password = document.frmDetailUser.txtPassword.value.trim()
				if (password == ""){
					valid = false
					alert("Please enter a password!");
				}
			}	
		}
	}
	
	return valid	
}


//Reload the User grid
function portal_reloadUserGrid(){
	var compID = document.frmUserGrid.sendercomponent.value
	checkAction("submitShieldUserDetail",compID,"frmUserGrid",false,null)
}

//=========================END OF Add Users================================



