/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawienia okna
**/
var mini_window = 'directories=no,location=no,menubar=no,resizable=yes,scrollbars=yes,toolbar=no,height=500,width=600';

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Wysyla dane z formularza pod dany adres w danym oknie
 *  @param	form	formularz
 *  @param	action	adres, pod ktory wyslac dane
 *  @param	target	gdzie otworzyc adres
**/
function safe_post(form, action, target) {
	var tmp_action = form.action;
	var tmp_target = form.target;

	form.action = action;
	form.target = target;
	form.submit();

	form.action = tmp_action;
	form.target = tmp_target;
} // function safe_post

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Otwiera link w osobnym oknie
 *  @param	target		nazwa okna, w ktorym link ma byc otwarty
 *  @param	action		adres do otwarcia
 *  @param	window_param	parametry okna
 *  @param	form_name	jesli podana, to pod podany url wysylane sa dane z formularza
**/
function pokaz_okno(target, action, window_params, form_name) {

	var tmp_window;

	if(form_name == null) {
		// otworz link
		tmp_window = window.open(action, target, window_params);
		tmp_window.focus();
	}
	else {
		// wyslij dane z formularza
		var tmp_form = document.forms[form_name];

		if(tmp_form != null) {
			// upewnij sie, ze okno jest otwarte
			tmp_window = window.open('about:blank', target, window_params);
			safe_post(tmp_form, action, target);
			tmp_window.focus();
		}
	}
} // function pokaz_okno

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Przelacza style.display obiektu: block <-> none
 *  @param	id	id obiektu
 *  @param	stan	nowy stan widocznosci [true | false | null - przelacz]
**/
function przelacz_widoczne(id, stan) {

	var pole = document.getElementById(id);

	if(pole != null) {
		switch(stan) {
			case true:
				pole.style.display = 'block';
				break;
			case false:
				pole.style.display = 'none';
				break;
			case null:
				if(pole.style.display == 'block')
					pole.style.display = 'none';
				else
					pole.style.display = 'block';
				break;
		}
	}
} // function przelacz_widoczne

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Sprawdza, czy jest wybrany ktorys z checkbox'ow o podanym prefiksie
 *  Powinno byc dostepne pole *_count z iloscia checkbox'ow
 *  @param	prefix	prefiks id pol
 *  @return	bool
**/
function czy_wybrane(prefix) {

	var grupa_nr;
	var grupa_count;
	var pole_nr;
	var pole_count;
	var pole;
	var wybrane = false;

	// pobierz ilosc grup
	grupa_count = document.getElementById(prefix + '_count');
	if(grupa_count != null) {
		for(grupa_nr = 0; grupa_nr < grupa_count.value && !wybrane; grupa_nr++) {
			// pobierz ilosc pol
			pole_count = document.getElementById(prefix + '_' + grupa_nr + '_count');
			if(pole_count != null) {
				for(pole_nr = 0; pole_nr < pole_count.value && !wybrane; pole_nr++) {
					pole = document.getElementById(prefix + '_' + grupa_nr + '_' + pole_nr);
					if(pole.checked)
						wybrane = true;
				}
			}
		}
	}

	return wybrane;
} // function czy_wybrane

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia wybor wszystkich checkbox'y o podanym prefiksie na stan przekazanego checkbox'a
 *  Powinno byc dostepne pole *_count z iloscia checkbox'ow
 *  @param	check	checkbox, z ktorego nalezy pobrac wartosc
 *  @param	prefix	prefiks id pol
**/
function zaznacz_wszystko(prefix, check) {

	var count;
	var i;
	var pole;

	// pobierz ilosc pol
	count = document.getElementById(prefix + '_count');
	if(count != null) {
		for(i = 0; i < count.value; i++) {
			pole = document.getElementById(prefix + '_' + i);
			pole.checked = check.checked;
		}
	}

} // function zaznacz_wszystko

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia nazwe kolumny do sortowania prasy - jesli nazwa jest taka sama jak poprzednio, to zmienia kierunek
 *  Postuje formularz zawierajacy pole z nazwa kolumny
 *  @param	nazwa_kolumny	kolumna, po ktorej beda sortowane wyniki
**/
function ustaw_sortowanie_prasa(nazwa_kolumny) {

	var kolumna = document.getElementById('sortowana_kolumna_prasa_id');
	var kierunek = document.getElementById('kierunek_sortowania_prasa_id');

	// jesli drugi raz wybrana na sama kolumna, to zmien kierunek
	if(kolumna.value == nazwa_kolumny) {
		if(kierunek.value == 'ASC')
			kierunek.value = 'DESC';
		else
			kierunek.value = 'ASC';
	}
	else {
		kolumna.value = nazwa_kolumny;
		kierunek.value = 'ASC';
	}

	kolumna.form.submit();

} // function ustaw_sortowanie_prasa

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia nazwe kolumny do sortowania internetu - jesli nazwa jest taka sama jak poprzednio, to zmienia kierunek
 *  Postuje formularz zawierajacy pole z nazwa kolumny
 *  @param	nazwa_kolumny	kolumna, po ktorej beda sortowane wyniki
**/
function ustaw_sortowanie_internet(nazwa_kolumny) {

	var kolumna = document.getElementById('sortowana_kolumna_internet_id');
	var kierunek = document.getElementById('kierunek_sortowania_internet_id');

	// jesli drugi raz wybrana na sama kolumna, to zmien kierunek
	if(kolumna.value == nazwa_kolumny) {
		if(kierunek.value == 'ASC')
			kierunek.value = 'DESC';
		else
			kierunek.value = 'ASC';
	}
	else {
		kolumna.value = nazwa_kolumny;
		kierunek.value = 'ASC';
	}

	kolumna.form.submit();

} // function ustaw_sortowanie_internet

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia nazwe kolumny do sortowania radia - jesli nazwa jest taka sama jak poprzednio, to zmienia kierunek
 *  Postuje formularz zawierajacy pole z nazwa kolumny
 *  @param	nazwa_kolumny	kolumna, po ktorej beda sortowane wyniki
