/**
 * 
 *
 * @version $Id: validators.js,v 1.2 2006/10/02 11:18:13 tomek Exp $
 * @copyright 2003 
 **/
//var isSurveyChanged = false;
//
//function validate_survey_form( frm )
//{
//	if( !isSurveyChanged)
//	{
//		window.alert("Ankieta nie została wypełniona. Nie można wysłać pustej ankiety");
//		frm.elements['search_events_query'].focus();
//		return false;
//	}
//
//	return true;
//}

function validate_enquiry_form( frm )
{
if( !is_email(frm.elements['email'].value) )
	{
		window.alert(JS_MSG_VALIDATE_FORM_EMAIL_REQ);
		frm.elements['email'].focus();
		return false;
	}
	reqFields = new Array
				(
					'name',
               'company',               
               'phone'
				);

	for(var i in reqFields)
	{
		if( frm.elements[reqFields[i]].value == '' )
		{
			window.alert(JS_MSG_VALIDATE_FORM_FIELD_REQ);
			frm.elements[reqFields[i]].focus();
			return false;
		}
	}
	
	return true;
}

function validate_contact_form( frm )
{
if( !is_email(frm.elements['email'].value) )
	{
		window.alert(JS_MSG_VALIDATE_FORM_EMAIL_REQ);
		frm.elements['email'].focus();
		return false;
	}
	reqFields = new Array
				(
					'name',
					'company',
					'tel',
					'message'
				);

	for(var i in reqFields)
	{
		if( frm.elements[reqFields[i]].value == '' )
		{
			window.alert(JS_MSG_VALIDATE_FORM_FIELD_REQ);
			frm.elements[reqFields[i]].focus();
			return false;
		}
	}

	return true;

//	alert("Validate contact form: zrób mnie!!!");
//	return false;
}
function validate_enquiry_form( frm )
{
if( !is_email(frm.elements['email'].value) )
	{
		window.alert(JS_MSG_VALIDATE_FORM_EMAIL_REQ);
		frm.elements['email'].focus();
		return false;
	}
	reqFields = new Array
				(
					'question'
				);

	for(var i in reqFields)
	{
		if( frm.elements[reqFields[i]].value == '' )
		{
			window.alert(JS_MSG_VALIDATE_FORM_FIELD_REQ);
			frm.elements[reqFields[i]].focus();
			return false;
		}
	}

	return true;
}
function validate_search_form( frm )
{
	re1 = /[\w±ęó¶łżĽćńˇĘÓ¦ŁŻ¬ĆŃ]/i;
	re2 = /(.*[^\w\s-@\.±ęó¶łżĽćńˇĘÓ¦ŁŻ¬ĆŃ]+)+/i;
	found1 = frm.elements['search_query'].value.match( re1 );
	found2 = frm.elements['search_query'].value.match( re2 );
	
	if(frm.elements['search_query'].value.length < 1 || !found1 || found2 )
	{
		window.alert("Nieprawidłowe słowa kluczowe.\n Nie używaj znaków specjalnych.");
		frm.elements['search_query'].focus();
		return false;
	}

	return true;
}

function validate_nl_subscribe_form( frm )
{
	if( !is_email(frm.elements['nl_email'].value) )
	{
		window.alert("Nieprawidłowy adres email.\n WprowadĽ ponownie.");
		frm.elements['nl_email'].focus();
		return false;
	}
	
	return true;
}

function validate_register_form( frm )
{
	if( !is_email(frm.elements['email'].value) )
	{
		window.alert( reqEmailMsg );
		frm.elements['email'].focus();
		return false;
	}
	reqFields = new Array
				(
					'firm',
					'profile',
					'address',
					'country',
					'tel',
					'fax',
					'contact_person',
					'email',
					'pass'
				);
				
	for(var i in reqFields)
	{
		if( frm.elements[reqFields[i]].value == '' )
		{
			window.alert( reqFieldMsg );
			frm.elements[reqFields[i]].focus();
			return false;
		}
	}
	
	if( 
			   frm.elements['pass'].value.length <= 3
			|| frm.elements['pass'].value != frm.elements['confirm'].value 
		)
	{
		window.alert( reqPassConfrmMsg );
		frm.elements['pass'].focus();
		return false;
	}
	return true;
}

function validate_edit_profile_form( frm )
{
	if( !is_email(frm.elements['email'].value) )
	{
		window.alert( reqEmailMsg );
		frm.elements['email'].focus();
		return false;
	}
	reqFields = new Array
				(
					'firm',
					'profile',
					'address',
					'country',
					'tel',
					'fax',
					'contact_person',
					'email'
				);
				
	for(var i in reqFields)
	{
		if( frm.elements[reqFields[i]].value == '' )
		{
			window.alert( reqFieldMsg );
			frm.elements[reqFields[i]].focus();
			return false;
		}
	}
	
	if(frm.elements['pass'].value != frm.elements['confirm'].value)
	{
		window.alert( reqPassConfrmMsgEdit );
		frm.elements['pass'].focus();
		return false;
	}
	return true;
}

function validate_login_form( frm )
{
	if(frm.elements['remind_field'].value == 'email' && !is_email(frm.elements['psi_user'].value))
	{
		window.alert( reqEmailMsg );
		frm.elements['psi_user'].focus();
		return false;
	}
	
	if(frm.elements['remind_field'].value != 'email' && !is_email(frm.elements['remind_field'].value))
	{
		window.alert( reqEmailMsg );
		frm.elements['remind_field'].focus();
		return false;
	}
	
	return true;
}

function is_email( str )
{
	re = /.+\@.+\..+/i;

	found = str.match( re );
	//alert(found);
	
	if( !found )
		return false;

	return true;
}

function is_nip( str )
{
	re = /^\d{10}$/;
	found = str.match( re );
	found = found ? 1 : 0;
	//alert("found: " + found);
	if( !found)
		return false;
	
	checkSumParts = '657234567';
	checkSum = 0;
	for(nr = 0; nr < 9; nr++)
		checkSum += checkSumParts.charAt(nr) * str.charAt(nr);
	
	//alert(checkSum);
	return str.charAt(9) == (checkSum % 11 % 10);
	
	return true;
}