/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

// google analytics code

/*
function googleAnalytics() {
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    var pageTracker = _gat._getTracker("UA-4597099-2");
    pageTracker._trackPageview();
}
 */

/*
function soundReady() {
    //alert('sound ready');
    soundManager.createSound('ding','/resources/DING.wav');
    isSoundReady = true;
}
 */
isSoundReady = false;
// general section
function handleOnLoad() {
    //googleAnalytics(); 
    //handleNewsOnLoad();
    //soundManagerInit();
    handleHelpOnLoad();
    handleSessionAlertsOnLoad(); 
    orgAutoCompPanel = document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList');
    if (orgAutoCompPanel) {
        orgAutoCompPanel.hide();
    }
}

function handleOnUnload() {
    //googleAnalytics();
    //handleNewsOnUnload();
    handleHelpOnUnload();
    handleSessionAlertsOnUnload();
}

/** 
 * For each id suffix in suffixArr, extract any nodes within the supplied element having that id suffix.
 * Then replace the corresponding existing nodes in the page with the extracted nodes.
 * @param element The parent node from which to extract nodes with the specified suffixes. Here, element will be a new form1:openPositionZone:openPositionTable node.
 * @param suffixArr An array containing the id suffixes of nodes to extract from element and subsequently use for replacement.
 */
function replaceNodesByIdSuffix(element, suffixArr) {
    for (var i = 0; i < suffixArr.length; i++) {
        var nodeArr = [];

        //look for nodes in element whose id ends with suffixArr[i], and append those nodes to nodeArr
        findNodesByIdSuffix(element, suffixArr[i], nodeArr);

        //replace existing nodes in the page with corresponding nodes in nodeArr
        replaceNodes(nodeArr);
    }
}

/**
 * Search element and its children for nodes whose id ends with suffix, and append those nodes to nodeArr.
 * @param element The element to search.
 * @param suffix The id suffix for which to search.
 * @param nodeArr The array to which we append nodes.
 */
function findNodesByIdSuffix(element, suffix, nodeArr) {
    if (element.id) {
        if (endsWith(element.id, suffix)) {
            nodeArr.push(element);
        }
    }
    if (element.hasChildNodes()) {
        for (var i = 0; i < element.childNodes.length; i++) {
            findNodesByIdSuffix(element.childNodes[i], suffix, nodeArr);
        }
    }
}

/**
 * Replace existing nodes in the page with the corresponding nodes from the supplied nodeArr.
 * @param nodeArr The array of nodes.
 */
function replaceNodes(nodeArr) {
    for (var i = 0; i < nodeArr.length; i++) {
        //find the corresponding existing node in the page, namely, the one whose id is the same as nodeArr[i].id
        var correspNode = document.getElementById(nodeArr[i].id);
        if (!correspNode) {
            continue;
        }

        //replace the existing node in the page with nodeArr[i]
        correspNode.parentNode.replaceChild(nodeArr[i], correspNode);
    }
}

/** 
 * Determine if the supplied str ends with the supplied suffix.
 * @param str The full string.
 * @param suffix The suffix that str might end with.
 * @return True if str ends with suffix, false otherwise.
 */
function endsWith(str, suffix) {
    var start = str.length - suffix.length;
    if (start < 0) {
        return false;
    }
    return str.substring(start) == suffix;
}

// news section
var newsPollDelay = 60000;
var continueNewsPolling = false;


function handleNewsOnLoad() {
    
    //start polling
    continueNewsPolling = true;
    poll();
}

function handleNewsOnUnload() {
    //stop polling
    continueNewsPolling = false;
}


function poll() {
    //fire the newsTx Ajax Transaction
    if (continueNewsPolling) {
        DynaFaces.Tx.config['newsTx'].inputs = [];
        DynaFaces.Tx.config['newsTx'].execute = [];
        DynaFaces.Tx.config['newsTx'].render = ['form1:RightBar:rightPaneOverlay:ebayAdPanel:newsText'];
        DynaFaces.Tx.fire('newsTx');
        setTimeout("poll()",newsPollDelay);
    }
}

function customPostReplaceForNewsTx(element, markup) {
    
    
    
}

function customReplaceForNewsTx(element, markup) {
    //alert("hello");
    var newsTextElement = document.getElementById(element);
    
    if (newsTextElement) {
        var newsText = newsTextElement.value;
        //alert("newsText :: "+newsText);
        var newsScroller = document.getElementById('newsScroller');

        newsScroller.innerHTML = newsText;
    }
    
    element = '_'+element;
    Element.replace(element, markup);
    
}