**/
function ustaw_sortowanie_radio(nazwa_kolumny) {

	var kolumna = document.getElementById('sortowana_kolumna_radio_id');
	var kierunek = document.getElementById('kierunek_sortowania_radio_id');

	// jesli drugi raz wybrana na sama kolumna, to zmien kierunek
	if(kolumna.value == nazwa_kolumny) {
		if(kierunek.value == 'ASC')
			kierunek.value = 'DESC';
		else
			kierunek.value = 'ASC';
	}
	else {
		kolumna.value = nazwa_kolumny;
		kierunek.value = 'ASC';
	}

	kolumna.form.submit();

} // function ustaw_sortowanie_radio

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia nazwe kolumny do sortowania tv - jesli nazwa jest taka sama jak poprzednio, to zmienia kierunek
 *  Postuje formularz zawierajacy pole z nazwa kolumny
 *  @param	nazwa_kolumny	kolumna, po ktorej beda sortowane wyniki
**/
function ustaw_sortowanie_tv(nazwa_kolumny) {

	var kolumna = document.getElementById('sortowana_kolumna_tv_id');
	var kierunek = document.getElementById('kierunek_sortowania_tv_id');

	// jesli drugi raz wybrana na sama kolumna, to zmien kierunek
	if(kolumna.value == nazwa_kolumny) {
		if(kierunek.value == 'ASC')
			kierunek.value = 'DESC';
		else
			kierunek.value = 'ASC';
	}
	else {
		kolumna.value = nazwa_kolumny;
		kierunek.value = 'ASC';
	}

	kolumna.form.submit();

} // function ustaw_sortowanie_tv

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Ustawia nazwe kolumny do sortowania dodatkow - jesli nazwa jest taka sama jak poprzednio, to zmienia kierunek
 *  Postuje formularz zawierajacy pole z nazwa kolumny
 *  @param	nazwa_kolumny	kolumna, po ktorej beda sortowane wyniki
**/
function ustaw_sortowanie_dodatki(nazwa_kolumny) {

	var kolumna = document.getElementById('sortowana_kolumna_id');
	var kierunek = document.getElementById('kierunek_sortowania_id');

	// jesli drugi raz wybrana na sama kolumna, to zmien kierunek
	if(kolumna.value == nazwa_kolumny) {
		if(kierunek.value == 'ASC')
			kierunek.value = 'DESC';
		else
			kierunek.value = 'ASC';
	}
	else {
		kolumna.value = nazwa_kolumny;
		kierunek.value = 'ASC';
	}

	kolumna.form.submit();

} // function ustaw_sortowanie_prasa

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Sprawdza, czy wszystkie w podanym polu select jest wybrane nie wiecej niz maksimum pozycji
 *  @param	maksimum	ile maksymalnie moze byc wybranych
 *  @return	bool
**/
function sprawdz_max_wybranych(pole, maksimum) {
	var i = 0;
	var ile = 0;

	while(i < pole.options.length && ile <= maksimum) {
		if(pole.options[i].selected)
			ile++;
		i++;
	}

	return ile <= maksimum;

} // function sprawdz_max_wybranych

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Wpisuje wybrany jezyk do pola jezyk_id i postuje formularz zawierajacy to pole
**/
function ustaw_jezyk(jezyk, post) {

	var jezyk_pole = document.getElementById('jezyk');

	if(jezyk_pole != null) {
		jezyk_pole.value = jezyk;

		if(post)
			jezyk_pole.form.submit();
	}
} // function ustaw_jezyk

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Sprawdza poprawnosc wprowadzonej daty w formacie 'dd-mm-yyyy'
**/
function spr_poprawnosc_daty(data) {

	var tab = data.split('-');
	var d = new Date(tab[2],(tab[1]-1),tab[0]);
	if ((d.getFullYear() != tab[2]) || (d.getMonth() != (tab[1]-1)) || (d.getDate() != tab[0]))
		return false;

	return true;
} // function spr_poprawnosc_daty

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Sprawdza poprawnosc wprowadzonych dat (daty od i daty do) w formacie 'dd-mm-yyyy' i przypisuje kryteria wyszukiwania
**/
function spr_dane() {
	var daty_ok = true;
	if(!spr_poprawnosc_daty(document.getElementById('f_data_od').value)) {
		daty_ok = false;
		document.getElementById('f_data_od').focus();
	}
	else {
		if(!spr_poprawnosc_daty(document.getElementById('f_data_do').value)) {
			daty_ok = false;
			document.getElementById('f_data_do').focus();
		}
	}

	if(!daty_ok)
		alert(document.getElementById('komunikat_bledny_format_daty').value);
	else {
		document.getElementById('nr_str').value = 1;
		document.getElementById('slowo').value = document.getElementById('f_slowo').value;
		document.getElementById('profil').value = document.getElementById('f_profil').value;
		document.getElementById('data_od').value = document.getElementById('f_data_od').value;
		document.getElementById('data_do').value = document.getElementById('f_data_do').value;
	}
	
	return daty_ok;
} // function spr_dane

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/**
 *  Funkcja przekazująca nr kolejnej strony wynikow
**/
function stronicowanie_dodatki(nr_str) {

	var formularz = document.getElementById('dodatki_tematyczne_form');
	document.getElementById('nr_str').value = nr_str;
	formularz.submit();
} // function stronicowanie_dodatki

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */



