﻿
var regexpPrzecinek = /,/g;
var regexpKropka = /\./g;
var regexpBialyZnak = /[\s]/g;
var regexpWielePalek = /\|{2,}/g;
var regexpPalkaPoczatek = /^\|/g;
var regexpPalkaKoniec = /\|$/g;

// wysokość ekranu
function scrHeight() {
	if (window.innerHeight != null) {return window.innerHeight;}
	if (document.body.clientHeight != null) {return document.body.clientHeight;}
	return(null);
}

// szerokość ekranu
function scrWidth() {
	if (window.innerWidth != null) {return window.innerWidth;}
	if (document.body.clientWidth != null) {return document.body.clientWidth;}
	return(null);
}

// -----------------------------------------------------------------------

// utworzenie cookie
function setCookie(c_name, value, expiredays) 
{
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name+ "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}

// ustawienie stanu [pokazanie / ukrycie] obiektu ['tbl' + id]
function pokazUkryjPanel(id, stan)
{
	tbl = document.all['tbl' + id].style;

	if (stan == 0)
	{
		tbl.display = 'none';
		document.all['sp' + id].innerHTML = '<a href=\"javascript:pokazUkryjPanel(' + id + ', 1);\" class=\"small\">pokaż szczegóły</a>'
		setCookie('tbl' + id, 0, 31);
	}
	else if(stan == 1)
	{
		tbl.display = 'block';
		document.all['sp' + id].innerHTML = '<a href=\"javascript:pokazUkryjPanel(' + id + ', 0)\" class=\"small\">ukryj</a>';
		setCookie('tbl' + id, 1, 31);
	}
}

// -----------------------------------------------------------------------

// drukowanie
var wnd_drukuj;

function otworzOknoDrukowania(idAkcja, drukowanieKryteria, szerokoscOkna, wysokoscOkna) {
	adres = '../_Drukuj.aspx?a=' + idAkcja + '&p=' + drukowanieKryteria;

	if (!wnd_drukuj || wnd_drukuj.closed) {
		wnd_drukuj = window.open(adres, "drukuj", "scrollbars=1,width=" + szerokoscOkna + ",height=" + wysokoscOkna);
	}
	else {
		wnd_drukuj.location = adres;
		wnd_drukuj.focus();
	}
}

function drukujDokument() {
	window.print();
}

// -----------------------------------------------------------------------

// powiększenie obrazka
var czyPowiekszenie = false;
var powiekszenieSciezka = "";

var przewiniecieY = 0;

var szerokoscObrazka = 0;
var wysokoscObrazka = 0;

var ladowanieId = null;

function powieksz(sciezka)
{
	czyPowiekszenie = true;
	
	powiekszenieSciezka = sciezka;

	// okno ładowania
	document.all('divOknoLadowanie').style.top = przewiniecieY;
	document.all('divOknoLadowanie').style.visibility = 'visible';

 	ladowanieId = window.setTimeout('zaladujObrazek();', 0);
}

function zaladujObrazek()
{
	document.all('imgObrazek').src = powiekszenieSciezka;
}

function zamknijPodglad()
{
	window.clearTimeout(ladowanieId);

	czyPowiekszenie = false;

	// okno ładowania
	document.all('divOknoLadowanie').style.visibility = 'hidden';
	// okno podglądu
	document.all('divOknoPowiekszenie').style.visibility = 'hidden';
}

function obrazekZaladowanyTimeout()
{
	if (!czyPowiekszenie)
	{ 
		return;
	}

	// timeout [1 sekunda]
	ladowanieId = window.setTimeout('obrazekZaladowany();', 1000);
}

function obrazekZaladowany()
{
	szerokoscObrazka = document.all('imgObrazek').width;
	wysokoscObrazka = document.all('imgObrazek').height;

	// okno ładowania
	document.all('divOknoLadowanie').style.visibility = 'hidden';
	// okno podglądu
	document.all('divOknoPowiekszenie').style.width = szerokoscObrazka;
	document.all('divOknoPowiekszenie').style.height = wysokoscObrazka;
	
	document.all('divOknoPowiekszenie').style.left = (scrWidth() / 2) - (szerokoscObrazka / 2);
	document.all('divOknoPowiekszenie').style.top = (scrHeight() / 2) - (wysokoscObrazka / 2) + przewiniecieY;

	document.all('divOknoPowiekszenie').style.visibility = 'visible';
}

window.onscroll = function() 
{
	przewiniecieY = document.body.scrollTop;

	if (czyPowiekszenie)
	{
		document.all('divOknoLadowanie').style.top = przewiniecieY;
		document.all('divOknoPowiekszenie').style.top = (scrHeight() / 2) - (wysokoscObrazka / 2) + przewiniecieY;
	}
}

// zablokowanie kontrolki [disabled = true]
var uchwytKontrolkiDoZablokowania = null;

function zablokujKontrolke(uchwytKontrolki) {
    uchwytKontrolkiDoZablokowania = uchwytKontrolki;

    window.setTimeout('zablokujKontrolke2();', 20);

    return true;
}

function zablokujKontrolke2() {
    uchwytKontrolkiDoZablokowania.disabled = true;
}

// -----------------------------------------------------------------------

// kontrola długości wpisywanego tekstu
// [przycięcie, jeżeli długość przekracza wartość 'maxDlugosc']
function sprawdzDlugoscTekstu(poleFormularza, maxDlugosc)
{
	if (poleFormularza.value.length > maxlimit)
	{
		poleFormularza.value = poleFormularza.value.substring(0, maxlimit);
	}
}

//

// sprawdzenie czy użytkownik zaznaczył pole: 'Wyrażam zgodę...'
function czyWyrazonoZgode(source, arguments)
{
	var liczZaznaczoneKontrolki = 0;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('WyrazenieZgody', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);

			if (uchwytKontrolki.checked == true)
			{
				liczZaznaczoneKontrolki++;
			}
		}
	}

	if (liczZaznaczoneKontrolki == 0)
	{
		arguments.IsValid = false;
	}
}

