function SChangeBblocks(elem)
{
    var parent = elem.parentNode;
    if (parent.className.search("sel") == -1) 
    {
        var showName = elem.name;
        var showBlockName = showName + '_block';
        var showChangeName = showName + '_change';
        var showSpanName = showName + '_span';
        
        var hideName = showName == 'max' ? 'min' : 'max';
        var hideBlockName = hideName + '_block';
        var hideChangeName = hideName + '_change';
        var hideSpanName = hideName + '_span';
        var allElems = parent.parentNode.parentNode.getElementsByTagName('*');
        for(var i = 0; i < allElems.length; i++)
        {            
            if (allElems[i].className)
            {
                if (allElems[i].name == 'max' || allElems[i].name == 'min')
                {
                    allElems[i].className = allElems[i].className == 'hidden' ? 'visible' : 'hidden';
                }
                if (allElems[i].className.search(showSpanName) > -1 || allElems[i].className.search(showBlockName) > -1)
                {
                    allElems[i].className = allElems[i].className.replace('hidden', 'visible');                    
                }
                else if (allElems[i].className.search(hideSpanName) > -1 || allElems[i].className.search(hideBlockName) > -1)
                {                    
                    allElems[i].className = allElems[i].className.replace('visible', 'hidden');
                }
                else if (allElems[i].className.search(hideChangeName) > -1)
                {
                    allElems[i].className = allElems[i].className.replace('sel', '');
                }
                else if (allElems[i].className.search(showChangeName) > -1)
                {
                    allElems[i].className += ' sel';                    
                }
            }
        }
        return false;
    }
    return false;
}
StructureChangeBlocks = function()
{
    this.get = function(cN)
    {
        var elements = document.getElementsByTagName('*');;
        var j = 0;
        var needElements = [];
        for (var i in elements)
        {
            if (elements[i].className == cN)
            {
                needElements[j] = elements[i];    
                j++;
            }
        }
        return needElements;
    }
    
    this.handle = function(elem)
    {
        // 1. повесить на ссылку с name="max" функцию показа подробной инфы (name="max_block") и скрытия краткой (name="min_block")
        // 2. повесить на ссылку с name="min" функцию показа краткой инфы (name="min_block") и скрытия подробной (name="max_block")
        
        var childs = elem.getElementsByTagName('*');
        for (var i = 0; i< childs.length; i++)
        {
            if (childs[i].tagName == "A")
            {
                if (childs[i].name == 'min' || 'max')
                {
                    childs[i].onclick = function (){return SChangeBblocks(this);};
                }
            }
        }
    }
    
    this.init = function()
    {
        var elems = this.get('parent');
        for (var i = 0; i < elems.length; i++)
        {
            this.handle(elems[i]);
        }        
    }
};
function initializePage()
{
    var SChB = new StructureChangeBlocks();
    SChB.init();
}
window.onload = initializePage;