// user management functions
function customPostReplaceForLoginAjaxTx(element, markup) {
    //alert('post replace');
    // set isLoginAjax hidden field to false after ajax is served
    document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:isLoginAjax').value = "false";
}

function customReplaceForLoginAjaxTx(element, markup) {
    element = '_'+element;
    Element.replace(element, markup);
}

function interceptLoginIdWriting() {
    //if the text field is not blank, fire loginAjaxTx
    
    if (document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:loginId').value != '') {

        // set isLoginAjax hidden field to true
        document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:isLoginAjax').value = "true";
        //isLoginAjax.textContent = "true";
        
        
        DynaFaces.Tx.config['loginAjaxTx'].inputs = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:loginId','form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:isLoginAjax'];
        DynaFaces.Tx.config['loginAjaxTx'].execute = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:loginId','form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:isLoginAjax'];
        DynaFaces.Tx.config['loginAjaxTx'].render = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:loginIDAvailability'];

        DynaFaces.Tx.fire('loginAjaxTx');
    }
    
    return true;
}


function customPostReplaceForOrganizationAutoComplete(element, markup) {
    //alert('1');
    document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:isOrganizationAjax').value = "false";
}

function customReplaceForOrganizationAutoComplete(element, markup) {
    //alert(element);
    //alert(markup);
    //element = '_'+element;
    //Element.replace(element, markup);
    var elementPic = $(element);  
    //alert(elementPic);   
    var extractedNewHTML = markup.gsub(/[\f\r\n\v]/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/.*value\"\:\"/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    //alert("extractedNewHTML 1 "+extractedNewHTML);
    extractedNewHTML = extractedNewHTML.gsub(/\"\,\".*\}\)\;.*/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    //alert("extractedNewHTML 2 "+extractedNewHTML);
        

    extractedNewHTML = extractedNewHTML.gsub(/.*CDATA\[/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    //alert("extractedNewHTML 3 "+extractedNewHTML);
    extractedNewHTML = extractedNewHTML.gsub(/\/\/\]\]\>/,'').strip();        
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/\\n/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/\\/,'').strip();
    extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
    //alert("extractedNewHTML 4 "+extractedNewHTML);
    orgAutoCompPanel = document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList');
    if (orgAutoCompPanel) {
        if (extractedNewHTML != '') {
            orgAutoCompPanel.show();    
        }
        else {
            orgAutoCompPanel.hide();    
        }
    }
    if (elementPic) {
      elementPic.innerHTML = extractedNewHTML;
    }
}

function interceptOrganizationWriting() {
    orgAutoCompPanel = document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList');
    if (orgAutoCompPanel) {
      orgAutoCompPanel.hide();
    }
    document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:isOrganizationAjax').value = "true";
    
    DynaFaces.Tx.config['organizationAutoComplete'].inputs = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organization','form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:isOrganizationAjax'];
    DynaFaces.Tx.config['organizationAutoComplete'].execute = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organization','form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:isOrganizationAjax'];
    DynaFaces.Tx.config['organizationAutoComplete'].render = ['form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList'];

    DynaFaces.Tx.fire('organizationAutoComplete');
        
    return true;
}

function setOrganizationField(selectedOrg) {
    //alert(selectedOrg);
    document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organization_field').value = selectedOrg;
    orgAutoCompPanel = document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList');
    if (orgAutoCompPanel) {
      orgAutoCompPanel.hide();
    }
}

function hideOrganizationList() {
    orgAutoCompPanel = document.getElementById('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:organizationAutocompleteList');
    if (orgAutoCompPanel) {
      orgAutoCompPanel.hide();
    }
}

// help screen functions
var helpChatPollDelay = 5000;
var continueHelpChatPolling = false;

function helpSendButtonClicked() {
    if (document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment').value != '') {
        fillHelpLoggedUsersHiddenList();
        DynaFaces.Tx.config['helpSendTx'].inputs = ['form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpSendButton','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsersHiddenList','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpUploadedFile'];
        DynaFaces.Tx.config['helpSendTx'].execute = ['form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpSendButton','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsersHiddenList','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpUploadedFile'];
        DynaFaces.Tx.config['helpSendTx'].render = ['form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript'];
        DynaFaces.Tx.fire('helpSendTx');
        //alert("hello");
    }
}

function helpExitButtonClicked() {
    var userEmailAddress = $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpUserEmailAddress').value;
    var confirmSendingEmail = confirm("Do you want the Transcript to be emailed to you?");
    //alert("confirmSendingEmail :: "+confirmSendingEmail);
    if (confirmSendingEmail) {
        if (userEmailAddress == 'unknown') {
            while(true) {
                userEmailAddress = prompt("Your email Address is not on our record, please provide","unknown");
                if (userEmailAddress == 'unknown') {
                    alert("Since you have not provided your EmailId, we'll not be able to email the Transcript to you.");
                    break;
                }
                else {
                    //Check if email is in valid format
                    var emailFormatOk = emailCheck(userEmailAddress);
                    if (emailFormatOk) {
                        $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpConfirmEmailSending').value = 'true';
                        $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpUserEmailAddress').value = userEmailAddress;
                        break;
                    }
                    else {
                        alert('Email Format is not Ok. Please try again');
                    }
                }
            }
        }
        else {
            $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpConfirmEmailSending').value = 'true';
        }
    }
}

function emailCheck (emailStr) {
    /* The following pattern is used to check if the entered e-mail address
   fits the user@domain format.  It also is used to separate the username
   from the domain. */
    var emailPat=/^(.+)@(.+)$/
    /* The following string represents the pattern for matching all special
   characters.  We don't want to allow special characters in the address. 
   These characters include ( ) < @ , ; : \ " . [ ]    */
    var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
    /* The following string represents the range of characters allowed in a 
   username or domainname.  It really states which chars aren't allowed. */
    var validChars="\[^\\s" + specialChars + "\]"
    /* The following pattern applies if the "user" is a quoted string (in
   which case, there are no rules about which characters are allowed
   and which aren't; anything goes).  E.g. "jiminy cricket"@disney.com
   is a legal e-mail address. */
    var quotedUser="(\"[^\"]*\")"
    /* The following pattern applies for domains that are IP addresses,
   rather than symbolic names.  E.g. joe@[123.124.233.4] is a legal
   e-mail address. NOTE: The square brackets are required. */
    var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
    /* The following string represents an atom (basically a series of
   non-special characters.) */
    var atom=validChars + '+'
    /* The following string represents one word in the typical username.
   For example, in john.doe@somewhere.com, john and doe are words.
   Basically, a word is either an atom or quoted string. */
    var word="(" + atom + "|" + quotedUser + ")"
    // The following pattern describes the structure of the user
    var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
    /* The following pattern describes the structure of a normal symbolic
   domain, as opposed to ipDomainPat, shown above. */
    var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")


    /* Finally, let's start trying to figure out if the supplied address is
   valid. */

    /* Begin with the coarse pattern to simply break up user@domain into
   different pieces that are easy to analyze. */
    var matchArray=emailStr.match(emailPat)
    if (matchArray==null) {
        /* Too many/few @'s or something; basically, this address doesn't
     even fit the general mould of a valid e-mail address. */
	alert("Email address seems incorrect (check @ and .'s)")
	return false
    }
    var user=matchArray[1]
    var domain=matchArray[2]

    // See if "user" is valid 
    if (user.match(userPat)==null) {
        // user is not valid
        alert("The part of your email address before the '@' doesn't seem to be valid.")
        return false
    }

    /* if the e-mail address is at an IP address (as opposed to a symbolic
   host name) make sure the IP address is valid. */
    var IPArray=domain.match(ipDomainPat)
    if (IPArray!=null) {
        // this is an IP address
        for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
	        alert("Destination IP address is invalid!")
		return false
	    }
        }
        return true
    }

    // Domain is symbolic name
    var domainArray=domain.match(domainPat)
    if (domainArray==null) {
	alert("Part of your email address after the '@' doesn't seem to be valid")
        return false
    }

    /* domain name seems valid, but now make sure that it ends in a
   three-letter word (like com, edu, gov) or a two-letter word,
   representing country (uk, nl), and that there's a hostname preceding 
   the domain or country. */

    /* Now we need to break up the domain to get a count of how many atoms
   it consists of. */
    var atomPat=new RegExp(atom,"g")
    var domArr=domain.match(atomPat)
    var len=domArr.length
    if (domArr[domArr.length-1].length<2 || 
        domArr[domArr.length-1].length>6) {
        // the address must end in a two letter or other TLD including museum
        alert("The address must end in a top level domain (e.g. .com), or two letter country.")
        return false
    }

    // Make sure there's a host name preceding the domain.
    if (len<2) {
        var errStr="This address is missing a hostname!"
        alert(errStr)
        return false
    }

    // If we've got this far, everything's valid!
    return true;
}


