// NOTE: [Must this JS loaded as last item]
	
	
	// ===============================================================
	// Change Password Request - Part.A-1
	// ===============================================================		
	function CUS_ADMIN_CHANGE_PASSWORD(ROW_INDEX)
	{
		// Cannot edit system admin password using this feature
		if(JSVC_NUM.VAR_NVALL(MEMBER_DGV.CELL.VALUE('ACC_ACCOUNT_SYSTEM_GENERATED', ROW_INDEX)) == 2)
		{
			JSOC_DIALOG.VAR_MESSAGE_BOX
			(
				"[System Admin Accounts] passwords are not editable from here.", 
				"Change Password",
				"OK",
				"WARNING",
				function(){}
			);
			return;
		}
		
		// Assign New Password
		JSOC_DIALOG.VAR_INPUT_BOX
		(
			'New Password for [' + MEMBER_DGV.CELL.VALUE('ACC_ACCOUNT_USERNAME', ROW_INDEX) + ']', 
			'Change Password', 
			'',
			true,
			function(NEW_PASSWORD, IS_SUCCESS)
			{
				// Abort if none is given 
				if(IS_SUCCESS == false || JSVC_STR.VAR_IS_BLANK(NEW_PASSWORD, true))
				{
					return;
				}			
					
				// Ask Confirm-Password
				JSOC_DIALOG.VAR_INPUT_BOX
				(
					'Confirm New Password for [' + MEMBER_DGV.CELL.VALUE('ACC_ACCOUNT_USERNAME', ROW_INDEX) + ']', 
					'Change Password', 
					'',
					true,
					function(CONFIRM_NEW_PASSWORD, IS_SUCCESS)
					{
						if(IS_SUCCESS == true && JSVC_STR.VAR_IS_BLANK(CONFIRM_NEW_PASSWORD, true) == false)
						{
							if(CONFIRM_NEW_PASSWORD != NEW_PASSWORD)
							{
								JSOC_DIALOG.VAR_MESSAGE_BOX
								(
									"Confirm Password does not match.", 
									"Change Password",
									"OK",
									"WARNING",
									function(){}
								);
							}
							else
							{
								var SAVE_MAP_ARRAY = JSCUS_SQL._ACCOUNT._MEMBER.CUS_PREPARE_MAPPED_ARRAY_FOR_SAVE();
								SAVE_MAP_ARRAY["PARAM_ACC_ACCOUNT_ID"] = JSVC_NUM.VAR_NVALL(MEMBER_DGV.CELL.VALUE('ACC_ACCOUNT_ID', ROW_INDEX));
								SAVE_MAP_ARRAY["PARAM_ACC_ACCOUNT_PASSWORD"] = NEW_PASSWORD;
								
								JSOC_DIALOG.VAR_LOADING_SPINNER(true);	
								JSCUS_SQL._ACCOUNT._MEMBER.CUS_SAVE
								(
										SAVE_MAP_ARRAY,
										CUS_ADMIN_CHANGE_PASSWORD_RESULT
								);	
							}
						}
					}
				);	
			}
		);				
	}
	
	
	// ===============================================================
	// Change Password Request - Part.E
	// ===============================================================	
	function CUS_ADMIN_CHANGE_PASSWORD_RESULT(IS_SUCCESS, RESPONSE_STRING)
	{		
		// Dismiss Progress Bar
		// _______________________________________________________________________
		CUS_SEND_DIALOG_TRY_DISMISS();
		
		// Initialize
		// _______________________________________________________________________
		var REQUEST_CALLBACK = JSCUS_SQL._ACCOUNT._LOGIN.CACHE_CALLBACK;
		JSCUS_SQL._ACCOUNT._LOGIN.CACHE_CALLBACK = null;
		
		// Abort on connection failure.
		// _______________________________________________________________________
		if(IS_SUCCESS === false)
		{
			JSOC_DIALOG.VAR_MESSAGE_BOX
			(
				"CONNECTION ERROR: " + "Try again later.", "Change Password",
				"OK", "ERROR",
				function(){}
			);
			return;
		}
		
		
		// Initialize JSON
		// _______________________________________________________________________
		var JSON_OBJECT = JSRC_JSON.REF_CREATE(RESPONSE_STRING);
		
		
		// Abort on Server Failure
		// _______________________________________________________________________
		if(JSRC_JSON.REF_IS_SUCCESS(JSON_OBJECT) === false)
		{
			console.log(RESPONSE_STRING);
			JSOC_DIALOG.VAR_MESSAGE_BOX
			(
				"SERVER ERROR", "Change Password",
				"OK", "ERROR",
				function(){}
			);
			return;	
		}
		
		// Success
		// _______________________________________________________________________
		JSOC_DIALOG.VAR_MESSAGE_BOX
		(
			"Password Successfully Changed", "Change Password",
			"OK", "INFO",
			function(){}
		);
		return;
	}	