// -----------------------------------------------------------------------

// KALENDARZ WYDARZEŃ

// kalendarz, pokazanie listy wydarzeń
function pokazListeWydarzen(listaId)
{
	var uchwytKontrolki_lista = document.getElementById(listaId);
	uchwytKontrolki_lista.style.visibility = 'visible';
}

// kalendarz, ukrycie listy wydarzeń
function ukryjListeWydarzen(listaId)
{
	var uchwytKontrolki_lista = document.getElementById(listaId);
	uchwytKontrolki_lista.style.visibility = 'hidden';
}

// -----------------------------------------------------------------------

// FORMULARZ WYDARZENIA

// sprawdzenie czy wybrano typ wydarzenia
function czyWybranoTypWydarzenia(source, arguments)
{
	var liczKontrolki = 0;
	var liczZaznaczoneKontrolki = 0;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('rbTypWydarzeniaId', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);

			if (uchwytKontrolki.checked == true)
			{
				liczZaznaczoneKontrolki++;
			}

			liczKontrolki++;
		}
	}

	if (liczZaznaczoneKontrolki == 0)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy sposób zgłaszania uczestnictwa
function czySposobZglaszaniaUczestnictwa(source, arguments)
{
	var chkTypZglaszaniaUczestnictwaId_EMail_zaznaczono = false;
	var chkTypZglaszaniaUczestnictwaId_Panel_zaznaczono = false;
	var chkTypZglaszaniaUczestnictwaId_StronaOrganizatora_zaznaczono = false;
	var chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono = false;
	var chkTypZglaszaniaUczestnictwaId_Brak_zaznaczono = false;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_EMail', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_EMail_zaznaczono = true; }
		}

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_Panel', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_Panel_zaznaczono = true; }
		}

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_StronaOrganizatora', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_StronaOrganizatora_zaznaczono = true; }
		}

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_KartaZgloszenia', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono = true; }
		}

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_Brak', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_Brak_zaznaczono = true; }
		}
	}

	if (!chkTypZglaszaniaUczestnictwaId_EMail_zaznaczono &&
		!chkTypZglaszaniaUczestnictwaId_Panel_zaznaczono &&
		!chkTypZglaszaniaUczestnictwaId_StronaOrganizatora_zaznaczono &&
		!chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono &&
		!chkTypZglaszaniaUczestnictwaId_Brak_zaznaczono)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy wybrano plik załącznika [jeżeli jako sposób zgłaszania uczestnictwa wybrano kartę]
function czySposobZglaszaniaUczestnictwaKartaZgloszenia(source, arguments)
{
	var chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono = false;
	
	var znalezionoKontrolke = false;
	var wybranoPlik = false;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('chkTypZglaszaniaUczestnictwaId_KartaZgloszenia', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono = true; }
		}

		if (id.indexOf('TypZglaszaniaUczestnictwa_KartaZgloszeniaId', 0) != -1 && id.indexOf('fuZalacznik', 0) != -1)
		{
			znalezionoKontrolke = true;
		
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.value != '') { wybranoPlik = true; }
		}
	}

	if (chkTypZglaszaniaUczestnictwaId_KartaZgloszenia_zaznaczono &&
		znalezionoKontrolke && !wybranoPlik)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy wybrano sposób zgłaszania prezentacji