function helpCommentKeyDown(event) {
    if (document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment').value != '') {
        //alert("event :: "+event);
        //alert("keyCode :: "+event.keyCode);
        if (event.keyCode == 13) {
            helpSendButtonClicked();  
        }
    }
}

function helpUploadFileButtonClicked() {
    fillHelpLoggedUsersHiddenList();
}

function handleHelpOnLoad() {
    //start polling
    continueHelpChatPolling = true;
    pollHelp();
}

function handleHelpOnUnload() {
    //stop polling
    
    if (observerAdded == true) {
        //alert('removed');
        Event.stopObserving('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment', 'keypress', helpCommentKeyDown);
        observerAdded = false;
    }
    continueHelpChatPolling = false;
    fireItNow = false;
} 

var observerAdded = false;

function pollHelp() {
    //fire the helpTx Ajax Transaction
    if (continueHelpChatPolling) {
        var transcriptPanel = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript');
        //alert("transcriptPanel => "+transcriptPanel);
        if (transcriptPanel || fireItNow) {
            if (observerAdded == false) {
                //alert('added');
                Event.observe('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment', 'keypress', helpCommentKeyDown);
                observerAdded = true;
            }
            //fireItNow = true;
            DynaFaces.Tx.config['helpPollTx'].inputs = [];
            DynaFaces.Tx.config['helpPollTx'].execute = [];
            var loggedInUsersElement = $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsers');
            if (loggedInUsersElement) {
                DynaFaces.Tx.config['helpPollTx'].render = ['form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript','form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsers'];
            }
            else {
                DynaFaces.Tx.config['helpPollTx'].render = ['form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript'];
            }
            DynaFaces.Tx.fire('helpPollTx');
        }
        setTimeout("pollHelp()",helpChatPollDelay);
    }
}

