var $j = jQuery.noConflict(); 

function menuTree(selector){
	$j(selector).each(function(i) { // Check each submenu:
		if ($j.cookie('submenuMark-' + i)) {  // If index of submenu is marked in cookies:
			$j(this).show().prev().removeClass('collapse').addClass('expand'); // Show it (add apropriate classes)
		}else {
			$j(this).hide().prev().removeClass('expand').addClass('collapse'); // Hide it
		}
		$j(this).prev().addClass('collapsible').click(function() { // Attach an event listener
			var this_i = $j(selector).index($j(this).next()); // The index of the submenu of the clicked link
			if ($j(this).next().css('display') == 'none') {
				$j(this).next().slideDown(200, function () { // Show submenu:
					$j(this).prev().removeClass('collapse').addClass('expand');
					cookieSet(this_i);
				});
			}else {
				$j(this).next().slideUp(200, function () { // Hide submenu:
					$j(this).prev().removeClass('expand').addClass('collapse');
					cookieDel(this_i);
					$j(this).find('ul').each(function() {
						$j(this).hide(0, cookieDel($j(selector).index($j(this)))).prev().removeClass('expand').addClass('collapse');
					});
				});
			}
	//return false; // Prohibit the browser to follow the link address
		});
	});

}

function cookieSet(index) {
	$j.cookie('submenuMark-' + index, 'opened', {expires: null, path: '/'}); // Set mark to cookie (submenu is shown):
}
function cookieDel(index) {
	$j.cookie('submenuMark-' + index, null, {expires: null, path: '/'}); // Delete mark from cookie (submenu is hidden):
}
