$(document).ready(function() { 

	collapseMenu = function (strPartId) {
		var intSpeed	= 400;
		var strImageSrc = $('#breadCrumb-' + strPartId).attr('src');
		
		var intWidth 	= $('#breadcrumbUnfold-' + strPartId + ' .subMenuItems').getHiddenDimensions().width + 10;
		var intHeight	= $('#breadcrumbUnfold-' + strPartId + ' .subMenuItems').getHiddenDimensions().height + 10;
		var intX		= $('#breadCrumb-' + strPartId).parent().parent().position().left + 8;
    	var intY		= $('#breadCrumb-' + strPartId).position().top + 22;

		$('#breadcrumbUnfold-' + strPartId).css('top', intY + 'px');
		$('#breadcrumbUnfold-' + strPartId).css('left', intX + 'px');
		
		if ('none' == $('#breadcrumbUnfold-' + strPartId).css('display'))
		{
			$('#breadcrumbUnfold-' + strPartId).css('display', 'block');
			$('#breadcrumbUnfold-' + strPartId).animate({height: intHeight + 'px', width: intWidth + 'px'}, intSpeed);
			$('#breadCrumb-' + strPartId).attr('src', strImageSrc.replace('Down', 'Up'));
		}
		else
		{
			$('#breadcrumbUnfold-' + strPartId).animate({height: '0px', width: '0px'}, intSpeed, 'swing', function () {
				$('#breadcrumbUnfold-' + strPartId).css('display', 'none');
			});
			$('#breadCrumb-' + strPartId).attr('src', strImageSrc.replace('Up', 'Down'));
		}
	}
	
});

(function($) {
	$.fn.getHiddenDimensions = function(includeMargin) {
	    var $item = this,
	        props = { position: 'absolute', visibility: 'hidden', display: 'block' },
	        dim = { width:0, height:0, innerWidth: 0, innerHeight: 0, outerWidth: 0, outerHeight: 0 },
	        $hiddenParents = $item.parents().andSelf().not(':visible'),
	        includeMargin = (includeMargin == null)? false : includeMargin;
	 
	    var oldProps = [];
	    $hiddenParents.each(function() {
	        var old = {};
	 
	        for ( var name in props ) {
	            old[ name ] = this.style[ name ];
	            this.style[ name ] = props[ name ];
	        }
	 
	        oldProps.push(old);
	    });
	 
	    dim.width = $item.width();
	    dim.outerWidth = $item.outerWidth(includeMargin);
	    dim.innerWidth = $item.innerWidth();
		dim.height = $item.height();
	    dim.innerHeight = $item.innerHeight();
	    dim.outerHeight = $item.outerHeight(includeMargin);
	 
	    $hiddenParents.each(function(i) {
	        var old = oldProps[i];
	        for ( var name in props ) {
	            this.style[ name ] = old[ name ];
	        }
	    });
	 
	    return dim;
	}
	}(jQuery));
	