function czySposobZglaszaniaPrezentacji(source, arguments)
{
	var rbtnlSposobZglaszaniaPrezentacji_Panel_zaznaczono = false;
	var rbtnlSposobZglaszaniaPrezentacji_EMail_zaznaczono = false;
	var rbtnlSposobZglaszaniaPrezentacji_StronaWWW_zaznaczono = false;
	var chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono = false;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('rbtnlSposobZglaszaniaPrezentacji', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			
			if (uchwytKontrolki.value == 0 && uchwytKontrolki.checked == true) { rbtnlSposobZglaszaniaPrezentacji_Panel_zaznaczono = true; }
			else if (uchwytKontrolki.value == 1 && uchwytKontrolki.checked == true) { rbtnlSposobZglaszaniaPrezentacji_EMail_zaznaczono = true; }
			else if (uchwytKontrolki.value == 2 && uchwytKontrolki.checked == true) { rbtnlSposobZglaszaniaPrezentacji_StronaWWW_zaznaczono = true; }
		}

		if (id.indexOf('chkSposobZglaszaniaPrezentacji_KartaZgloszenia', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono = true; }
		}
	}

	if (!rbtnlSposobZglaszaniaPrezentacji_Panel_zaznaczono &&
		!rbtnlSposobZglaszaniaPrezentacji_EMail_zaznaczono &&
		!rbtnlSposobZglaszaniaPrezentacji_StronaWWW_zaznaczono &&
		!chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy wybrano plik załącznika [jeżeli jako sposób zgłaszania prezentacji wybrano kartę]
function czySposobZglaszaniaPrezentacjiKartaZgloszenia(source, arguments)
{
	var chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono = false;

	var znalezionoKontrolke = false;
	var wybranoPlik = false;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('chkSposobZglaszaniaPrezentacji_KartaZgloszenia', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono = true; }
		}

		if (id.indexOf('ZglaszaniePrezentacji_KartaZgloszenia_KartaZgloszeniaId', 0) != -1 && id.indexOf('fuZalacznik', 0) != -1)
		{
			znalezionoKontrolke = true;

			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.value != '') { wybranoPlik = true; }
		}
	}

	if (chkSposobZglaszaniaPrezentacji_KartaZgloszenia_zaznaczono &&
		znalezionoKontrolke && !wybranoPlik)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy zaznaczono dopuszczalną formę prezentacji
function czyFormaPrezentacjiDefinicja(source, arguments) {
	var chkFormaPrezentacji_zaznaczono = false;

	for (var x = 0; x < document.form1.elements.length; x++) {
		id = document.form1.elements[x].id;

		if (id.indexOf('chkFormaPrezentacji', 0) != -1) {
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { chkFormaPrezentacji_zaznaczono = true; }
		}
	}

	if (!chkFormaPrezentacji_zaznaczono) {
		arguments.IsValid = false;
	}
}

// przechwycone zdarzenie zmiany daty rozpoczęcia,
// zmiana daty zakończenia [na taką jak data rozpoczęcia]
function zmienionoDateRozpoczecia(kontrolkaDataRozpoczecia)
{
	pole_wartosc = kontrolkaDataRozpoczecia.value;
	
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('DataZakonczenia', 0) != -1 &&
			id.indexOf('btn', 0) == -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			
			uchwytKontrolki.value = pole_wartosc;
		}
	}
}

// aktualizacja właściwości 'SelectedDate' kontrolki kalendarza [data zakończenia]
function aktualizujSelectedDate(sender, e)
{
	data = Date.parseLocale(sender._textbox.get_Value());
	sender.set_selectedDate(data);
}

// okno z podglądem wydarzenia [rejestracja / edycja]
// dostępne po naciśnięciu przycisku 'Podgląd' na karcie 'Podsumowanie'
var wnd_podglad_wydarzenia;

function pokazPodgladWydarzenia()
{
	adres = './index.aspx?sid=108&wid=0';

	if (!wnd_podglad_wydarzenia || wnd_podglad_wydarzenia.closed) {
		wnd_podglad_wydarzenia = window.open(adres, "podglad_wydarzenia", "status=0,scrollbars=0,width=750,height=550,top=20,left=20");
	}
	else {
		wnd_podglad_wydarzenia.location = adres;
		wnd_podglad_wydarzenia.focus();
	}
}

// -----------------------------------------------------------------------

// FORMULARZ PREZENTACJI NAUKOWEJ

