	function testMag(id) {
	r=eval('document.forms.MagazinesForm.elements["magazine_'+id+'"]');
	var l=0;j=0;s=0;m=0;
	if (r.checked) {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				k=document.forms.MagazinesForm.elements[i].name.split('_');
				if(k[0]=='magazine'){
					l++;
					if(document.forms.MagazinesForm.elements[i].checked) {
						j++;
						}
					}
				}
			}
		l=l-1;
		if (l==j) document.forms.MagazinesForm.elements['magazine_all'].checked=true;
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				s++;
				if (document.forms.MagazinesForm.elements[i].checked) {
				m++;
					}
				}
			}
		s=s-1;
		if(s==m)document.forms.MagazinesForm.elements['hardcopy_all'].checked=true;
		}
		else {
		document.forms.MagazinesForm.elements['magazine_all'].checked=false;
		document.forms.MagazinesForm.elements['hardcopy_all'].checked=false;
		}
	}
	function testHard(id) {
	var t=0;l=0;j=0;s=0;
	r=eval('document.forms.MagazinesForm.elements["hardcopy_'+id+'"]');
	if (r.checked) {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				t++;
				if (document.forms.MagazinesForm.elements[i].checked) {
				l++;
					}
				}
			}
		t=t-1;
		if(t==l)document.forms.MagazinesForm.elements['hardcopy_all'].checked=true;
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				k=document.forms.MagazinesForm.elements[i].name.split('_');
				if(k[0]=='magazine'){
					s++;
					if(document.forms.MagazinesForm.elements[i].checked) {
						j++;
						}
					}
				}
			}
		s=s-1;
		if (s==j) document.forms.MagazinesForm.elements['magazine_all'].checked=true;
		if(document.forms.MagazinesForm.elements['magazine_all'].checked) {
			t=0;l=0;
			for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
				if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
					k=document.forms.MagazinesForm.elements[i].name.split('_');
					if(k[0]=='hardcopy'){
						t++;
						if(document.forms.MagazinesForm.elements[i].checked) {
							l++;
							}
						}
					}
				}
			t=t-1;
			if(t==l)document.forms.MagazinesForm.elements['hardcopy_all'].checked=true;
			}
		}
		else {
		document.forms.MagazinesForm.elements['hardcopy_all'].checked=false;
		}
	}
	function checkMag(id) {
	r=eval('document.forms.MagazinesForm.elements["magazine_'+id+'"]');
	r.checked=true;
	}
	function uncheckHard(id) {
	r=eval('document.forms.MagazinesForm.elements["hardcopy_'+id+'"]');
	if (r.checked) {
	 r.checked=false;
	 }
	}
	function check() {
	if (document.forms.MagazinesForm.magazine_all.checked) {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				k=document.forms.MagazinesForm.elements[i].name.split('_');
				if(k[0]=='magazine'){document.forms.MagazinesForm.elements[i].checked=true;}
				}
			}
		}
		else {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				document.forms.MagazinesForm.elements[i].checked=false;
				}
			}
		}
	}
	function checkAll() {
	if (document.forms.MagazinesForm.hardcopy_all.checked) {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				document.forms.MagazinesForm.elements[i].checked=true;
				}
			}
		}
		else {
		for (var i=0; i<document.forms.MagazinesForm.elements.length; i++) {
			if (document.forms.MagazinesForm.elements[i].type=='checkbox') {
				k=document.forms.MagazinesForm.elements[i].name.split('_');
				if(k[0]=='hardcopy'){document.forms.MagazinesForm.elements[i].checked=false;}
				}
			}
		}
	}

function checkRegisterForm() {

	var firstName = document.forms['reg'].firstName.value;
	var lastName = document.forms['reg'].lastName.value;
	var company = document.forms['reg'].company.value;
	var position = document.forms['reg'].position.value;
	var phoneCode = document.forms['reg'].phoneCode.value;
	var phoneNumber = document.forms['reg'].phoneNumber.value;
	var postalIndex = document.forms['reg'].postalIndex.value;
	var PostalAddress = document.forms['reg'].postalIndex.value;
	var email = document.forms['reg'].email.value;
	var password = document.forms['reg'].password.value;
	var confirmPassword = document.forms['reg'].confirmPassword.value;
	var age = document.forms['reg'].age.selectedIndex;
	var education = document.forms['reg'].education.selectedIndex;
	var income = document.forms['reg'].income.selectedIndex;
	var interests = document.forms['reg'].interests.selectedIndex;
	var errorMessage = '';

	errorMessage += isEmptyData(firstName,'First name');
	errorMessage += isEmptyData(lastName,'Last name');
	errorMessage += isEmptyData(company,'Company');
	errorMessage += isEmptyData(position,'Position');
	errorMessage += isNumberData(phoneCode,'Area code');
	errorMessage += isNumberData(phoneNumber,'Phone Number');
	errorMessage += isNumberData(postalIndex,'Postal index');
	errorMessage += isEmptyData(PostalAddress,'Postal address');
	errorMessage += isSelectedData(age,'Age');
	errorMessage += isSelectedData(education,'Education');
	errorMessage += isSelectedData(income,'Income');
	errorMessage += isSelectedData(interests,'Interests');
	errorMessage += isEmptyData(password,'Password');
	errorMessage += isEmptyData(confirmPassword,'Confirm password');
	errorMessage += isEmailData(email);

	if (password!=confirmPassword) {
	errorMessage += "Passwrods you entered are not equal.";
	}
		
	if (errorMessage) {alert(errorMessage);return true;}
	else {document.forms['reg'].submit();}
}