function customPostReplaceForHelpPollTx(element, markup) {
    //alert("helpPollTx");
    var transcriptPanel = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript');
    //alert("transcriptPanel :: "+transcriptPanel);
    if (transcriptPanel) {
        //transcriptPanel.scrollTop = transcriptPanel.scrollHeight;
    }
}

function customPostReplaceForHelpSendTx(element, markup) {
    //alert("helpSendTx");
    //scroll to the bottom of the transcript
    //alert("element :: "+element);
    //alert("markup :: "+markup);
    var transcriptPanel = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript');
    //alert("transcriptPanel :: "+transcriptPanel);
    if (transcriptPanel) {
        transcriptPanel.scrollTop = transcriptPanel.scrollHeight;
    }
    //clear the text field
    var commentTextField = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpComment_field');
    //alert("commentTextField :: "+commentTextField);
    commentTextField.value = '';

    //place focus in the text field
    commentTextField.focus();
}

var fireItNow = false;
var idSuffixesToReplace = [':helpLayout:helpTranscript'];
function customReplaceForHelpPollTx(element, markup) {
    if (markup != '') {
        if (element == 'form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript') {
            //alert("markup "+markup);
            extractedNewHTML = markup.gsub(/[\f\r\n\v]/,'').strip();
            var extractedNewHTML = extractedNewHTML.gsub(/.*value\"\:\"/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
            //alert("extractedNewHTML 1 "+extractedNewHTML);
            extractedNewHTML = extractedNewHTML.gsub(/\"\,\".*\}\)\;.*/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
            //alert("extractedNewHTML 2 "+extractedNewHTML);
        

            extractedNewHTML = extractedNewHTML.gsub(/.*CDATA\[/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
            //alert("extractedNewHTML 3 "+extractedNewHTML);
            extractedNewHTML = extractedNewHTML.gsub(/\/\/\]\]\>/,'').strip();        
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/\\n/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/\\/,'').strip();
            extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        
            //alert("extractedNewHTML 4 "+extractedNewHTML);
        
            var transcriptPanel = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript');
            var scrollbarExistsBeforeReplacement = transcriptPanel.scrollHeight > transcriptPanel.clientHeight;
        
            //capture whether the transcript is scrolled to the bottom before replacement
            var scrolledToBottomBeforeReplacement = false;
            if (scrollbarExistsBeforeReplacement) {
                //transcript is scrolled to the bottom if the sum of scrollTop and clientHeight equals scrollHeight
                if (transcriptPanel.scrollTop + transcriptPanel.clientHeight == transcriptPanel.scrollHeight) {
                    scrolledToBottomBeforeReplacement = true;
                }
            }

        
            //capture the scrollTop before replacement
            var scrollTopBeforeReplacement = transcriptPanel.scrollTop;
        
            var elementPic = $(element);        
            elementPic.innerHTML = extractedNewHTML;

            transcriptPanel = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpTranscript');
        
            //capture whether scrollbar exists after replacement
            var scrollbarExistsAfterReplacement = transcriptPanel.scrollHeight > transcriptPanel.clientHeight;


            //scroll to the bottom of the transcript if it was scrolled to the bottom before replacement
            //or if the scrollbar did not exist before replacement and it now exists after replacement.
            //otherwise, scroll the transcript to the same place it was before replacement
            if (scrolledToBottomBeforeReplacement || (!scrollbarExistsBeforeReplacement && scrollbarExistsAfterReplacement)) {
                transcriptPanel.scrollTop = transcriptPanel.scrollHeight;  //scroll to the bottom of the transcript
            }
            else {
                transcriptPanel.scrollTop = scrollTopBeforeReplacement; //scroll transcript to the place it was before replacement
            }    
        }
        
        if (element == 'form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsers') {
            //element = '_'+element;
            //alert("markup :: "+markup);
            //alert("markup "+markup);
            var loggedInUsersElement = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsers');
            if (loggedInUsersElement && loggedInUsersElement.visible) {
                extractedNewHTML = markup.gsub(/[\f\r\n\v]/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/.*options\"\:\[/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                //alert("extractedNewHTML 1 "+extractedNewHTML);
                extractedNewHTML = extractedNewHTML.gsub(/\].*$/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                //alert("extractedNewHTML 2 "+extractedNewHTML);

                extractedNewHTML = extractedNewHTML.gsub(/.*CDATA\[/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                //alert("extractedNewHTML 3 "+extractedNewHTML);
                extractedNewHTML = extractedNewHTML.gsub(/\/\/\]\]\>/,'').strip();        
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/\\n/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/\\/,'').strip();
                extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
                //alert("extractedNewHTML 4 "+extractedNewHTML);
            
            
                extractedNewHTML = '[' + extractedNewHTML + ']';
            
                var hashArray = eval(extractedNewHTML);
            
                //alert("1");
                // remove existing options from the logged in users
                var selectionStatus = new Array();
                var existingItems = new Array();
                var loggedInUsers = document.getElementById(element+'_list');
                 
                if (!dontTouchLoggedUsersList) {
                    doingLoggedUsersListUpdate = true;
                
                    if(loggedInUsers) {
                        var i = (loggedInUsers.length-1);
                     
                        //alert("1.3");
                        //var optionForList = document.createElementNS("http://www.w3.org/1999/xhtml","html:option");
                        var optionForList = document.createElement("option");
                        //alert("1.4");
                        optionForList.text = 'hidden';
                        optionForList.label = 'hidden';
                        optionForList.value = 'hidden';
                    
                   
                        //var myoption = "<option label='hidden' value='hidden'>hidden</option>";
                        //alert("mover1 "+loggedInUsers.innerHTML + "optionForList "+optionForList.innerHTML);
                    
                        //alert("1.5");
                        loggedInUsers.appendChild(optionForList);
                        //alert("1.6");
                    
                        //alert("mover2");
                        for (; i >= 0 ; i--) {
                            selectionStatus[i] = loggedInUsers.options[i].selected;
                            existingItems[i] = loggedInUsers.options[i].value;
                            loggedInUsers.remove(i);
                        }
                     
                        //alert("loggedInUsers.innerHTML :: "+loggedInUsers.innerHTML);
                        //loggedInUsers.innerHTML = myoption;
                    }
                    //alert("2");
                    // var finalOptions = "";
                    hashArray.each(function(item) {
                        var value = null;
                        if (item["value"]) {
                            value = item["value"];
                        }
                        var label = null;
                        if (item["label"]) {
                            label = item["label"];
                        }
                        var selected = null;
                        if (item["selected"]) {
                            selected = item["selected"];
                        }
                    
                    
                
                        if (value != null && label != null) {
                        
                            var i = 0;
                            for (; i < existingItems.length; i++) {
                                var existingItem = existingItems[i];
                                if (value == existingItem) {
                                    break;
                                }
                            }

                            //var option = document.createElementNS("http://www.w3.org/1999/xhtml","html:option");
                            var option = document.createElement("option");
                        
                            option.text = label;
                            option.label = label;
                            option.value = value;
                            if (selected) {
                                option.selected = selected;
                            } else {
                                if (i < existingItems.length) {
                                    option.selected = selectionStatus[i];
                                }
                            }
                        
                            option.setAttribute('class', 'LstOpt_sun4');
                            option.setAttribute('dojoattachpoint', 'optionNode');
                        
                            //alert("3");
                            //loggedInUsers = $(element+'_list');
                            //alert("loggedInUsers = "+loggedInUsers);
                        
                            if (loggedInUsers) {
                                //loggedInUsers.add(option, null);
                                loggedInUsers.appendChild(option);
                            }
                        
                            /*
                        if (option.selected) {
                            finalOptions += "\n<option selected=\""+option.selected+"\" value=\""+option.value+"\" label=\""+option.label+"\" class=\""+option.getAttribute('class')+"\" dojoattachpoint=\""+option.getAttribute('dojoattachpoint')+"\">"+option.text+"</option>";   
                        }
                        else {
                            finalOptions += "\n<option value=\""+option.value+"\" label=\""+option.label+"\" class=\""+option.getAttribute('class')+"\" dojoattachpoint=\""+option.getAttribute('dojoattachpoint')+"\">"+option.text+"</option>";   
                        }
                             */
                            //alert("4");
                        }
                    });
                    //alert("finalOptions :: "+finalOptions);
                    //loggedInUsers.innerHTML=finalOptions;
                    //remove hidden option
                    loggedInUsers.remove(0);
                    doingLoggedUsersListUpdate = false;
                }
                
            }
        }
        //Element.replace(element, markup);
    }
}

var dontTouchLoggedUsersList = false;
var doingLoggedUsersListUpdate = false;

function fillHelpLoggedUsersHiddenList() {
    if (doingLoggedUsersListUpdate) {
        setTimeout("fillHelpLoggedUsersHiddenList()",100);
    }
    dontTouchLoggedUsersList = true;
    var loggedInUsers = document.getElementById('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsers_list');
    if (loggedInUsers) {
        var list = "";
        for (i = 0; i < loggedInUsers.length ; i++) {
            if (loggedInUsers.options[i].selected) {
                list += loggedInUsers.options[i].value+"|";
            }
        }
        var helpLoggedUsersHiddenListElem = $('form1:helpBodyPane:helpBodyOverlayPane:helpTabbedPane:helpTab:helpLayout:helpControlPanel:helpLoggedUsersHiddenList');
        helpLoggedUsersHiddenListElem.value = list;
    }
    dontTouchLoggedUsersList = false;
}
    
// session alerts functions
var continueSessionAlertsPolling = false;
function customPostReplaceForSessionAlertsTx(element, markup) {
     
}   
    
function customReplaceForSessionAlertsTx(element, markup) {
    //alert("element : "+element);
    //alert("markup : "+markup);
    //alert("SessionAlertsTx :: markup eval scripts :: "+markup.evalScripts());
    if (markup != '') {
        //alert("markup "+markup);
        extractedNewHTML = markup.gsub(/[\f\r\n\v]/,'').strip();
        var extractedNewHTML = extractedNewHTML.gsub(/.*value\"\:\"/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        //alert("extractedNewHTML 1 "+extractedNewHTML);
        extractedNewHTML = extractedNewHTML.gsub(/\"\,\".*\}\)\;.*/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        //alert("extractedNewHTML 2 "+extractedNewHTML);
        

        extractedNewHTML = extractedNewHTML.gsub(/.*CDATA\[/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        //alert("extractedNewHTML 3 "+extractedNewHTML);
        extractedNewHTML = extractedNewHTML.gsub(/\/\/\]\]\>/,'').strip();        
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/\\n/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/\\/,'').strip();
        extractedNewHTML = extractedNewHTML.gsub(/[\f\r\n\v]/,'').strip();
        
        //alert("extractedNewHTML 4 "+extractedNewHTML);
        
        if (element == 'form1:Header:headPaneOverlay:liveHelpAlert') {
            // alert("extractedNewHTML 5 "+extractedNewHTML);
        }
            
        var elementObj = $(element);
        elementObj.value = extractedNewHTML;
        
        //element = '_'+element;
        //Element.replace(element, markup);
    }
}
    
function handleSessionAlertsOnLoad() {    
    //start polling
    continueSessionAlertsPolling = true;
    pollSessionAlerts();
}

function handleSessionAlertsOnUnload() {
    //stop polling
    continueSessionAlertsPolling = false;
}

function pollSessionAlerts() {
    pollLiveHelpAlerts();
    blinkLiveHelpLink();
}
        
function pollLiveHelpAlerts() {
    //fire the sessionAlertsTx Ajax Transaction
    if (continueSessionAlertsPolling) {
        //alert("1");
        var liveHelpAlertAjaxPollDuration = document.getElementById('form1:Header:headPaneOverlay:liveHelpAlertAjaxPollDuration');
        if (liveHelpAlertAjaxPollDuration) {
            liveHelpAlertAjaxPollDuration = liveHelpAlertAjaxPollDuration.value;
            //alert("2 ("+liveHelpAlertAjaxPollDuration+")");
            DynaFaces.Tx.config['sessionAlertsTx'].inputs = [];
            DynaFaces.Tx.config['sessionAlertsTx'].execute = [];
            DynaFaces.Tx.config['sessionAlertsTx'].render = ['form1:Header:headPaneOverlay:liveHelpAlert','form1:Header:headPaneOverlay:liveHelpAlertAjaxPollDuration','form1:Header:headPaneOverlay:liveHelpAlertBlinkGap'];
            DynaFaces.Tx.fire('sessionAlertsTx');
        }
        else {
            liveHelpAlertAjaxPollDuration = 30000;
        }
        //alert("session alert poll");
        setTimeout("pollLiveHelpAlerts()",liveHelpAlertAjaxPollDuration);
    }
}
    
var blinkState = 0;
var isDingPlaying = false;

function blinkLiveHelpLink() {
    var liveHelpAlert = document.getElementById('form1:Header:headPaneOverlay:liveHelpAlert');
    if (liveHelpAlert) {
        liveHelpAlert = liveHelpAlert.value;
        //liveHelpAlert = "true";
        //alert("liveHelpAlert :: "+liveHelpAlert);
        var helpCallLink = document.getElementById('form1:Header:headPaneOverlay:helpCallLink');

        if (liveHelpAlert == "true") {
        
            if (blinkState == 0) {
                //helpCallLink.show();
                helpCallLink.style.backgroundColor = 'rgb(255, 255, 255)';
                helpCallLink.style.color = 'rgb(255, 51, 51)';
                helpCallLink.style.border = '1px';
                blinkState = 1;
                //EvalSound('sound2');
                //PlaySound('/resources/CHORD.wav');
                //DHTMLSound('/resources/CHORD.wav');
                if (isSoundReady) {
                    soundManager.play('ding');
                    isDingPlaying = true;
                }
            }
            else {
                //helpCallLink.show();
                helpCallLink.style.backgroundColor = 'rgb(255, 51, 51)';
                helpCallLink.style.color = 'rgb(255, 255, 255)';
                helpCallLink.style.border = '1px';
                blinkState = 0;
                //EvalSound('sound1');
                //PlaySound('/resources/DING.wav');
                //DHTMLSound('/resources/DING.wav');
            }
        }
        else {
            helpCallLink.style.backgroundColor = 'rgb(229, 233, 237)';
            helpCallLink.style.color = 'rgb(229, 233, 237)';
            helpCallLink.style.border = '0px';
            //helpCallLink.hide();
            blinkState = 0;
            if (isSoundReady) {
                if (isDingPlaying)
                {
                    soundManager.stop('ding');
                    isDingPlaying = false;
                }
            }
        }
    }
    
    var liveHelpAlertBlinkGap = document.getElementById('form1:Header:headPaneOverlay:liveHelpAlertBlinkGap');
    if (liveHelpAlertBlinkGap) {
        liveHelpAlertBlinkGap = liveHelpAlertBlinkGap.value;
    }
    else {
        liveHelpAlertBlinkGap = 5000;
    }
    //alert("liveHelpAlertBlinkGap :: "+liveHelpAlertBlinkGap);
    setTimeout("blinkLiveHelpLink()",liveHelpAlertBlinkGap);
}

function EvalSound(soundobj) {
    var thissound=document.getElementById(soundobj);
    thissound.Play();
}

function PlaySound(url) {
    //alert('ding');
    document.all.sound.src = url;
}

function DHTMLSound(surl) {
    document.getElementById("dummyspan").innerHTML=
        "<embed src=\""+surl+"\" hidden=\"true\" autostart=\"true\" loop=\"false\"></embed>";
}


function umStep1submitClicked() {
    //alert("umStep1submitClicked");
    var submitClicked = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep1Tab:userDataLayout:submitClicked');
    //alert("submitClicked => "+submitClicked);
    if (submitClicked) {
        submitClicked.value = 'true';
    }
}

function umStep2submitClicked() {
    //alert();
    var submitClicked = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:submitClicked1');
    if (submitClicked) {
        submitClicked.value = 'true';
    }
}

function umStep2ApprovalCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var approvalBoxChecked = null;
    if (approvalBox.checked) {
        approvalBoxChecked = approvalBox.checked;
    }
    
    
    
    if (approvalBoxChecked) {
        adminCheckBoxValueHolder.value = "approve";
        //alert("approveBox checked... unchecking others");
        //approvalBox.checked = null;
        rejectBox.checked = null;
        suspendBox.checked = null;
        activateBox.checked = null;
        purgeBox.checked = null;
        initializeBox.checked = null;
        
    }    
}

function umStep2RejectCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var rejectBoxChecked = null;
    if (rejectBox.checked) {
        rejectBoxChecked = rejectBox.checked;
    }
    
    
    
    if (rejectBoxChecked) {
        adminCheckBoxValueHolder.value = "reject";
        //alert("approveBox checked... unchecking others");
        approvalBox.checked = null;
        //rejectBox.checked = null;
        suspendBox.checked = null;
        activateBox.checked = null;
        purgeBox.checked = null;
        initializeBox.checked = null;
        
    }    
}

