	/*  softec 2008 - all right reserved  */
				
	var mode = "SKK2EUR";
	//var mode = "EUR2SKK";
	
	var bubbledStringStyle = "color:";
	
	var skk = ["skk","sk"];	
	var eur = ["euro","eur" ];
	var postfix = ["tis.", "mil.", "mld.", "thous.", "mill.", "billion" ];
	var whiteSpace = [" ", "&nbsp;", " "];//ten posledny znak je kvoli 	opere a safary (oni nejak cudne interpretuju &nbsp;)
	var newLine = ["<br />","<br>", "\n"];
	var noBubbles =  [ "index", "%", "podiel"];
	var afrerCurrencyForMJNT = [")",",","<","&","."," ","/"];
	
	var sourceCurrency;
	var targetCurrency;
	var targetCurrencyOut;
	var rateOfExchange;
	
	var typeObjs = new Array();
	var EuBubbles = new Array();
	var inicialized = false;
	
	var euBubbleIdCounter = 0;
	
	if(mode == "SKK2EUR")
	{
		sourceCurrency = skk;
		targetCurrency = eur;
		targetCurrencyOut = "EUR";
		rateOfExchange = 30.126;
	}
	
	if(mode == "EUR2SKK")
	{
		sourceCurrency = eur;
		targetCurrency = skk;
		targetCurrencyOut = "SKK";
		rateOfExchange = 0.5;	
	}
	
	var rSourceCurrency;
	var rPostfix;
	var rWhiteSpace;
	var rNewLine;
	var rNumberWithCurrency;
	var rMernaJednotka;
	var rPostfixWithCurrency;	
	
	
	function initRegExp()
	{	
		var sourceCurrencyTempString = "";
		for(var i = 0; i< sourceCurrency.length; i++)
		{
			sourceCurrencyTempString = sourceCurrencyTempString  + sourceCurrency[i]  + "|";
		}		
		sourceCurrencyTempString = sourceCurrencyTempString.substr(0,sourceCurrencyTempString.length-1);		
		rSourceCurrency =new RegExp(sourceCurrencyTempString, "i");
					
		var postfixTempString = "";
		for(var i = 0; i< postfix.length; i++)
		{
			postfixTempString = postfixTempString  + postfix[i]  + "|";
		}		
		postfixTempString = postfixTempString.substr(0,postfixTempString.length-1);		
		rPostfix =new RegExp(postfixTempString, "i");
		
		var whiteSpaceTempString = "";
		for(var i = 0; i< whiteSpace.length; i++)
		{
			whiteSpaceTempString = whiteSpaceTempString  + whiteSpace[i]  + "|";
		}
		whiteSpaceTempString = whiteSpaceTempString.substr(0,whiteSpaceTempString.length-1);		
		rWhiteSpace =new RegExp(whiteSpaceTempString, "gi");
		
		var newLineTempString = "";
		for(var i = 0; i< newLine.length; i++)
		{
			newLineTempString = newLineTempString  + newLine[i]  + "|";
		}
		newLineTempString = newLineTempString.substr(0,newLineTempString.length-1);		
		rNewLine =new RegExp(newLineTempString, "gi");
		
		var noBubblesTempString = "";
		for(var i = 0; i< noBubbles.length; i++)
		{
			noBubblesTempString = noBubblesTempString  + noBubbles[i]  + "|";
		}
		noBubblesTempString = noBubblesTempString.substr(0,noBubblesTempString.length-1);		
		rNoBubbles =new RegExp(noBubblesTempString, "i");
		
		var afrerCurrencyForMJNTTempString = "";
		for(var i = 0; i< afrerCurrencyForMJNT.length; i++)
		{
			afrerCurrencyForMJNTTempString = afrerCurrencyForMJNTTempString  + afrerCurrencyForMJNT[i] ;
		}		
		
		var numberWithCurrency = "((" + sourceCurrencyTempString + ")" + "(" + whiteSpaceTempString +")+";
		numberWithCurrency = numberWithCurrency + "((([0-9]+(" + whiteSpaceTempString + ")*)+(,[0-9]){0,1}([0-9]+(" + whiteSpaceTempString + ")*)*)";		
		numberWithCurrency = numberWithCurrency + "((" + whiteSpaceTempString +")+(" + postfixTempString +")))|";
		numberWithCurrency = numberWithCurrency +"((" + sourceCurrencyTempString + ")" + "(" + whiteSpaceTempString +")+";
		numberWithCurrency = numberWithCurrency + "(([0-9]+(" + whiteSpaceTempString + ")*)+(,[0-9]){0,1}([0-9]+(" + whiteSpaceTempString + ")*)*)))";
		


		rNumberWithCurrency = new RegExp(numberWithCurrency, "gi");
				
		var postfixWithCurrency =  "(((" + postfixTempString + ")(" + whiteSpaceTempString + "|" +newLineTempString + ")+)";
		postfixWithCurrency = postfixWithCurrency + "(" +  sourceCurrencyTempString + "))|";		
		postfixWithCurrency = postfixWithCurrency + "((" +  sourceCurrencyTempString  + ")["  + afrerCurrencyForMJNTTempString +"])";		
		rPostfixWithCurrency = new RegExp(postfixWithCurrency,"i");
				
		rMernaJednotka = new RegExp("(merná(" + whiteSpaceTempString + "|" +newLineTempString + ")*jednotka)|(unit)", "i");						
	}		
	
	
	function parseNumber(stringToParse)
	{

		var stripedString = stringToParse.stripTags().replace(rWhiteSpace,'').replace(rSourceCurrency,'');

		
		stripedString.replace(rNewLine,'');


		stripedString = stripedString.replace(/,/,'.');
		
		
		var floatValue = parseFloat(stripedString);
		
		if(isNaN(floatValue) || !isFinite(floatValue))
		{		
			return false;
		}
		else
		{
			var retObj = new Object();
			retObj.number = floatValue;
			retObj.postfix = rPostfix.exec(stripedString);
			
			return retObj;
		}
		
	}
	
	function formatToOutput(objOfNumber, rateOfExchange, targetCurrency )
	{			

		
		var euInArray = roundNumber( objOfNumber.number/rateOfExchange,2 ).toString().split(".");
		
		
		var formatedNumber;			
		if(euInArray[0] != "")
		{
			formatedNumber = "";
			
			for(var i=1; i <= euInArray[0].length;i++ )
			{
				formatedNumber = formatedNumber + 	euInArray[0].substr(i-1,1);			
				if(((euInArray[0].length  -i) % 3 == 0) )
				{
					formatedNumber = formatedNumber + ' ';
				}
				
			}
		}		
		else
		{
			formatedNumber = "0";
		}
		
	        if(euInArray[1] == undefined)
		{
			euInArray[1] = "00";
		}
		
		if(objOfNumber.postfix == null)
		{
			return formatedNumber + ',' +euInArray[1] + ' ' + targetCurrency;
		}
		else
		{
			return formatedNumber + ',' +euInArray[1] + ' ' + objOfNumber.postfix  + ' ' + targetCurrency;
		}
	}
	
	function getSUSRTableHeader(table)
	{
	
		var header = null;
		for(var i = 0; i==i; i++)
		{
			if($('riadokTabulkySUSR_' + i)== null)
			{
				table.id = "riadokTabulkySUSR_" + i;			
				header = $$("#riadokTabulkySUSR_" + i +' .riadokTabulkySUSR');
				break;
			}			
		}
		
		if(header.length > 0)
		{
		
			if(header[0].nodeName == 'TR')
			{	
				for(var i = 0; i < header.length; i++ )//vsetky su tr??
				{						
					if(header[i].nodeName != 'TR')
					{
						return false;
					}
				}
			
				return header;
			}
			else if(header[0].nodeName == 'TD')
			{			
				var newHeader = new Array();
				for(var i = 0; i < header.length; i++ )
				{	
					if(header[i].nodeName != 'TD') // vsetky su td???
					{
						return false;
					}			

					header[i].className = header[i].className.replace(/riadokTabulkySUSR/gi,"");					
					
					var uniqueRow = true;
					for(var j = 0; j < newHeader.length; j++ )
					{						
						if(newHeader[j] == header[i].parentNode)
						{
							uniqueRow = false;
							break;
						}					
					}
					if(uniqueRow)
					{									
						header[i].parentNode.className = header[i].parentNode.className + " riadokTabulkySUSR";
						newHeader.push(header[i].parentNode);						
					}
				}					
				
				return newHeader;
			}
			else
			{
				return false;
			}
			
		}
		else
		{
			return false;
		}
			
	}
	
	
	function getTableType(SUSRTable)
	{	
			
			//vytiahneme riadky hlavicky (podla nich sa rozhodneme o type tab.)
			var header =  getSUSRTableHeader(SUSRTable);
						
			//MERNA JEDNOTKA V SAMOSTATNOM STLPCI			
		    for(var j=0; j<header.length;j++)//cez vssetky riadky
			{	
				var columns = childElements(header[j]);				
				
				for(var k=0; k<columns.length;k++) // cez vsetky stlpce
				{							
					if(columns[k].innerHTML.search(rMernaJednotka)!= -1)
					{ 				
						columns[k].innerHTML
						var retObj = new Object();
						retObj.ntype = 1;
						retObj.stype = "MJSS";
						retObj.description = "Merná jednotka v samostatnom stĺpci";						
						return retObj;
					}
				}				
			}
			
			//TROJITE CLENENIE
			if(header.length == 3 )
			{	
			
				firstRowColumns = childElements(header[0]);
				if(firstRowColumns[0].rowSpan == 3 && firstRowColumns[0].colSpan == 1)
				{				
					//rowspan vsade 1 okrem prvej bunky prveho riadku
					var rowSpanError = false;
					for(var i = 0; i<firstRowColumns.length; i++)
					{		
						if(firstRowColumns[i].rowSpan !=1 && i > 0)
						{
							rowSpanError = true;
							break;
						}
					}										
					
					//rowspan vsade 1 okrem prvej bunky prveho riadku
					secondRowColumns = childElements(header[1]);					
					for(var i = 0; i<secondRowColumns.length; i++)
					{		
						if(secondRowColumns[i].rowSpan !=1)
						{
							rowSpanError = true;
							break;
						}
					}
					
					//ak su prve dva riadky OKs
					if(rowSpanError == false)				
					{				
						thirdRowColumns = childElements(header[2]);
						
						var makeBubbleArray = new Array();
						var postfixesArray  = new Array();
						var tableIsCorrect = false;
						
						for(var i = 0; i<thirdRowColumns.length; i++)
						{
						
							//iba jednoduche bunky
							if(thirdRowColumns[i].rowSpan == 1 && thirdRowColumns[i].colSpan == 1)							
							{
								if((columns[i].innerHTML.search(rPostfixWithCurrency)!= -1))
								{
									postfixesArray.push(rPostfix.exec(columns[i].innerHTML));
									makeBubbleArray.push(true);
									tableIsCorrect = true;
								}					
								else
								{
									postfixesArray.push(null);
									makeBubbleArray.push(false);
								}
							}
							else
							{
								rowSpanError = true;
								break;
							}
						}
					
						if(tableIsCorrect == true && rowSpanError == false)
						{
							var retObj = new Object();
							retObj.ntype = 2;
							retObj.stype = "3CMJ3R";							
							retObj.description = "Trojité členenie, merná jednotka v treťom riadku";
							retObj.makeBubble = makeBubbleArray;
							retObj.postfixes = postfixesArray;
							return retObj;
						}								
					}
				}				
			}
			
			//DVOJITE CLENENIE			
			
			if(header.length == 2)
			{				
				// MERNA JEDNOTKA V PRVOM RIADKU							
				var firstRowColumns = childElements(header[0]);		
				if(firstRowColumns[0].rowSpan == 2 && firstRowColumns[0].colSpan == 1)
				{				
					var makeBubbleArray = new Array();
					var postfixesArray  = new Array();
					var rowSpansArray   = new Array();
					
					var tableIsCorrect = false;	
					var rowSpanError   = false;
					var nowRowSpanOnlyOne = false;
				
					for(var i = 0; i<firstRowColumns.length; i++)
					{							
						//rowspan vsade 1 okrem x prvych stlpcov prveho riadku 
						if(firstRowColumns[i].rowSpan == 1)
						{							
							nowRowSpanOnlyOne = true;							
						}						
						
						if((firstRowColumns[i].rowSpan > 1 && nowRowSpanOnlyOne == true) ||
						   (firstRowColumns[i].colSpan > 1 && nowRowSpanOnlyOne == false))
						{							
							rowSpanError = true;
							break;							
						}											
							
						if(i>0) //okrem prveho stlpca
						{								
							for(var j=0; j<firstRowColumns[i].colSpan; j++)
							{
								rowSpansArray.push(firstRowColumns[i].rowSpan);
								
								if((firstRowColumns[i].innerHTML.search(rPostfixWithCurrency)!= -1))
								{
									postfixesArray.push(rPostfix.exec(firstRowColumns[i].innerHTML));
									makeBubbleArray.push(true);
									tableIsCorrect = true; // mam mernu jednotkuv prvom riadku :)
								}					
								else
								{
									postfixesArray.push(null);
									makeBubbleArray.push(false);
								}							
							}					
						}
					}
				
					if(tableIsCorrect == true && rowSpanError == false)
					{
						var secondRowColumns = childElements(header[1]);
						var indexCorrector = 0;
						for(var i = 0; i<rowSpansArray.length; i++)
						{	
							if(rowSpansArray[i] == 1)
							{
								//iba jednoduche bunky
								if(secondRowColumns[i-indexCorrector].rowSpan == 1 && secondRowColumns[i-indexCorrector].colSpan == 1)
								{
									if(secondRowColumns[i-indexCorrector].innerHTML.search(rNoBubbles)!= -1)
									{							
										makeBubbleArray[i] = false;						
									}	
								}	
								else							
								{
									rowSpanError = true;
									break;
								}
							}
							else
							{
								indexCorrector = indexCorrector + 1;
							}					
						}					
				
						if(tableIsCorrect == true && rowSpanError == false)
						{       						
							var retObj = new Object();
							retObj.ntype = 3;
							retObj.stype = "2CMJ1R";
							retObj.description = "Dvojité členenie, merná jednotka v prvom riadku";						
							retObj.makeBubble = makeBubbleArray;
							retObj.postfixes = postfixesArray;				

							return retObj;						
						}	
					}				
				
					// MERNA JEDNOTKA V DRUHOM RIADKU				
					//spocitame pocet stlpcov
						//rowspan vsade 1 okrem prvej bunky prveho riadku
						var rowSpanError = false;
						for(var i = 0; i<firstRowColumns.length; i++)
						{		
							if(firstRowColumns[i].rowSpan !=1 && i > 0)
							{
								rowSpanError = true;
								break;
							}
						}
					
						if(rowSpanError == false)
						{					
							var secondRowColumns = childElements(header[1]);
							var makeBubbleArray = new Array();
							var postfixesArray  = new Array();						
							var tableIsCorrect = false;
							
							for(var i = 0; i < secondRowColumns.length; i++)
							{	
								//iba jednoduche bunky
								if(secondRowColumns[i].rowSpan == 1 && secondRowColumns[i].colSpan == 1)
								{
									
									if((secondRowColumns[i].innerHTML.search(rPostfixWithCurrency)!= -1))
									{										
										postfixesArray.push(rPostfix.exec(secondRowColumns[i].innerHTML));
										makeBubbleArray.push(true);
										tableIsCorrect = true;
									}					
									else
									{
										postfixesArray.push(null);
										makeBubbleArray.push(false);
									}
								}
								else
								{
									rowSpanError = true;
									break;
								}
							}
						
							if(tableIsCorrect == true && rowSpanError == false)
							{
								var retObj = new Object();
								retObj.ntype = 4;
								retObj.stype = "2CMJ2R";
								retObj.description = "Dvojité členenie, merná jednotka v druhom riadku";						
								retObj.makeBubble = makeBubbleArray;
								retObj.postfixes = postfixesArray;						
								return retObj;
							}											
						}	
					
				}				
					
			}
			
			//JEDEN RIADOK HLAVICKY			
			if(header.length == 1)
			{				
				var firstRowColumns = childElements(header[0]);				
				
				var makeBubbleArray = new Array();
				var postfixesArray  = new Array();
				var tableIsCorrect = false;
				var rowSpanError   = false;
				
				for(var i = 0; i<firstRowColumns.length; i++)
				{		
					//iba jednoduche bunky
					if(i>0)
					{					
						if(firstRowColumns[i].rowSpan == 1 && firstRowColumns[i].colSpan == 1)
						{
							if(firstRowColumns[i].innerHTML.search(rPostfixWithCurrency)!= -1)
							{	
								
								postfixesArray.push(rPostfix.exec(firstRowColumns[i].innerHTML));
								makeBubbleArray.push(true);
								tableIsCorrect = true;
							}					
							else
							{
								postfixesArray.push(null);
								makeBubbleArray.push(false);
							}
						}
						else
						{					
							rowSpanError = true;
							break;
						}
					}
				}			
				
				if(tableIsCorrect == true && rowSpanError == false)
				{
					var retObj = new Object();
					retObj.ntype = 5;
					retObj.stype = "1CMJ1R";
					retObj.description = "Jeden riadok hlavicky, merná jednotka v prvom riadku";		
					retObj.makeBubble = makeBubbleArray;
					retObj.postfixes = postfixesArray;
					return retObj;
				}				
			}
			
			
			//MERNA JEDNOTKA NIEKDE NAD TAB.
			
			{
					

					var firstRow = header[0];


					var SUSRTabStartPos = document.body.innerHTML.stripTags().indexOf(firstRow.innerHTML.stripTags());
					var postfixWithCurrencyStartPos = document.body.innerHTML.stripTags().search(rPostfixWithCurrency);
					
					if(	SUSRTabStartPos > postfixWithCurrencyStartPos && postfixWithCurrencyStartPos != -1 )
					{
						var retObj = new Object();
						retObj.ntype = 6;
						retObj.stype = "MJNT";
						retObj.description = "Merná jednotka nad tabuľky";							
						var postfixWithCurrency = rPostfixWithCurrency.exec(document.body.innerHTML);
						if(postfixWithCurrency != null)
						{
							retObj.postfix = rPostfix.exec(postfixWithCurrency[0]);
						}
						else
						{
							retObj.postfix = null;
						}
							
						return retObj;					
					}					
			}
			
			return false
	}
	
	
	function makeEuBubbles(where,pageOnLoad)
	{	
	
		if(pageOnLoad)
		{		
			
			initRegExp();						
			document.body.innerHTML = document.body.innerHTML.replace(/(\x0a\x0d|\x0d\x0a)/g," ");//opera mozilla fix
		}
		
		if(where == 'table')
		{
			var SUSRtables = $$('.tabulkaSUSR');			
			var CorrectSUSRTableExist = false;
			//je tu vobec nejaka SUSRtab?
						
			if(SUSRtables.length == 0)
			{			
				return false;
			}
		
			for(var i = 0; i< SUSRtables.length; i++)	
			{		
				var tableType = getTableType(SUSRtables[i]);
				//ak je MJNT ..tak je pripustna iba jedna SUSR tabulka
				if(tableType.stype == 'MJNT' && SUSRtables.length > 1 )
				{				
					CorrectSUSRTableExist = false;
					break;
				}
				
				typeObjs.push(tableType);			
				if(tableType != false)
				{
					CorrectSUSRTableExist = true;
				}
			}
		
		
			if(CorrectSUSRTableExist != false)
			{
			
				if(pageOnLoad)
				{										
					addEuBubblesLink();
				}			
				
				var makeEUbubbles = true
			
				var makeEUbubblesFromCoockie = getCookie("makeEUbubbles");
				
				switch(makeEUbubblesFromCoockie)
				{
					case "":
					{
						if(isIE6)
						{
							setCookie("makeEUbubbles","no");
							makeEUbubbles = false;
						}
						else
						{
							setCookie("makeEUbubbles","yes");
							makeEUbubbles = true;
						}
						break;
					}
					case "yes":
					{
						makeEUbubbles = true;
						break;
					}
					case "no":
					{
						makeEUbubbles = false;
						break;
					}
				}									
						
				if(makeEUbubbles)
				{		
					inicialized = true;
					showLoadingDiv();					
					setLinkAsDisableLink();
					setTimeout('makeEuBubblesInSUSRTables()',100);			
				}
				else
				{								
					setLinkAsEnableLink();					
				}			
			}				
		}
		
		if (where == 'plainText')
		{
			makeEuBubblesInPlainText();
		}	
	}
	
	function makeEuBubblesInSUSRTables()
	{	
	
		var SUSRtables = $$('.tabulkaSUSR');
		
		for(var i = 0; i< SUSRtables.length; i++)	
		{
			var typeObj = typeObjs[i];
								
			if(typeObj != false)
			{
				switch(typeObj.stype)
				{
					case "MJSS":
					{				
						makeBubblesInMJSS(SUSRtables[i]);
						break;
					}
					case "MJNT":
					{						
						makeBubblesInMJNT(typeObj,SUSRtables[i]);
						break;
					}
					case "3CMJ3R":
					{
						makeBubblesInXCMJPR(typeObj,SUSRtables[i]);					
						break;
					}				
					case "2CMJ2R":
					{
						makeBubblesInXCMJPR(typeObj,SUSRtables[i]);					
						break;
					}				
					case "2CMJ1R":
					{					
						makeBubblesInXCMJPR(typeObj,SUSRtables[i]);					
						break;
					}				
					case "1CMJ1R":
					{
						makeBubblesInXCMJPR(typeObj,SUSRtables[i]);					
						break;
					}				
					default:
					{
						alert("Unknown table type");
						break;
					}	
				}			
			}
			else
			{
				//alert("Error in getTableType - maybe no SUSRTable");			
			}					
		}
		
		setTimeout('Effect.DropOut("loading_div")',100);
		//alert(cas);		
	}	
	
	function disableEuBubbles()
	{		
		setCookie("makeEUbubbles","no");
		setLinkAsEnableLink();
		for(var i=0;i<EuBubbles.length;i++)
		{
			EuBubbles[i].destroy();
		}
	}
	
	function enableEuBubbles()
	{	
		setCookie("makeEUbubbles","yes");
		setLinkAsDisableLink();
		for(var i=0;i<EuBubbles.length;i++)
		{
			EuBubbles[i].registerEvents();
		}
	}
	
	function setLinkAsDisableLink()
	{
		$("eu_bubbles_link_img").src="/tooltip/icons/euro_bubbles_off.png";
		$("eu_bubbles_link_text").innerHTML="Deactivate eurocalc";	
	}
	
	function setLinkAsEnableLink()
	{
		$("eu_bubbles_link_img").src="/tooltip/icons/euro_bubbles_on.png";
		$("eu_bubbles_link_text").innerHTML="Activate eurocalc";
	}

	
	function switchEuBubbles()
	{		
		var loading_div = $('loading_div');
		//nahravanie ukoncene..alebo sa ani nezacalo
		if(loading_div == undefined || loading_div.getStyle('display') != 'block')
		{		
			switch(getCookie("makeEUbubbles"))
			{
				case "yes":					
					disableEuBubbles();
					break;
				case "no":				
					if(inicialized)
					{
						enableEuBubbles();						
					}
					else
					{					
						setCookie("makeEUbubbles","yes");
						makeEuBubbles('table',false);					
					}
					break;
				default:
					break;
			}
		}
		
		
		return false;		
	}
	
	
	//bubliny do tabuliek
	function makeBubblesInMJSS(table)
	{
			var rows = childElements(table.down(0));
			for(var j=0; j<rows.length;j++)
			{
				var postfix = null;
				var tryMakeEuBubble = false;
				
				if(rows[j].className.search(/riadokTabulkySUSR/) == -1)
				{		
					var columns  = childElements(rows[j]);													
						
					for(var l=0;l<columns.length;l++)
					{
							
						if(tryMakeEuBubble)
						{
							try //pokusam sa vytvorit...tak ako pred tym..ak sa nepodari ideme dalej
							{
								makeBubbleInCell(columns[l],postfix);								
							}
							catch(err)
							{
							}
						}
						else 
						{	
							if(columns[l].innerHTML.search(rPostfixWithCurrency)!= -1)
							{				

								postfix = rPostfix.exec(columns[l].innerHTML);
								tryMakeEuBubble = true;																		
							}
						}							
					}
				}
			}				
		
	}
	
	//bubliny do tabuliek
	function makeBubblesInMJNT(typeObj,table)
	{		
	
		
				
				var rows = childElements(table.down(0));				
				
				for(var j=0; j<rows.length;j++)
				{				
					
					
					if(rows[j].className.search(/riadokTabulkySUSR/) == -1)
					{						
						var columns = childElements(rows[j]);												
						for(var l=1;l<columns.length;l++)//prvy stlpec sa nebublinkuje
						{							
							try //pokusam sa vytvorit...tak ako pred tym..ak sa nepodari ideme dalej
							{																
								makeBubbleInCell(columns[l],typeObj.postfix);								
							}
							catch(err)
							{
								
							}
						}					
					}
				}
						
	}
	
	function makeBubblesInXCMJPR(typeObj,table)
	{		

		
		//najdem vsetky tab. z dokumentu a prejdem cez ne
			var rows = childElements(table.down(0));				
				
			for(var j=0; j<rows.length;j++) 
			{					
				if(rows[j].className.search(/riadokTabulkySUSR/) == -1)
				{
					var columns = childElements(rows[j]);
					
					var correctLength = columns.length-1;
					
					if(correctLength == typeObj.postfixes.length)
					{
						for(var l=0;l<columns.length;l++)
						{							
							var correctIndex = l-1;
															
							if(typeObj.makeBubble[correctIndex])
							{								
								try //pokusam sa vytvorit...tak ako pred tym..ak sa nepodari ideme dalej
								{
									makeBubbleInCell(columns[l],typeObj.postfixes[correctIndex]);								
								}
								catch(err)
								{
									
								}	
							}										
							
						}	
					}
				}
			}
					
	}
	
	
	//bubliny do plain textu
	function makeEuBubblesInPlainText()
	{		
		//oznackujeme si "euBubble" podozrive useky
		
		document.body.innerHTML = document.body.innerHTML.replace(rNumberWithCurrency,"<span class='euBubbleTarget'>$1</span>");
		
		var EUarray = document.getElementsByClassName('euBubbleTarget');
		for(var i=0; i<EUarray.length;i++) // prejdeme cez podozrive useky a pokusime sa vytvorit bublinu (ak sa nepodari ...nic sa nedeje..kod facha dalej)
		{
			try 
			{
				//vytvorim jedinecne id
				EUarray[i].id = "euBubbleId" + i;
				nObj = parseNumber(EUarray[i].innerHTML);
				if(nObj != false)
				{																								
					//bublina								
					EuBubbles.push(new Tooltip("euBubbleId" + i,formatToOutput(nObj,rateOfExchange,targetCurrencyOut)));					
				}		
			}
			catch(err)//nic sa nedeje idem..bublina sa nevytvorila..my ale fachame dalej
			{
			}
		}		
	}	
	
	function makeBubbleInCell(cell,postfix)
	{
		var nObj = null;
		if(cell.down(0) == undefined)
		{
			nObj = parseNumber(cell.innerHTML);
		}
		else
		{
			nObj = parseNumber(cell.down(0).innerHTML);
		}								
								
		if(nObj != false)
		{
			nObj.postfix = postfix;
			if(cell.down(0) == undefined)
			{										
				cell.innerHTML = "<span  id='euBubbleInTableId" + euBubbleIdCounter + "' >" + cell.innerHTML + "</span>";										
			}
			else
			{
				cell.down(0).innerHTML = "<span   id='euBubbleInTableId" + euBubbleIdCounter + "' >" + cell.down(0).innerHTML + "</span>";										
			}
																									
			//bublina										
			EuBubbles.push(new Tooltip("euBubbleInTableId" + euBubbleIdCounter,formatToOutput(nObj,rateOfExchange,targetCurrencyOut)));
			euBubbleIdCounter++;									
		}									
	}	
	
	function showLoadingDiv()


	{
		var clientXY = clientSize();
		var clientWidth = clientXY[0];
		var clientHeight = clientXY[1];		
					
		
		var div  = $(document.createElement("div"));		
		var viewPort =  document.viewport.getScrollOffsets();

		div.id="loading_div";
			
		div.appendChild(document.createTextNode("Initializing eurocalc..."));
			
		div.setStyle({
					width:'300px',						
					paddingTop:'25px',
					paddingBottom:'25px',
					textAlign:'center',						
					whiteSpace: "nowrap",
					border: "#84A6F4 2px solid",
					backgroundColor: "#D3DDF8",
					position: "absolute",
					zIndex: "100",
					top: parseInt((clientHeight/2) + viewPort[1]) + "px",
					left: parseInt((clientWidth/2) - (140)) +  "px",
					font: "20px Arial, Helvetica, sans-serif"	  
					});    		
			
		div.setOpacity(0.85);		
		document.body.appendChild(div);	
	}
	
	function addEuBubblesLink()
	{
		img  = $(document.createElement("img"));
		span = $(document.createElement("span"));				
										
		img.id  = 'eu_bubbles_link_img';
		span.id = 'eu_bubbles_link_text';							
				
		$('eu_bubbles_link_container').appendChild(img);
		$('eu_bubbles_link_container').appendChild(span);
		$('eu_bubbles_link_container').setStyle({cursor:"Pointer"});										
					
		$('eu_bubbles_link_container').observe('mouseover',function(){span.setStyle({textDecoration:"underline"});});
		$('eu_bubbles_link_container').observe('mouseout',function(){span.setStyle({textDecoration:"none"});});										
		$('eu_bubbles_link_container').observe('click',function(){return switchEuBubbles();});
	}
	
		
	//funkc na zaokruhlovanie na dany pocet des. miest (js take nieco neobsahuje...aj ja som sa cudoval ;-))	
	function roundNumber(number,decimal_points)
	{
		return Math.round(number*Math.pow(10,decimal_points))/Math.pow(10,decimal_points);
	}

	function childElements(element)
	{
		if(isIE)
		{					
			return element.childNodes;
		}	
		else
		{
			return element.childElements();
		}				
	}
	
	function clientSize()
	{
		var myWidth = 0;
		var   myHeight = 0;
		if( typeof( window.innerWidth ) == 'number' )
		{
			//Non-IE
			myWidth = window.innerWidth;
			myHeight = window.innerHeight;
		}
		else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
		{
			//IE 6+ in 'standards compliant mode'
			myWidth = document.documentElement.clientWidth;
			myHeight = document.documentElement.clientHeight;
		}
		else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) )
		{
			//IE 4 compatible
			myWidth = document.body.clientWidth;
			myHeight = document.body.clientHeight;
		}
	return new Array(myWidth,myHeight);
  
}

function setCookie(c_name,value)
{
	document.cookie=c_name+ "=" +escape(value) + "";
}

function getCookie(c_name)
{	
	if (document.cookie.length>0)
	{
		
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1)
		{ 
			c_start=c_start + c_name.length+1; 
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
		} 
	}
	return "";
}





