﻿// JScript File

var tokenlist = new Array();

function tokenReplace(link) {
    try {
        if (hasTokens(link)) {
            link = tokenMatch(link)
        }
    }
    catch (err) {
        //alert(err);
    }
    return link;
}

function hasTokens(link) {
    var iStartPos = 0;
    var iEndPos = 0;
    var bFound = false;
    
    try {
        if (link.indexOf("[$",iStartPos) > -1) {
        
            bFound = true;
            
            while (link.indexOf("[$",iEndPos) > -1) {
                iStartPos = link.indexOf("[$",iStartPos) + 2
                iEndPos = link.indexOf("$]",iStartPos)
                tokenlist[tokenlist.length] = link.substring(iStartPos,iEndPos)
            }
        } 
 
    }
    catch (err) {
        //alert(err);
    }              
    
    return bFound;
}

function checkReplace(widget) {
    var sValue;
    try {
        //alert("TYPE:" + widget.type + "\nNAME: " + widget.name + "\nVALUE: " + widget.value)
        switch(widget.type) {
            case 'text':
                sValue = widget.value;
                break;
            case 'select-one':
                sValue = widget.value
                break;
            case 'radio':
                sValue = widget.value;
                break;
            case 'hidden':
                sValue = widget.value;
                break;
            case 'checkbox':
                sValue = widget.checked
                break;
            default:
                sValue = "";
        }
    }
    catch (err) {
        //alert('CHECK REPLACE: ' + err);
    }
    
    return sValue;
}

function tokenMatch(link) {
    try {
        for (var i = 0; i < tokenlist.length; i++) {
            //alert(tokenlist[i])
            try {
                if( document.getElementById ) {// this is the way the standards work
                    element = document.getElementById(tokenlist[i]);
                }
                else if( document.all ) {// this is the way old msie versions work
                    element = document.all[tokenlist[i]];
                }
                else if( document.layers ) {// this is the way nn4 works
                    element = document.layers[tokenlist[i]];
                }
                else {
                    //alert('BROWSER TYPE NOT SUPPORTED');
                }
                
                if (element != null) {
                    link = link.replace("[$" + tokenlist[i] + "$]", checkReplace(element));
                }
                else{
                    link = link.replace("[$" + tokenlist[i] + "$]", "");
                }
                
            }
            catch (err) {
                //alert('TYPE CHECK: ' + err);
            }
        }
    }
    catch (err) {
        alert(err);
    }
    
    return link;

}