/* Javascript by Daniel Cohen Gindi (c) danielgindi@gmail.com 054-5655765 */
/* Version: 2009-12-19 */

showHideMenuMgr = {
    currentItem: new Array(),

    toggle: function(item, showOnly, standAlone) {
        if (!item) return;
        var baseName = item.id.substr(0, item.id.lastIndexOf('_'));
        var baseId = item.id.substr(item.id.lastIndexOf('_') + 1);
        var curName = null;
        if (standAlone) this.setCurrentItem(item);
        var curItem = this.getCurrentItem(baseName);
        if (standAlone && curItem && curItem.style.display == 'none') curItem = null;
        var newItem = document.getElementById(baseName + '__' + baseId);
        if (curItem && newItem && ((curItem == newItem && !showOnly) || (curItem != newItem && !standAlone))) {
            curName = this.currentItem[baseName].id;
            curItem.style.display = 'none';
            delete this.currentItem[baseName];
        }
        if (newItem && newItem.id != curName) {
            newItem.style.display = 'block';
            this.currentItem[baseName] = newItem;
            return true;
        }
        return false;
    },
    setCurrentItem: function(item) {
        if (!item) return;
        var itemId;
        if (typeof item == 'string') itemId = item;
        else itemId = item.id;
        var baseName = itemId.substr(0, itemId.lastIndexOf('_'));
        var baseId = itemId.substr(itemId.lastIndexOf('_') + 1);
        var subId = baseName + '__' + baseId;
        var curItem = document.getElementById(subId);
        if (!curItem) curItem = subId;
        this.currentItem[baseName] = curItem;
    },
    getCurrentItem: function(baseName) {
        if (!baseName) return null;
        var obj = this.currentItem[baseName];
        if (typeof obj == 'string') return document.getElementById(obj);
        return obj;
    }
};
