var polishLetters = 	new Array( '\u0105', '\u0119', '\u00F3', '\u015B', '\u0142', '\u017C', '\u017A', '\u0107', '\u0144', '\u0104', '\u0118', '\u00D3', '\u015A', '\u0141', '\u017B', '\u0179', '\u0106', '\u0143' );
var nonPolishLetters = 	new Array( 'a', 'e', 'o', 's', 'l', 'z', 'z', 'c', 'n', 'A', 'E', 'O', 'S', 'L', 'Z', 'Z', 'C', 'N' );

var visible_style;
visible_style="block";

function setDivStyle ( divName, style ) {
    if (document.getElementById) {
		if (document.getElementById(divName) != null)
			document.getElementById( divName ).style.display = style;
	} else if (document.all) {
        document.all[ divName ].style.display = style;
    } else if (document.layers) {
        document.layers[ divName ].style.display = style;
    }
}

function readCookie( name ) {
	//metoda zwraca wartosc zapisana w cookie lub null jesli taka wartosc nie zostala jeszcze zapisana(pierwsze wejscie na strone)
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0)
		{
			return c.substring(nameEQ.length,c.length);
		}
	}
	
	if((name == 'sir')  || (name == 'popc') || (name == 'lastq'))
	{
		return 0; //te belki maja byc domyslnie zwiniete
	} 
	return 1; //wszystkie pozostale belki maja byc rozwiniete
}


/*
niestety javascript nie obsluguje takiego przeciazania metod
function readCookie( name , def ) {
	//metoda zwraca wartosc zapisana w cookie lub podana wartosc def jesli taka wartosc nie zostala jeszcze zapisana(pierwsze wejscie na strone)
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) 
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0)
		{
			return c.substring(nameEQ.length,c.length);
		}
	}
	return def; //zwroci def tylko jesli w cookie nie bedzie juz zapisana jakas wartosc
}
*/

function saveCookie ( prefix , value ) {
    var today = new Date();
    today.setTime( Date.parse( today ) + 14*24*60*60*1000);
    document.cookie = prefix + '=' + value + ';EXPIRES='+ today.toUTCString();
}

function showDiv ( divName ) {
    setDivStyle ( divName, visible_style );
}

function hideDiv ( divName ) {
    setDivStyle ( divName , "none" );
}
//posiada odpowiednik po stronie serwera
function escapeStringParameter( param ) {
	var tmp = param;
	tmp = tmp.replace(/\%/g, '%25');
	tmp = tmp.replace(/-/g, '~');
	tmp = tmp.replace(/_/g, '%5F');
	tmp = tmp.replace(/\?/g, ' ');
	tmp = tmp.replace(/\s/g, '+');
	tmp = tmp.replace(/\//g, ' ');
	// tmp = tmp.replace(/;/g, '%3B');
	tmp = tmp.replace(/:/g, '%3A');
	tmp = tmp.replace(/\'/g, ' ');
	tmp = tmp.replace(/;/g, ' ');
	tmp = tmp.replace(/=/g, '%3D');
	tmp = tmp.replace(/\@/g, '%40');
	tmp = tmp.replace(/\#/g, '%23');
	tmp = tmp.replace(/\$/g, '%24');
	tmp = tmp.replace(/\"/g, '%22');
	return tmp.clean();
}
//posiada odpowiednik po stronie serwera
function escapeHTML(str) {
	return str.replace(/&/g, '&amp;').replace(/\"/g, '&quot;').replace(/\'/g, '&apos;').replace(/\</g, '&lt;').replace(/\>/g, '&gt;');
}
//
function cleanURL( param ) {
	var tmp = param;
	tmp = tmp.replace(/,/g, '');
	tmp = tmp.replace(/\./g, '');
	tmp = tmp.replace(/\"/g, '');
	return tmp;
}

function cleanPolishLetters( param ) {
	var out = '';
	for ( var i = 0; i < param.length; i++ ) {
		var ch = param.charAt(i);
		for ( var j = 0; j < polishLetters.length; j++ ) {		
			if ( ch == polishLetters[j] ) {
				ch = nonPolishLetters[j];
			}			
		}
		out += ch;
	}
	return out;
}

function esReg(string)
{
	string=string.replace(/\\/g,"\\\\");
	string=string.replace(/\+/g,"\\+");
	string=string.replace(/\|/g,"\\|");
	string=string.replace(/\(/g,"\\(");
	string=string.replace(/\)/g,"\\)");
	string=string.replace(/\[/g,"\\[");
	string=string.replace(/\{/g,"\\{");
	string=string.replace(/\^/g,"\\^");
	string=string.replace(/\$/g,"\\$");
	string=string.replace(/\*/g,"\\*");
	string=string.replace(/\?/g,"\\?");
	string=string.replace(/\./g,"\\.");
	return string;
}

function setStartPage(elem,adres)
{
	if (document.all)
	{
		elem.setHomePage("http://www.pf.pl/serwis/yp-index.html");
    }
    else
    { 
        if(navigator.appName.indexOf('Netscape')!=-1)
        {
             var win = window.open("http://www.pf.pl/serwis/ulubione.html?instructionType=0","OpenWindow",'width=535,height=569,resizable=0,status=0,scrollbars=0,menubar=no');
             win.focus(); 
        }   
    }
    return false;
}



//funkcje wykorzystywane w contactList oraz liscie wynikow wyszukiwania do generowania wlasciwych linkow
function generateCompanySendMailLink(companyName,companyId, categoryId){
	return cleanURL(cleanPolishLetters(escapeStringParameter(companyName)))+'-C'+companyId+'B'+categoryId+'_wyslij-email-do-firmy.html';
}


function getEndingType(value) {
	var val = Math.abs(value);
	var tmp = val % 10;
	var tmp2 = val % 100;
	if (val == 1) return 1;
	else if ((tmp2 == 12) || (tmp2 == 13) || (tmp2 == 14)) return 3;
	else if ((tmp == 2) || (tmp == 3) || (tmp == 4)) return 2;
	else return 3;
}
