var dane_email_check_flag = false;
var dane_id_check_flag = false;

function RejestracjaFirmy() {}

RejestracjaFirmy.zarejestruj = function()
{
	getElement('formularz_rejestracji').action = 'RejestracjaPrzedsiebiorcy.html';

	RejestracjaFirmy.sprawdzFormularz();
}

RejestracjaFirmy.dodaj = function()
{
	getElement('formularz_rejestracji').action = 'DodajFirme.html';

	RejestracjaFirmy.sprawdzFormularz();
}

RejestracjaFirmy.walidacja = function(pole)
{
	pole = pole.name;

	if (pole == 'dodaj[id_profesji]')
	{
		getElement('divProfesja').className = !pobierzPole(getElement('formularz_rejestracji'), pole).value ? 'input_blad' : 'input';
	}

	if (pole == 'dodaj[miasto]' || pole == 'dodaj[ulica]')
		pobierzPole(getElement('formularz_rejestracji'), pole).className = !pobierzPole(getElement('formularz_rejestracji'), pole).value ? 'input_blad' : 'input';

	if (pole == 'dodaj[nazwa]' || pole == 'dodaj[nazwisko]')
	{
		pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwa]').className =
		pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwisko]').className =
			!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwa]').value && !pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwisko]').value ? 'input_blad' : 'input';

	}

	if (pole == 'dodaj[kod]')
	{
		pobierzPole(getElement('formularz_rejestracji'), pole).className = !pobierzPole(getElement('formularz_rejestracji'), pole).value ? 'input_blad' : 'input';
	}

	if (pole == 'dodaj[wojewodztwo]')
	{
		getElement('WeryfikacjaIDWojewodztwa').className = !pobierzPole(getElement('formularz_rejestracji'), pole).value ? 'input_blad' : 'input';
	}

	if (pole == 'dodaj[email]')
	{
		if(pobierzPole(getElement('formularz_rejestracji'), pole).value != '')
		{
			RejestracjaFirmy.sprawdzEmail();
		}
		else pobierzPole(getElement('formularz_rejestracji'), pole).className = 'input';
	}

}

RejestracjaFirmy.sprawdzFormularz = function()
{
	// walidacja kolorystyczna

	var pola = ['dodaj[id_profesji]', 'dodaj[nazwa]', 'dodaj[nazwisko]', 'dodaj[wojewodztwo]', 'dodaj[kod]', 'dodaj[miasto]', 'dodaj[ulica]'];

	for (var i = 0; i < pola.length; i++)
		if (pobierzPole(getElement('formularz_rejestracji'), pola[i]))
			RejestracjaFirmy.walidacja(pobierzPole(getElement('formularz_rejestracji'), pola[i]));

	//

	if (!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[id_profesji]').value)
	{
		alert('Proszę wybrać branżę!');

		return false;
	}

	if (!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwa]').value && !pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwisko]').value)
	{
		alert('Proszę podać nazwę firmy lub nazwisko!');

		return false;
	}

	if (!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[wojewodztwo]').value)
	{
		alert('Proszę podać województwo!');

		return false;
	}

	if (!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[miasto]').value)
	{
		alert('Proszę podać miasto!');

		return false;
	}

	if (!pobierzPole(getElement('formularz_rejestracji'), 'dodaj[ulica]').value)
	{
		alert('Proszę podać ulicę!');

		return false;
	}

	if (!getElement('akceptacja').checked)
	{
		alert('Proszę zaakceptować regulamin serwisu!');

		return false;
	}

	// ajax

	advAJAX.setDefaultParameters({});

	advAJAX.post({
		url: "FirmaIstnieje.service",

		parameters :
			{
				"nazwa" : pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwa]').value,
				"nazwisko" : pobierzPole(getElement('formularz_rejestracji'), 'dodaj[nazwisko]').value,
				"wojewodztwo" : pobierzPole(getElement('formularz_rejestracji'), 'dodaj[wojewodztwo]').value,
				"miasto" : pobierzPole(getElement('formularz_rejestracji'), 'dodaj[miasto]').value,
				"ulica" : pobierzPole(getElement('formularz_rejestracji'), 'dodaj[ulica]').value
			},

		onSuccess : function(obj)
			{
				RejestracjaFirmy.zakonczSprawdzanieFormularza(obj.responseText == '0');
			},

		onError : function(obj)
			{
				alert('Wystąpił błąd, spróbuj ponownie!');
			}
	});

	return false;
}

RejestracjaFirmy.zakonczSprawdzanieFormularza = function(wynik)
{
	if (wynik)
		getElement('formularz_rejestracji').submit();
	else
		alert('Firma o podanych danych już istnieje w naszej bazie!');
}

RejestracjaFirmy.sprawdzEmail = function()
{
	var val = pobierzPole(getElement('formularz_rejestracji'), 'dodaj[email]').value;

	pobierzPole(getElement('formularz_rejestracji'), 'dodaj[email]').className = !sprawdzEmail(val) ? 'input_blad' : 'input';

	//

	if (pobierzPole(getElement('formularz_rejestracji'), 'dodaj[email]').className == 'input')
	{
		advAJAX.setDefaultParameters({});

		advAJAX.post({
			url: "EmailZarejestrowany.service",

			parameters :
				{
					"typ" : 'przedsiebiorca',
					"email" : val
				},

			onSuccess : function(obj)
				{
					pobierzPole(getElement('formularz_rejestracji'), 'dodaj[email]').className = obj.responseText == '0' ? 'input' : 'input_blad';

					if (!dane_email_check_flag && (obj.responseText != '0'))
					{
						alert('Podany adres email już jest zarejestrowany w bazie!');

						dane_email_check_flag = true;
					}
				},

			onError : function(obj)
				{
					alert('Wystąpił błąd, spróbuj ponownie!');

					pobierzPole(getElement('formularz_rejestracji'), 'dodaj[email]').className = 'input_blad';
				}
		});
	}
}

RejestracjaFirmy.resetujSprawdzenieMail = function()
{
	if(dane_email_check_flag)
		dane_email_check_flag = false;
}