// sprawdzenie czy wybrano formę prezentacji
function czyFormaPrezentacji(source, arguments)
{
	var rbtnFormaPrezentacji_WystapienieUstne_zaznaczono = false;
	var rbtnFormaPrezentacji_Plakat_zaznaczono = false;
	var rbtnFormaPrezentacji_Inna_zaznaczono = false;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('rbtnFormaPrezentacji_WystapienieUstne', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { rbtnFormaPrezentacji_WystapienieUstne_zaznaczono = true; }
		}
		else if (id.indexOf('rbtnFormaPrezentacji_Plakat', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { rbtnFormaPrezentacji_Plakat_zaznaczono = true; }
		}
		else if (id.indexOf('rbtnFormaPrezentacji_InnaForma', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);
			if (uchwytKontrolki.checked == true) { rbtnFormaPrezentacji_Inna_zaznaczono = true; }
		}
	}

	if (!rbtnFormaPrezentacji_WystapienieUstne_zaznaczono &&
		!rbtnFormaPrezentacji_Plakat_zaznaczono &&
		!rbtnFormaPrezentacji_Inna_zaznaczono)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy wybrano jezyk prezentacji
function czyJezykPrezentacji(source, arguments)
{
	var liczKontrolki = 0;
	var liczZaznaczoneKontrolki = 0;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('rbtnlJezykPrezentacjiId', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);

			if (uchwytKontrolki.checked == true)
			{
				liczZaznaczoneKontrolki++;
			}

			liczKontrolki++;
		}
	}

	if (liczZaznaczoneKontrolki == 0)
	{
		arguments.IsValid = false;
	}
}

// wylicznie ilości słów streszczenia
var uzytaIloscSlow = 0;
var maksIloscSlow = 0;

function wyliczIloscSlowStreszczenia()
{
	var uchwytKontrolki_StreszczenieMaksIloscSlow;
	var uchwytKontrolki_UzytaIloscSlow;

	var uchwytKontrolki_StreszczeniePrezentacjiCalosc;
	
	var uchwytKontrolki_StreszczeniePrezentacjiWprowadzenie;
	var uchwytKontrolki_StreszczeniePrezentacjiCelPracy;
	var uchwytKontrolki_StreszczeniePrezentacjiMaterialIMetody;
	var uchwytKontrolki_StreszczeniePrezentacjiWyniki;
	var uchwytKontrolki_StreszczeniePrezentacjiDyskusja;
	var uchwytKontrolki_StreszczeniePrezentacjiWnioski;
	
	var zawartoscPola = "";

	uzytaIloscSlow = 0;
	maksIloscSlow = 0;
	
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		uchwytKontrolki = null;
	
		id = document.form1.elements[x].id;

		// bez podziału na podrozdziały

		if (id.indexOf('StreszczeniePrezentacjiCalosc', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiCalosc = document.getElementById(id);
		
			if (uchwytKontrolki_StreszczeniePrezentacjiCalosc != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiCalosc.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		// z podziałem na podrozdziały

		if (id.indexOf('StreszczeniePrezentacjiWprowadzenie', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiWprowadzenie = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiWprowadzenie != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiWprowadzenie.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		if (id.indexOf('StreszczeniePrezentacjiCelPracy', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiCelPracy = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiCelPracy != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiCelPracy.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		if (id.indexOf('StreszczeniePrezentacjiMaterialIMetody', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiMaterialIMetody = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiMaterialIMetody != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiMaterialIMetody.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		if (id.indexOf('StreszczeniePrezentacjiWyniki', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiWyniki = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiWyniki != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiWyniki.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		if (id.indexOf('StreszczeniePrezentacjiDyskusja', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiDyskusja = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiDyskusja != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiDyskusja.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		if (id.indexOf('StreszczeniePrezentacjiWnioski', 0) != -1)
		{
			uchwytKontrolki_StreszczeniePrezentacjiWnioski = document.getElementById(id);

			if (uchwytKontrolki_StreszczeniePrezentacjiWnioski != null)
			{
				zawartoscPola = uchwytKontrolki_StreszczeniePrezentacjiWnioski.value;
				uzytaIloscSlow = uzytaIloscSlow + obliczIloscSlow(zawartoscPola);
			}
		}

		//

		if (id.indexOf('StreszczenieMaksIloscSlow', 0) != -1)
		{
			uchwytKontrolki_StreszczenieMaksIloscSlow = document.getElementById(id);
			
			if (uchwytKontrolki_StreszczenieMaksIloscSlow != null)
			{
				maksIloscSlow = uchwytKontrolki_StreszczenieMaksIloscSlow.value;
			}
		}

		if (id.indexOf('txtUzytaIloscSlow', 0) != -1)
		{
			uchwytKontrolki_UzytaIloscSlow = document.getElementById(id);
		}
	}

	//

	if (uchwytKontrolki_UzytaIloscSlow != null)
	{
		uchwytKontrolki_UzytaIloscSlow.value = maksIloscSlow + " / " + uzytaIloscSlow;
		
		var kolor = '#00FF00'
		
		if (uzytaIloscSlow > maksIloscSlow)
		{
			kolor = "#FF0000";
		}
		else if (uzytaIloscSlow > (maksIloscSlow - 10))
		{
			kolor = "#FFFF00";
		}

		uchwytKontrolki_UzytaIloscSlow.style.backgroundColor = kolor;
	}
}

// obliczenie ilości słów w przekazanej treści
function obliczIloscSlow(tresc)
{
	var iloscSlow = 0;
	var trescBezBialychZnakow = "";

	//

	trescBezBialychZnakow = tresc.replace(regexpBialyZnak, "|");
	trescBezBialychZnakow = trescBezBialychZnakow.replace(regexpWielePalek, "|");

	trescBezBialychZnakow = trescBezBialychZnakow.replace(regexpPalkaPoczatek, "");
	trescBezBialychZnakow = trescBezBialychZnakow.replace(regexpPalkaKoniec, "");

	if (trescBezBialychZnakow != "")
	{
		var tblTresc = trescBezBialychZnakow.split('|');
		iloscSlow = tblTresc.length;
	}

	//

	return iloscSlow;
}

// sprawdzenie czy nie przekroczono dopuszczalnej liczby słów
function czyPrzekroczonoLiczbeSlow(source, arguments)
{
    if (maksIloscSlow > 0 &&
        uzytaIloscSlow > maksIloscSlow) 
    {
		arguments.IsValid = false;
	}
}

// -----------------------------------------------------------------------

// FORMULARZ WYSTAWY SPRZĘTU

// wyliczenie sumy opłat dla użytkownika
function wyliczSume()
{
	var uchwytKontrolki_Wartosc;
	var uchwytKontrolki_RazemNetto;
	var uchwytKontrolki_RazemBrutto;
	var uchwytKontrolki_StawkaVAT;
	var suma = 0;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		uchwytKontrolki = null;
	
		id = document.form1.elements[x].id;
		
		if (id.indexOf('Wartosc', 0) != -1)
		{
			uchwytKontrolki_Wartosc = document.getElementById(id);

			//

			wartosc = uchwytKontrolki_Wartosc.value.replace(regexpPrzecinek, ".");
			
			if (!isNaN(wartosc)) { 
				wartosc = parseFloat(wartosc);
				suma = suma + wartosc; 
			}
		}

		if (id.indexOf('RazemNetto', 0) != -1)
		{
			uchwytKontrolki_RazemNetto = document.getElementById(id);
		}

		if (id.indexOf('RazemBrutto', 0) != -1)
		{
			uchwytKontrolki_RazemBrutto = document.getElementById(id);
		}

		if (id.indexOf('StawkaVAT', 0) != -1)
		{
			uchwytKontrolki_StawkaVAT = document.getElementById(id);
		}
	}
	
	//
	
	if (uchwytKontrolki_RazemNetto != null &&
		uchwytKontrolki_RazemBrutto != null &&
		uchwytKontrolki_StawkaVAT != null)
	{
		uchwytKontrolki_RazemNetto.value = zero(suma);
		
		stawkaVAT = uchwytKontrolki_StawkaVAT.value.replace(regexpPrzecinek, ".");

		if (!isNaN(stawkaVAT)) { 
			stawkaVAT = parseFloat(stawkaVAT);
			uchwytKontrolki_RazemBrutto.value = zero(suma + (suma * stawkaVAT));
		}
		else
		{
			uchwytKontrolki_RazemBrutto.value = '0,0';
		}
	}
}

// formularz wydarzenie - zgłoszenie uczestnictwa w wystawie - obsługa wyboru opcji
function zmienWybor(jestWybrana, cenaZaJednostkeId, wartoscId)
{
	var uchwytKontrolki_cenaZaJednostke;
	var uchwytKontrolki_wartosc;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf(cenaZaJednostkeId, 0) != -1)
		{
			uchwytKontrolki_cenaZaJednostke = document.getElementById(id);
		}

		if (id.indexOf(wartoscId, 0) != -1)
		{
			uchwytKontrolki_wartosc = document.getElementById(id);
		}
	}
	
	//
	
	if (jestWybrana && 
		uchwytKontrolki_cenaZaJednostke != null &&
		uchwytKontrolki_wartosc != null)
	{
		uchwytKontrolki_wartosc.value = uchwytKontrolki_cenaZaJednostke.value;
	}
	else
	{
		uchwytKontrolki_wartosc.value = '0,0';
	}

	//
	
	wyliczSume();
}

// wyliczenie wartości po zmianie ilości
function przeliczWartosc(ilosc, cenaZaJednostkeId, wartoscId)
{
	ilosc = ilosc.replace(regexpPrzecinek, ".");

	//

	var uchwytKontrolki_cenaZaJednostke;
	var uchwytKontrolki_wartosc;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf(cenaZaJednostkeId, 0) != -1)
		{
			uchwytKontrolki_cenaZaJednostke = document.getElementById(id);
		}

		if (id.indexOf(wartoscId, 0) != -1)
		{
			uchwytKontrolki_wartosc = document.getElementById(id);
		}
	}

	//
	
	if ((!isNaN(ilosc) || ilosc >= 0) &&
		uchwytKontrolki_cenaZaJednostke != null &&
		uchwytKontrolki_wartosc != null)
	{
		cenaZaJednostke = uchwytKontrolki_cenaZaJednostke.value.replace(regexpPrzecinek, ".");
	
		uchwytKontrolki_wartosc.value = cenaZaJednostke * ilosc;
	}
	else
	{
		uchwytKontrolki_wartosc.value = '0,0';
	}
	
	//
	
	wyliczSume();
}

// -----------------------------------------------------------------------

// FORMULARZ UŻYTKOWNIKA

// reakcja na zmianę loginu [panel administracyjny, widok: osoby, karta: użytkownik]
function zmienionoTescPolaLogin()
{
	var uchwytKontrolki_txtLogin = null;
	var uchwytKontrolki_hfLoginZweryfikowany = null;
	var uchwytKontrolki_hfLoginBiezacy = null;
	var uchwytKontrolki_btnCzyLoginJestDostepny = null;

	//
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('txtLogin', 0) != -1)
		{
			uchwytKontrolki_txtLogin = document.getElementById(id);
		}

		if (id.indexOf('hfLoginZweryfikowany', 0) != -1)
		{
			uchwytKontrolki_hfLoginZweryfikowany = document.getElementById(id);
		}

		if (id.indexOf('hfLoginBiezacy', 0) != -1)
		{
			uchwytKontrolki_hfLoginBiezacy = document.getElementById(id);
		}

		if (id.indexOf('btnCzyLoginJestDostepny', 0) != -1)
		{
			uchwytKontrolki_btnCzyLoginJestDostepny = document.getElementById(id);
		}
	}

	// zapis informacji o modyfikacji loginu
	if (uchwytKontrolki_hfLoginZweryfikowany != null)
	{
		uchwytKontrolki_hfLoginZweryfikowany.value = "0";
	}

	// login nie spełnia wymogów [min. 4 znaki]
	if (uchwytKontrolki_btnCzyLoginJestDostepny!= null &&
		uchwytKontrolki_txtLogin != null &&
		uchwytKontrolki_txtLogin.value.length < 4)
	{
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginCheck');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginOK');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginError');
		
		Sys.UI.DomElement.addCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginBW');

		uchwytKontrolki_btnCzyLoginJestDostepny.disabled = true;
		
		return;
	}
	
	// nowy login jest równy loginowi bieżącemu [w przypdaku edycji]
	if (uchwytKontrolki_btnCzyLoginJestDostepny != null &&
		uchwytKontrolki_hfLoginZweryfikowany != null &&
		uchwytKontrolki_hfLoginBiezacy != null &&
		uchwytKontrolki_hfLoginBiezacy.value != "" &&
		uchwytKontrolki_hfLoginBiezacy.value == uchwytKontrolki_txtLogin.value)
	{
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginCheck');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginBW');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginError');
		
		Sys.UI.DomElement.addCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginOK');

		uchwytKontrolki_btnCzyLoginJestDostepny.disabled = true;
		uchwytKontrolki_hfLoginZweryfikowany.value = "1";

		return;
	}
	
	// login do weryfikacji
	if (uchwytKontrolki_btnCzyLoginJestDostepny != null)
	{
		uchwytKontrolki_btnCzyLoginJestDostepny.disabled = false;

		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginBW');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginOK');
		Sys.UI.DomElement.removeCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginError');
		
		Sys.UI.DomElement.addCssClass(uchwytKontrolki_btnCzyLoginJestDostepny, 'loginCheck');
	}
}

// sprawdzenie czy użytkownik wykonał operację weryfikacji loginu
function czyZweryfikowanoLogin(source, arguments)
{
	var uchwytKontrolki_txtLogin = null;
	var uchwytKontrolki_hfLoginZweryfikowany = null;
	var loginZweryfikowany = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('txtLogin', 0) != -1)
		{
			uchwytKontrolki_txtLogin = document.getElementById(id);
		}

		if (id.indexOf('hfLoginZweryfikowany', 0) != -1)
		{
			uchwytKontrolki_hfLoginZweryfikowany = document.getElementById(id);
		}
	}

	//
	if (uchwytKontrolki_txtLogin != null &&
		uchwytKontrolki_txtLogin.value.length < 4)
	{
		return false;
	}
	
	if (uchwytKontrolki_hfLoginZweryfikowany != null &&
		uchwytKontrolki_hfLoginZweryfikowany.value == "1")
	{
		loginZweryfikowany = true;
	}

	if (!loginZweryfikowany)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy użytkownik wybrał choć jedną opcję sekcji 'jestem'
function czyZaznaczonoJestem(source, arguments)
{
	var liczKontrolki = 0;
	var liczZaznaczoneKontrolki = 0;

	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('ZawodId', 0) != -1)
		{
			var uchwytKontrolki = document.getElementById(id);

			if (uchwytKontrolki.checked == true)
			{
				liczZaznaczoneKontrolki++;
			}

			liczKontrolki++;
		}
	}

	if (liczZaznaczoneKontrolki == 0)
	{
		arguments.IsValid = false;
	}
}

// sprawdzenie czy użytkownik wprowadził choć jeden numer telefonu
// [telefon, telefon komórkowy, telefon do pracy, telefon inny]
function czyWprowadzonoTelefon(source, arguments)
{
	var uchwytKontrolki_Telefon = null;
	var uchwytKontrolki_TelefonKomorkowy = null;
	var uchwytKontrolki_TelefonDoPracy = null;
	var uchwytKontrolki_TelefonInny = null;

	var wprowadzonoNumerTelefonu = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('Telefon', 0) != -1 &&
			id.indexOf('TelefonKomorkowy', 0) == -1 &&
			id.indexOf('TelefonDoPracy', 0) == -1 &&
			id.indexOf('TelefonInny', 0) == -1)
		{
			uchwytKontrolki_Telefon = document.getElementById(id);
		}

		if (id.indexOf('TelefonKomorkowy', 0) != -1)
		{
			uchwytKontrolki_TelefonKomorkowy = document.getElementById(id);
		}

		if (id.indexOf('TelefonDoPracy', 0) != -1)
		{
			uchwytKontrolki_TelefonDoPracy = document.getElementById(id);
		}

		if (id.indexOf('TelefonInny', 0) != -1)
		{
			uchwytKontrolki_TelefonInny = document.getElementById(id);
		}
	}

	//
	if ((uchwytKontrolki_Telefon != null && uchwytKontrolki_Telefon.value != '') ||
		(uchwytKontrolki_TelefonKomorkowy != null && uchwytKontrolki_TelefonKomorkowy.value != '') ||
		(uchwytKontrolki_TelefonDoPracy != null && uchwytKontrolki_TelefonDoPracy.value != '') ||
		(uchwytKontrolki_TelefonInny != null && uchwytKontrolki_TelefonInny.value != ''))
	{
		wprowadzonoNumerTelefonu = true;
	}
	
	if (!wprowadzonoNumerTelefonu)
	{
		arguments.IsValid = false;
	}
}

