//  Blink (turn on/off) a widget
function blink(id) {
    // Declare Element holders
    var o_element = null;  // opened element (opened html for widget)
    var c_element = null;  // closed element (closed html for widget)
    var b_element = null;  // button element (button on header [switches between "open" and "close"])
    var check_elm = null;
    var state_elm = null;
    // Declare Element holder IDs
    var o_id = 'opened_' + id;
    var c_id = 'closed_' + id;
    var b_id = 'button_' + id;
    var check_id = 'keep_open_' + id;
    var state_id = 'state_' + id;
    // Assign Elements if available
    o_element = getElem(o_id);
    c_element = getElem(c_id);
    b_element = getElem(b_id);
    check_elm = getElem(check_id);
    state_elm = getElem(state_id);
    // Alter widget
    if (o_element && c_element && b_element) {
        if( o_element.style.display == 'none' ) {
            // OPEN THE WIDGET
            // opened html was invisible, make visible
            b_element.src = '/images/dot_opened.gif';
            o_element.style.display = '';
            c_element.style.display = 'none';
            // set the state to opened for processing by backend script
            state_elm.value = 'opened'
        } else {
            // CLOSE THE WIDGET
            // set the state to closed for processing by backend script
            state_elm.value = 'closed';
            // If keep_open was checked uncheck
            if(check_elm.checked) {
                check_elm.checked = false;
                //return document.widget_form.submit();
            }
            // opened html was visible, make invisible
            b_element.src = '/images/dot_closed.gif';
            o_element.style.display = 'none';
            c_element.style.display = '';
        }
    }/* else {
        alert("Error o, c, and b aren't found!\no_element: " + o_element + "\nc_element: " + c_element + "\nb_element: " + b_element);
    }*/
}

function blink1(id) {
    var elem = null;
    elem = getElem(id);
    if( elem ) {
        if( elem.style.display == 'none' ) {
            // element is invisible, make it visible
            show(id);
        } else {
            // element is visible, make it invisible
            hide(id);
        }
    }
}

FamilyNavs = new Array();

function MakeFamily( ) {
    var familyName  = arguments[0];
    FamilyNavs[familyName] = {
        family:arguments[0],
        members:{}
    };
    for( var x = 1; x < arguments.length; x++ ) {
        FamilyNavs[familyName].members[ x-1 ] = arguments[x];
        //alert("Setting FamilyNavs[" + familyName + "].members[" + (x-1) + "] = " + arguments[x]);
    }
}
function family_blink( family, active ) {
    //alert("Family_blink( " + family + ", " + active + ")");
    var active_member = null;
    var family_search = null;
    //alert(" Number of members in family: " + FamilyNavs[family].members);
    for( var x in FamilyNavs[family].members ) {
        family_search  = "opened_" + family + "_" + FamilyNavs[family].members[x];
        button_element = "left_nav_button" + FamilyNavs[family].members[x];
        elem = getElem(button_element);
        if( FamilyNavs[family].members[x] != active ) {
            //alert("Hiding " + family_search);
            hide( family_search );
            elem.src = '/images/dot_closed.gif';
        } else {
            //alert("Showing " + family_search);
            show( family_search );
            elem.src = '/images/dot_opened.gif';
        }
    }
}
