/*
	File:	jscript/MenuRenderer.js
	Author:	Sebastian Wesolowski

	(c) 2003-2005 SuperMemo World sp. z o.o.
	ALL RIGHTS RESERVED
*/

	var	SELECT_TOUR_DRAW		= 22001;
	var SELECT_CART_DRAW		= 24001;
	var SELECT_PRICE_DRAW		= 21001;
	var LEARN_SKIP				= 10007;

	var	ENABLE_SHORTTOUR		= 2;
	var ENABLE_PRICELIST		= 4;
	var ENABLE_SKIP				= 8;
	
	function getParent(data, selected)
	{
		selected = parseInt(selected);
		var parent = Math.floor(selected / 10000);
		parent = parent * 10000;
		parent = parent + 1;
		var ile = data.length / 4;
	
		for(i = 0; i < ile; i++)
		{
			var b = data[(i * 4) + 1];
			if(b == parent) return b;
		}
		return 0;
	}

	function drawName(name, text, item, logo, logoLink)
	{
		out = new Array();

		if(name.length > 0)
		{
			out.push("'"+ name+ "'<br>");
			if(parseInt(item) > 0)
			{
				out.push("<span class=\"itemNumber\">"+ text+ ": "+ item+ "</span>");
			}
		}
		else
		{
			if(logo.length > 0)
			{
				if(logoLink.length > 0)
				{
					out.push('<a href="'+ logoLink+ '" target="_blank"><img src="static/images/groups/'+ logo+ '" align="absmiddle" border="0"></a>');
				}
				else
				{
					out.push('<img src="static/images/groups/'+ logo+ '" align="absmiddle">');
				}
			}
			else
			{
				out.push('<img src="static/images/misc_logo.gif" align="absmiddle">');
			}
		}

		str = out.join('');
		elem = document.getElementById("nameHere");
		elem.innerHTML = str;
	}

	function drawMenu(data, selected, login)
	{
		selected = parseInt(selected);
		var parent = parseInt(getParent(data, selected));
	
		out = new Array();
		out.push('<table cellpadding="0" cellspacing="0" width="100%"><tr>');
		var ile = data.length / 4;
	
		for(i = 0; i < ile; i++)
		{
			var a = data[i * 4];
			var b = data[(i * 4) + 1];
			var c = data[(i * 4) + 2];
			var d = data[(i * 4) + 3];
			if(a > 1) continue;
	
			if(b == parent)
			{
				out.push('<td class="tableMenuOn" nowrap>');
				out.push(	'<img src="static/images/misc_fiszka1.gif" width="14" height="21" align="absmiddle">');
				out.push(		c);
				out.push(	'<img src="static/images/misc_fiszka2.gif" width="18" height="21" align="absmiddle">');
				out.push('</td>');
			}
			else
			{
				out.push('<td class="tableMenuOff" nowrap>');
				out.push(	'<a class="menu" href="#" title="'+ d+ '" ');
				out.push(		'onClick="formSubmit(\''+ b+ '\'); return false;">');
				out.push(		c);
				out.push(	'</a>');
				out.push(	'&nbsp;&nbsp;');
				out.push('</td>');
			}
		}

		out.push('<td class="tableMenuOff" nowrap align="right" width="99%">');
		out.push('<b>'+ login+ '</b>&nbsp;&nbsp;');
		out.push('</td>');

		out.push('</tr></table>');
	
		str = out.join('');
		elem = document.getElementById("menuHere");
		elem.innerHTML = str;
	}
	
	function drawSub(data, selected, flags, cartItems)
	{
		selected = parseInt(selected);
		var parent = parseInt(getParent(data, selected));

		out = new Array();

		var ile = data.length / 4;
		for(j = 0; j < ile; j++)
		{
			var a = data[j * 4];
			var b = data[(j * 4) + 1];
			if((a == 1) && (b == parent)) break;
		}
	
		out.push('<table width="100%" height="100%" cellpadding="0" cellspacing="0"><tr>');
		out.push('<td class="tableSubMenu2">');
		var num = 0;
		for(i = j + 1; i < ile; i++)
		{
			var a = data[i * 4];
			var b = data[(i * 4) + 1];
			var c = data[(i * 4) + 2];
			var d = data[(i * 4) + 3];
			if(a == 1) break;

			if(((flags & ENABLE_SHORTTOUR) == 0)  && (b == SELECT_TOUR_DRAW))  continue; // pomin Migawki jesli trzeba
			if(((flags & ENABLE_PRICELIST) == 0)  && (b == SELECT_PRICE_DRAW)) continue; // pomin Cennik jesli trzeba
			if(((flags & ENABLE_SKIP) == 0)       && (b == LEARN_SKIP))        continue; // pomin Pomin jesli trzeba

			if(num > 0) out.push('&nbsp;&#183;&nbsp;')

			if((b == SELECT_CART_DRAW) && (cartItems > 0))
			{
				c = c+ ' <b>('+ cartItems+ ')</b>';
			}

			if(b == selected)
			{
				out.push('<a class="menuBold" href="#" ');
//				out.push(   'title="'+ d+ '" ');
				out.push(	'onClick="formSubmit(\''+ b+ '\'); return false;">');
				out.push(	c);
				out.push('</a>');
			}
			else
			{
				out.push('<a class="menu" href="#" ');
//				out.push(   'title="'+ d+ '" ');
				out.push(	'onClick="formSubmit(\''+ b+ '\'); return false;">');
				out.push(	c);
				out.push('</a>');
			}
			num++;
		}
		out.push('</td>');
		out.push('</tr></table>');
	
		str = out.join('');
		elem = document.getElementById("subHere");
		elem.innerHTML = str;
	}
	
	function formSubmit(action)
	{
		fr = getForm();
		fr.Action.value = action;
		fr.submit();
	}

	function getForm()
	{
		return window.frames['main'].document.smn;
	}

	function getForm2()
	{
		return window.frames['side'].document.smn2;
	}

	function buildMenu(selected, flags, name, text, item, login, cartItems, logo, logoLink)
	{
		selected = Math.floor(parseInt(selected) / 100);
		selected = (selected * 100) + 1;
		if(login == '')
		{
			login = '-';
			if(menuType == 'logged') top.location.reload();
		}
		else if(menuType == 'guest') top.location.reload();

		drawName(name, text, item, logo, logoLink);
		drawMenu(menuData, selected, login);
		drawSub(menuData, selected, flags, cartItems);
	}

	function buildMenuExam(name, text, item, login, logo, logoLink)
	{
		var selected = menuExamData[(0 * 4) + 1];
		if(login == '') login = '-';

		drawName(name, text, item, logo, logoLink);
		drawMenu(menuExamData, selected, login);
		drawSub(menuExamData, selected, 0, 0);
	}

	function rollUpSide() {
		document.getElementById('sideCell').width = '5';
		document.getElementById('side').width = '5';
		document.getElementById('side').style.display = 'none';
	}
	
	function unrollSide() {
		document.getElementById('sideCell').width = '290';
		document.getElementById('side').width = '290';
		document.getElementById('side').style.display = '';
	}

