function createLink(name) {
    var labelElement = name+'label';
    var urlElement = name+'url';
    var labelObj = document.getElementById(labelElement);
    var label = labelObj.value;
    var urlObj = document.getElementById(urlElement);
    var url = urlObj.value;
    document.getElementById(name).value = "<a href='"+url+"'>"+label+"</a>";
}

function hasOptions(obj) {
    if (obj!=null && obj.options!=null) { return true; }
    return false;
}


// -------------------------------------------------------------------
// removeAllOptions(select_object)
//  Remove all options from a list
// -------------------------------------------------------------------
function removeAllOptions(from) {
    if (!hasOptions(from)) { return; }
    for (var i=(from.options.length-1); i>=0; i--) {
        from.options[i] = null;
    }
    from.selectedIndex = -1;
}

// -------------------------------------------------------------------
// addOption(select_object,display_text,value,selected)
//  Add an option to a list
// -------------------------------------------------------------------
function addOption(obj,text,value,selected) {
    if (obj!=null && obj.options!=null) {
        obj.options[obj.options.length] = new Option(text, value, false, selected);
    }
}

var dependencies = new Array();

function updateDropdowns() {
    for (var i=0; i<dependencies.length; i++) {
        var dependency = dependencies[i];
        var dependent = dependency.dependent;
        var dependentElement = document.getElementById("dd"+dependent);
        // Before removing all options, store the value of the dropdown
        var currentValue = dependentElement.value;
        //alert("dd"+dependent+"  currentValue="+currentValue);
        removeAllOptions(dependentElement);
        addOption(dependentElement, "--Select--", "", "selected");
        var dependentOn = dependency.dependentOn;
        var dependentOnElement=document.getElementById("dd"+dependentOn);
        var dependentOnElementValue = dependentOnElement.value;
        var options = dependency.options;
        for (var j=0; j<options.length; j++) {
            var currentOption = options[j];
            if (currentOption.dependency == dependentOnElementValue) {
                // Add to the list
                if (currentOption.id == currentValue) {
                    addOption(dependentElement, currentOption.name, currentOption.id, "selected");
                } else {
                    addOption(dependentElement, currentOption.name, currentOption.id, "");
                }
            }

        }
    }
}




function show(id) {
    var obj = document.getElementById(id);
    obj.style.visibility = "visible";
    obj.style.display = "inline";
}

function hide(id) {
    var obj = document.getElementById(id);
    obj.style.visibility = "hidden";
    obj.style.display = "none";
}

function resize() {
  var iframe = document.getElementById('hiddenframe');
  var wrapper = document.getElementById('wrapper');
  var height = Math.max(document.body.offsetHeight, document.body.scrollHeight);
  var width = Math.max(document.body.offsetWidth, document.body.scrollWidth);
  iframe.src = 'http://www.britishswimming.org/resizer.html?height='+height+'&width='+width;
}