// -----------------------------------------------------------------------

// pomocnicza - uzupełnienie / przycięcie liczby do dwóch miejsc po przecinku
function zero(liczba) {
	wynikT = '' + liczba;

	var gdzieK = (wynikT.indexOf(".")) + 1;

	if (gdzieK > 0) {
		var dwaP = wynikT.substring(gdzieK, gdzieK + 2);

		if (dwaP.length == 2) {
			dwaZ = dwaP.charAt(1);
			if (dwaZ >= 5) {liczba = liczba + .01;}
			wynikT = '' + liczba;
		}
		else {
			wynikT += '0';
		}

		wysw = wynikT.substring(0, gdzieK + 2);
	}
	else {
		wysw = wynikT + '.00';
	}

	//
	
	wysw = wysw.replace(regexpKropka, ",");
	
	//

	return wysw;
}

// -----------------------------------------------------------------------

// FORMULARZ REJESTRACJI ZGŁOSZENIA UCZESTNICTWA W WYDARZENIU

// sprawdzenie czy wybrano koszt
function czyWybranoKoszt(source, arguments)
{
	var uchwytKontrolki_koszt = null;
	var liczKontrolkiKoszt = 0;
	var zaznaczono = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('koszt_', 0) != -1)
		{
			uchwytKontrolki_koszt = document.getElementById(id);
			
			if (uchwytKontrolki_koszt.checked)
			{
				zaznaczono = true;
			}
			
			liczKontrolkiKoszt = liczKontrolkiKoszt + 1;
		}
	}

	//

	if (liczKontrolkiKoszt != 0 && !zaznaczono)
	{
		arguments.IsValid = false;
	}
}

