$(function() {
    function effects(blocks){
        var effectsObject = {
            effectsArray:['scale', 'explode', 'clip'], 
            explode: function(blocks){ 
                var visible = blocks.filter(function(){
                    return $(this).is(':not(.hidden)');
                });
                visible.hide('explode', {}, 500);
                
                var hidden = blocks.filter(function(){
                    return $(this).is('.hidden');
                });
                hidden.show('explode', {}, 500); 
                blocks.toggleClass('hidden'); 
            },
            scale: function(blocks){ 
                var visible = blocks.filter(function(){
                    return $(this).is(':not(.hidden)');
                });
                visible.hide('scale', {}, 500);
                
                var hidden = blocks.filter(function(){
                    return $(this).is('.hidden');
                });
                hidden.show('scale', {}, 500); 
                blocks.toggleClass('hidden'); 
            },
            clip: function (blocks){ 
                var visible = blocks.filter(function(){
                    return $(this).is(':not(.hidden)');
                });
                visible.hide('clip', { direction: 'vertical' }, 500);
                
                var hidden = blocks.filter(function(){
                    return $(this).is('.hidden');
                });
                hidden.show('clip', { direction: 'horizontal' }, 500); 
                blocks.toggleClass('hidden'); 
            }
        };
        var func = effectsObject.effectsArray[$.random(3)];
        effectsObject[func](blocks);
    }
    function toggleBlock(){  
        $('#mainblocks .mb_block:not(.admin) .symbol').click(function(event){
            var symbol = $(this).attr('class');
            var links = $('#mainblocks .mb_block .symbol').filter(function(){
                return $(this).attr('class') == symbol;
            });
            var blocks = links.closest('.mb_block');
            $('#mainblocks .mb_block').css({'z-index': '0'});
            blocks.css({'z-index': '1000'});
            if(false === $(event.target).is('a')){
                effects(blocks);    
            }
        });       
    }
    $(document).ready(function(){
        $('#mainblocks').dragBlock();
        /*var navBlockConfig = {
            callback: function(links){
                var elm = $('#mainblocks'); 
                var current = links.filter(function(){
                    return $(this).is('.on');    
                });
                elm.animate({opacity: 0.35}); 
                this[current.attr('rel')].call(this, elm);
            }
        };
        $('#navicons').navBlock(jQuery.extend($.navBlockConfig, navBlockConfig));*/
        toggleBlock();
    });
});