function checkProfileForm() {

	var firstName = document.forms['reg'].firstName.value;
	var lastName = document.forms['reg'].lastName.value;
	var company = document.forms['reg'].company.value;
	var position = document.forms['reg'].position.value;
	var phoneCode = document.forms['reg'].phoneCode.value;
	var phoneNumber = document.forms['reg'].phoneNumber.value;
	var postalIndex = document.forms['reg'].postalIndex.value;
	var PostalAddress = document.forms['reg'].postalIndex.value;
	var email = document.forms['reg'].email.value;
	var password = document.forms['reg'].password.value;
	var confirmPassword = document.forms['reg'].confirmPassword.value;
	var age = document.forms['reg'].age.selectedIndex;
	var education = document.forms['reg'].education.selectedIndex;
	var income = document.forms['reg'].income.selectedIndex;
	var interests = document.forms['reg'].interests.selectedIndex;
	var errorMessage = '';

	errorMessage += isEmptyData(firstName,'First name');
	errorMessage += isEmptyData(lastName,'Last name');
	errorMessage += isEmptyData(company,'Company');
	errorMessage += isEmptyData(position,'Position');
	errorMessage += isNumberData(phoneCode,'Area code');
	errorMessage += isNumberData(phoneNumber,'Phone Number');
	errorMessage += isNumberData(postalIndex,'Postal index');
	errorMessage += isEmptyData(PostalAddress,'Postal address');
	errorMessage += isSelectedData(age,'Age');
	errorMessage += isSelectedData(education,'Education');
	errorMessage += isSelectedData(income,'Income');
	errorMessage += isSelectedData(interests,'Interests');
	errorMessage += isEmailData(email);

	if (password!=confirmPassword) {
	errorMessage += "Passwrods you entered are not equal.";
	}
		
	if (errorMessage) {alert(errorMessage);return true;}
	else {document.forms['reg'].submit();}
}

function checkSubscribeForm() {
	var firstName = document.forms['subs'].firstName.value;
	var lastName = document.forms['subs'].lastName.value;
	var company = document.forms['subs'].company.value;
	var phoneCode = document.forms['subs'].phoneCode.value;
	var phoneNumber = document.forms['subs'].phoneNumber.value;
	var postalIndex = document.forms['subs'].postalIndex.value;
	var PostalAddress = document.forms['subs'].postalIndex.value;
	var email = document.forms['subs'].email.value;	
	var errorMessage = '';

	errorMessage += isEmptyData(firstName,'First name');
	errorMessage += isEmptyData(lastName,'Last name');
	errorMessage += isEmptyData(company,'Company');
	errorMessage += isNumberData(phoneCode,'Area code');
	errorMessage += isNumberData(phoneNumber,'Phone Number');
	errorMessage += isNumberData(postalIndex,'Postal index');
	errorMessage += isEmptyData(PostalAddress,'Postal address');
	errorMessage += isEmailData(email);

	if (errorMessage) {alert(errorMessage);return true;}
	else {document.forms['subs'].submit();}
}

function isSelectedData(element,FieldName) {
	var msg = '';
	if (element==0) {
	msg += "Please, make your selection in '"+ FieldName +".\n"
	}
return msg;
}

function isNumberData (data, fieldDesc)
{
	var numStr = " *+-()1234567890";
	var thisChar;
	var counter = 0;
	var msg = '';
	
	if(!data) {
		msg += "The '" + fieldDesc + "' filed is obligatory and can't be empty.\n";
		return msg;
	}

	for (var i=0; i<data.length; i++)
	{
		thisChar = data.substring(i, i+1);
		if (numStr.indexOf(thisChar) != -1)	counter++;
	}
	
	if (counter!=data.length)
	{
		msg = "The field '" + fieldDesc + "' should contain numbers only!\n";
	}
	return msg;
}

function isEmailData (email) 
{
	var msg = '';
	var re = new RegExp('([^@]+)+@(\\w+.)+\\w+',"ig");
	if ((!re.test(email))||(email.indexOf('@')==-1)||(email.indexOf('.')==-1)) 
	msg = "The E-mail is invalid. Please enter correct e-mail!\n"; 
	return msg;
}

function isEmptyData (data, poleName)
{
	var msg = '';
	if (!data) {msg += "The '" + poleName + "' filed is obligatory and can't be empty.\n";}
	return msg;
}