function umStep2SuspendCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var suspendBoxChecked = null;
    if (suspendBox.checked) {
        suspendBoxChecked = suspendBox.checked;
    }
    
    
    
    if (suspendBoxChecked) {
        adminCheckBoxValueHolder.value = "suspend";
        //alert("approveBox checked... unchecking others");
        approvalBox.checked = null;
        rejectBox.checked = null;
        //suspendBox.checked = null;
        activateBox.checked = null;
        purgeBox.checked = null;
        initializeBox.checked = null;
    }    
}

function umStep2ActivateCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var activateBoxChecked = null;
    if (activateBox.checked) {
        activateBoxChecked = activateBox.checked;
    }
    
    
    
    if (activateBoxChecked) {
        adminCheckBoxValueHolder.value = "activate";
        //alert("approveBox checked... unchecking others");
        approvalBox.checked = null;
        rejectBox.checked = null;
        suspendBox.checked = null;
        //activateBox.checked = null;
        purgeBox.checked = null;
        initializeBox.checked = null;
    }    
}

function umStep2PurgeCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var purgeBoxChecked = null;
    if (purgeBox.checked) {
        purgeBoxChecked = purgeBox.checked;
    }
    
    
    
    if (purgeBoxChecked) {
        adminCheckBoxValueHolder.value = "purge";
        //alert("approveBox checked... unchecking others");
        approvalBox.checked = null;
        rejectBox.checked = null;
        suspendBox.checked = null;
        activateBox.checked = null;
        //purgeBox.checked = null;
        initializeBox.checked = null;
    }    
}

function umStep2InitializeCheckBoxClicked() {
    var adminCheckBoxValueHolder = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:adminCheckBox');
    
    var approvalBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:approvalBox_cb');
    var rejectBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:rejectBox_cb');
    var suspendBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:suspendBox_cb');
    var activateBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:activateBox_cb');
    var purgeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:purgeBox_cb');
    var initializeBox = $('form1:userManagementBodyPane:userManagementBodyOverlayPane:userManagementTabbedPane:umUserManagementTab:umUserManagementLayout:UserManagementFragment:userManagementFragment:usersStep2Tab:usersStep2Layout:initializeBox_cb');
    
    var initializeBoxChecked = null;
    if (initializeBox.checked) {
        intializeBoxChecked = initializeBox.checked;
    }
    
    
    
    if (initializeBoxChecked) {
        adminCheckBoxValueHolder.value = "initialize";
        //alert("approveBox checked... unchecking others");
        approvalBox.checked = null;
        rejectBox.checked = null;
        suspendBox.checked = null;
        activateBox.checked = null;
        purgeBox.checked = null;
        //initializeBox.checked = null;
    }    
}
