﻿// Get DOM element by name or id
function GetControlByName($controlname) {
    return (document.all ? document.all[$controlname] : document.getElementById($controlname));
}

// Get elements inside element with matching tag + classname
function extractElements(parentContainer, tagName, cssClass) {

    var ItemsCount = parentContainer.getElementsByTagName(tagName);
    var ExtractedItems = new Array();
    var Counter = 0;

    for (x = 0; x < ItemsCount.length; x++) {
        if (ItemsCount[x].className.match(cssClass) != null) {
            ExtractedItems[Counter] = ItemsCount[x];
            Counter++;
        }
    }

    return ExtractedItems;
}


// expands/collapses block, toggles CSS class name
function toggleCollapse(button, block, show, hide) {

    var toggleButton = button; // button that toggles
    var panelElm = document.getElementById(block); // block to hide/show
    var textShow = show; // text for the 'show' state
    var textHide = hide; // text for the 'hide' state
    
    
    if ((panelElm.style.display != "none") && (panelElm)) {
        panelElm.style.display = "none";
        toggleButton.className = "collapsed"
        if (textShow) {
            toggleButton.innerHTML = textShow;
        }
    } else if (panelElm) {
        panelElm.style.display = "block";
        toggleButton.className = "expanded";
        if (textHide) {
            toggleButton.innerHTML = textHide;
        }
    }
}

// clear's default text in initated textboxes
function ClearDefaultText($input, $default) {
    if (String($input.value).trim() == $default)
        $input.value = '';
    // change color to black
    $input.style.color = "#000000";
}

// clear's default text in initated textboxes
function InitDefaultText($input, $default) {
    if (String($input.value).trim().length == 0)
        $input.value = $default;
    // return color to whatever
    $input.style.color = "";
}