function toggleAdminForm(name)
{
    var hide = false;
    if (document.getElementById(name).style.display == "")
        hide = true;
    toggleElement(name);
    if (hide)
    {
        document.getElementById(name + "Toggler").innerHTML = "+";
    }
    else
    {
        document.getElementById(name + "Toggler").innerHTML = "-";
    }
}

function toggleEdit(name)
{
    var hide = false;
    if (document.getElementById(name).style.display == "")
        hide = true;
    if (hide)
    {
        document.getElementById(name).style.display = "none";
    }
    else
    {
        document.getElementById(name).style.display = "";
    }
}

function toggleElement(name)
{
    var hide = false;
    if (document.getElementById(name).style.display == "")
        hide = true;
    if (hide)
    {
        document.getElementById(name).style.display = "none";
    }
    else
    {
        document.getElementById(name).style.display = "";
    }
}

function hideDiv(name)
{
    document.getElementById(name).style.display = "None";
}

function showDiv(name, displayType)
{
    document.getElementById(name).style.display = displayType;
}

function toggleDiv(name)
{
    var hide = false;
    if (document.getElementById(name).style.display == "block")
        hide = true;
    hideDivs();
    if (hide)
        document.getElementById(name).style.display = "none";
    else
        document.getElementById(name).style.display = "block";
}

function toggleInline(name)
{
    toggleElement(name, "inline", null)
}

function submitForm(submitType, submitValue)
{
    document.getElementById("submitType").value = submitType;
    document.getElementById("submitValue").value = submitValue;
    document.forms[0].submit();
}

function trace(message)
{
    var alertDiv = document.getElementById("tracerDiv");
    if (alertDiv == null)
        alertDiv = document.createElement('div');
    alertDiv.setAttribute('id', "tracerDiv");
    alertDiv.innerHTML += message + "<br />";
    alertDiv.style.position = "absolute";
    alertDiv.style.left = "0px";
    alertDiv.style.top = "0px";
    document.getElementsByTagName("body")[0].appendChild(alertDiv);
}

function confirmDiv(message, script)
{
    var newDiv = document.createElement('div');
    newDiv.setAttribute('id', "alertDiv");
    newDiv.setAttribute('width', "100");
    newDiv.innerHTML = "<div>" + message + "</div>" +
                        "<div class='alertToggler'>" +
                            "<input type='button' onclick=\"" + script + "\" value='OK' />" +
                            "<input type='button' onclick=\"toggleElement('alertDiv');\" value='Cancel' />" +
                        "</div>";
    document.body.appendChild(newDiv);
}

function clearSelect(selectElement)
{
    selectElement.options.length = 0;
}

function addOption(option, selectElement)
{
    try
    {
        selectElement.add(option, null); // standards compliant; doesn't work in IE
    }
    catch (ex)
    {
        selectElement.add(option); // IE only
    }
}

function getSelectedValue(selectId)
{
    var dropDown = document.getElementById(selectId);
    var selectedIndex = dropDown.selectedIndex;
    return dropDown.options[selectedIndex].value;
}

function getSelectedText(selectId)
{
    var dropDown = document.getElementById(selectId);
    var selectedIndex = dropDown.selectedIndex;
    return dropDown.options[selectedIndex].text;
}

function addClickEvent(element, dealerId)
{
    element.onclick = function ()
    {
        document.getElementById("submitType").value = 'updateDealer';
        document.getElementById("submitValue").value = dealerId;
        document.forms[0].submit();
    }
}

function isValueInArray(value, array)
{
    for (var i = 0; i < array.length; i++)
    {
        if (array[i] == value)
        {
            return true;
        }
    }
    return false;
}

function _get(id)
{
    return document.getElementById(id);
}
/*
Prints all properties in an object (and their current values)
*/
function inspect(obj)
{
    var str = "";
    for (var prop in obj)
    {
        str += "prop: " + prop + " is " + obj[prop] + "<br />";
    }
    trace(str);
}