// czy wprowadzono imię i nazwisko współmałżonka
// [jeżeli wybrano opcję: małżeństwo stomatologów]
function czyWprowadzonoImieINazwiskoWspolmalzonka(source, arguments)
{
	var uchwytKontrolki_imieINazwiskoWspolmalzonka = null;
	var wypelniono = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++)
	{
		id = document.form1.elements[x].id;

		if (id.indexOf('koszt_txtImieINazwiskoWspolmalzonka', 0) != -1)
		{
			uchwytKontrolki_imieINazwiskoWspolmalzonka = document.getElementById(id);
			
			if (uchwytKontrolki_imieINazwiskoWspolmalzonka.value != "")
			{
				wypelniono = true;
			}
		}
	}

	//

	if (uchwytKontrolki_imieINazwiskoWspolmalzonka != null && !wypelniono)
	{
		arguments.IsValid = false;
	}
}

// -----------------------------------------------------------------------

// FORMULARZ EDYCJI ZGŁOSZENIA UCZESTNICTWA W WYDARZENIU

// sprawdzenie czy wybrano koszt
function czyWybranoKoszt2(source, arguments) {
    var uchwytKontrolki_koszt = null;
    var liczKontrolkiKoszt = 0;
    var zaznaczono = false;

    //
    for (var x = 0; x < document.form1.elements.length; x++) {
        id = document.form1.elements[x].id;

        if (id.indexOf('koszt_', 0) != -1) {
            uchwytKontrolki_koszt = document.getElementById(id);

            if (uchwytKontrolki_koszt.checked) {
                zaznaczono = true;
            }

            liczKontrolkiKoszt = liczKontrolkiKoszt + 1;
        }
    }

    //

    if (liczKontrolkiKoszt != 0 && !zaznaczono) {
        arguments.IsValid = false;
    }
}

// czy wprowadzono imię i nazwisko współmałżonka
// [jeżeli wybrano opcję: małżeństwo stomatologów]
function czyWprowadzonoImieINazwiskoWspolmalzonka2(source, arguments) {
    var uchwytKontrolki_imieINazwiskoWspolmalzonka = null;
    var wypelniono = false;

    //
    for (var x = 0; x < document.form1.elements.length; x++) {
        id = document.form1.elements[x].id;

        if (id.indexOf('koszt_txtImieINazwiskoWspolmalzonka', 0) != -1) {
            uchwytKontrolki_imieINazwiskoWspolmalzonka = document.getElementById(id);

            if (uchwytKontrolki_imieINazwiskoWspolmalzonka.value != "") {
                wypelniono = true;
            }
        }
    }

    //

    if (uchwytKontrolki_imieINazwiskoWspolmalzonka != null && !wypelniono) {
        arguments.IsValid = false;
    }
}

// -----------------------------------------------------------------------

// CZŁONKOSTWO W PTS

// sprawdzenie czy użytkownik wybrał jedną lub więcej sekcji ogólnopolskich
function czyWybranoSekcjeOgolnopolskie(source, arguments) {
	var uchwytKontrolki_chkbSekcjaOgolnopolska = null;

	var wybranoSekcjeOgolnopolska = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++) {
		id = document.form1.elements[x].id;

		if (id.indexOf('_chkblSekcjeOgolnopolskie', 0) != -1) {
			uchwytKontrolki_chkbSekcjaOgolnopolska = document.getElementById(id);

			if (uchwytKontrolki_chkbSekcjaOgolnopolska != null && uchwytKontrolki_chkbSekcjaOgolnopolska.checked) {
				wybranoSekcjeOgolnopolska = true;
			}
		}
	}

	//

	if (!wybranoSekcjeOgolnopolska) {
		arguments.IsValid = false;
	}
}

// -----------------------------------------------------------------------

// ZGŁASZANIE WYKŁADÓW

// sprawdzenie czy użytkownik wybrał honorarium
function czyWybranoHonorarium(source, arguments) {
	var uchwytKontrolki_rbtnlHonorarium = null;

	var wybranoHonorarium = false;

	//
	for (var x = 0; x < document.form1.elements.length; x++) {
		id = document.form1.elements[x].id;

		if (id.indexOf('_rbtlHonorarium', 0) != -1) {
			uchwytKontrolki_rbtnlHonorarium = document.getElementById(id);

			if (uchwytKontrolki_rbtnlHonorarium != null && uchwytKontrolki_rbtnlHonorarium.checked) {
				wybranoHonorarium = true;
			}
		}
	}

	//

	if (!wybranoHonorarium) {
		arguments.IsValid = false;
	}
}


