/****************************************************************
 * Markdata Interface											*
 * @type jQuery													*
 * @author Markdata Internet Team (support@markdata.pt)			*
 * @version 1.0													*
 * @date 01 January 2008										*
 * @example Visit http://www.markdata.net						*
 * @copyright (c) 2008 Markdata									*
 ****************************************************************/
$(document).ready( function() {

/**	*	*	*	*	*	*	*	*	*
 * @name Markdata Lightbox			*
 * @type jQuery						*
 * @version 1.0						*
 * @date 01 January 2008			*
 *	*	*	*	*	*	*	*	*	*/

    $('a.lightbox').lightBox();
    
    
/** *	*	*	*	*	*	*	*	*
 * @name Markdata News Headlines	*
 * @type jQuery						*
 * @version 1.0						*
 * @date 01 January 2008			*
 *	*	*	*	*	*	*	*	*	*/

	$('.box01').show(); //mostra noticia mais recente
	$('.headlines').each( function(index, headline) {	//	loop para seleccionar todas as headlines no dom
		$(headline).click( function() {	//	onClick headline
			ShowOrHideDIVs(index+1);	//	chama ShowOrHideDIVs() para mostrar/esconder divs
		});
	});
	
	function ShowOrHideDIVs(id) {
		$('.newsDetails').each( function(index, newsbox) { // loop para seleccionar todas as divs de noticias
			if ( $(newsbox).is('.box0'+id) ) {
				$('.box0'+id).show(); // mostra noticia correspondente ao index
			} else {
				$(newsbox).hide(); // esconde as outras noticias
			}
		});
	};
    
	$("a.headlines").hover(
		function () {
			$(this)
				.css('color','#0692c6')
				.css('background','#f9f9f9');
		},
		  function () {
		    $(this)
		    	.css('color','#3f6e80')
		    	.css('background','#fff');
		  }
		);
    
    
/** *	*	*	*	*	*	*	*	*
 * @name Markdata Login				*
 * @type jQuery						*
 * @version 1.0						*
 * @date 01 January 2008			*
 *	*	*	*	*	*	*	*	*	*/

	if ('#topNav') {
		$('a').click( function() {
			if ( $(this).hasClass('signIn') ) {
				$('#loginBox').fadeIn("slow");
				$('a.signIn').css('display','none');
				$('a.cancel').css('display','inline');
			} else if ( $(this).hasClass('cancel') ) {
				$('#loginBox').fadeOut("slow");
				$('a.cancel').css('display','none');
				$('a.signIn').css('display','inline');
			} else if ( $(this).hasClass('register') ) {
				window.location = "newclient.php";
			} else if ( $(this).hasClass('logOut') ) {
				window.location = "exit.php";
			}
		})
		$('input').focus( function() {
			if ( $(this).hasClass('login') ) {
				if ( $(this).val() == $(this).attr('name') ) {
					$(this).val('');
				}
			}
		})
		$('input').blur( function() {
			if ( $(this).hasClass('login') ) {
				if ( $(this).val() == '' ) {
					$(this).val( $(this).attr('name') );
				}
			}
		})
		function submitLogin() {
			document.loginForm.action = "verify.php";
			document.loginForm.submit();
		}
		$("input").keypress(
			function(e){
				if ( $(this).hasClass('password') ) {
					if ( $(this).val() != '' && e.keyCode == 13 )
					submitLogin();
				}
			}
		);
		$('a.login').click( function() {
			submitLogin();
		})
	}
	
});

/** *	*	*	*	*	*	*	*	*
 * @name Markdata Register			*
 * @type jQuery						*
 * @version 1.0						*
 * @date 01 January 2008			*
 *	*	*	*	*	*	*	*	*	*/

function register()
{
	
	var is_valid = true;
	
	//	Reset validation
    document.getElementById('newClientUsername').style.background = 'none';
    document.getElementById('newClientPassword').style.background = 'none';
    document.getElementById('firstName')		.style.background = 'none';
    document.getElementById('lastName')			.style.background = 'none';
    document.getElementById('address')			.style.background = 'none';
    document.getElementById('zipCode')			.style.background = 'none';
    document.getElementById('city')				.style.background = 'none';
    document.getElementById('state')			.style.background = 'none';
    document.getElementById('email')			.style.background = 'none';
    document.getElementById('phone')			.style.background = 'none';
    document.getElementById('fax')				.style.background = 'none';
    document.getElementById('company')			.style.background = 'none';
    document.getElementById('jobTitle')			.style.background = 'none';
    document.getElementById('department')		.style.background = 'none';
    document.getElementById('interest')			.style.background = 'none';
    document.getElementById('captcha')			.style.background = 'none';

    document.getElementById('usrchk')			.style.height = '0';
    document.getElementById('ePassword')		.style.height = '0';
    document.getElementById('eFirstName')		.style.height = '0';
    document.getElementById('eLastName')		.style.height = '0';
    document.getElementById('eAddress')			.style.height = '0';
    document.getElementById('eZipCode')			.style.height = '0';
    document.getElementById('eCity')			.style.height = '0';
    document.getElementById('eState')			.style.height = '0';
    document.getElementById('eCountry')			.style.height = '0';
    document.getElementById('eEmail')			.style.height = '0';
    document.getElementById('ePhone')			.style.height = '0';
    document.getElementById('eFax')				.style.height = '0';
    document.getElementById('eCompany')			.style.height = '0';
    document.getElementById('eJobTitle')		.style.height = '0';
    document.getElementById('eDepartment')		.style.height = '0';
    document.getElementById('eInterest')		.style.height = '0';

    document.getElementById('usrchk')			.innerHTML = '';
    document.getElementById('ePassword')		.innerHTML = '';
    document.getElementById('eFirstName')		.innerHTML = '';
    document.getElementById('eLastName')		.innerHTML = '';
    document.getElementById('eAddress')			.innerHTML = '';
    document.getElementById('eZipCode')			.innerHTML = '';
    document.getElementById('eCity')			.innerHTML = '';
    document.getElementById('eState')			.innerHTML = '';
    document.getElementById('eCountry')			.innerHTML = '';
    document.getElementById('eEmail')			.innerHTML = '';
    document.getElementById('ePhone')			.innerHTML = '';
    document.getElementById('eFax')				.innerHTML = '';
    document.getElementById('eCompany')			.innerHTML = '';
    document.getElementById('eJobTitle')		.innerHTML = '';
    document.getElementById('eDepartment')		.innerHTML = '';
    document.getElementById('eInterest')		.innerHTML = '';

	
	//	Username
	var username = document.registerForm.newClientUsername.value;
	var RegExp = '^[a-zA-Z0-9_-]+$';
	if (!username.match(RegExp))
	{
	    document.getElementById('newClientUsername').style.background = '#eeeeee';
	    document.getElementById('usrchk').style.height = '100%';
	    document.getElementById('usrchk').innerHTML = 'Please enter a username. May only contain letters, numbers, hyphen (-) and underscore (_).';
	    is_valid = false;
	}

	//	Password
	var password = document.registerForm.newClientPassword.value;
	var RegExp = '^[\.a-zA-Z0-9]+$';
	if (!password.match(RegExp))
	{
	    document.getElementById('newClientPassword').style.background = '#eeeeee';
	    document.getElementById('ePassword').style.height = '100%';
	    document.getElementById('ePassword').innerHTML = 'Please enter a password. May only contain letters and numbers.';
	    is_valid = false;
	}

	//	First Name
	var firstname = document.registerForm.firstName.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!firstname.match(RegExp))
	{
	    document.getElementById('firstName').style.background = '#eeeeee';
	    document.getElementById('eFirstName').style.height = '100%';
	    document.getElementById('eFirstname').innerHTML = 'Please enter your first name. May only contain letters.';
	    is_valid = false;
	}

	//	Last Name
	var lastname = document.registerForm.lastName.value;
	var RegExp = '^[\.a-zA-Z_ -]+$';
	if (!lastname.match(RegExp))
	{
	    document.getElementById('lastName').style.background = '#eeeeee';
	    document.getElementById('eLastName').style.height = '100%';
	    document.getElementById('eLastname').innerHTML = 'Please enter your last name. May only contain letters.';
	    is_valid = false;
	}

	//	Address
	var address = document.registerForm.address.value;
	var RegExp = '.+';
	if (!address.match(RegExp))
	{
	    document.getElementById('address').style.background = '#eeeeee';
	    document.getElementById('eAddress').style.height = '100%';
	    document.getElementById('eAddress').innerHTML = 'Please enter your address.';
	    is_valid = false;
	}

	//	Zip Code
	var zipcode = document.registerForm.zipCode.value;
	var RegExp = '^[0-9a-zA-Z_ -]+$';
	if (!zipcode.match(RegExp))
	{
	    document.getElementById('zipCode').style.background = '#eeeeee';
	    document.getElementById('eZipCode').style.height = '100%';
	    document.getElementById('eZipCode').innerHTML = 'Please enter your zip code. May only contain letters and numbers.';
	    is_valid = false;
	}

	//	City
	var city = document.registerForm.city.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!city.match(RegExp))
	{
	    document.getElementById('city').style.background = '#eeeeee';
	    document.getElementById('eCity').style.height = '100%';
	    document.getElementById('eCity').innerHTML = 'Please enter your city. May only contain letters.';
	    is_valid = false;
	}

	//	State
	var state = document.registerForm.state.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!state.match(RegExp))
	{
	    document.getElementById('state').style.background = '#eeeeee';
	    document.getElementById('eState').style.height = '100%';
	    document.getElementById('eState').innerHTML = 'Please enter your state. May only contain letters.';
	    is_valid = false;
	}

	//	E-mail
	var email = document.registerForm.email.value;
	var RegExp = '^[a-zA-Z]+[-a-zA-Z0-9.]+[a-zA-Z0-9]+@([-a-zA-Z0-9]+[.])+[a-zA-Z]?[a-zA-Z][a-zA-Z]$';
	if (!email.match(RegExp))
	{
	    document.getElementById('email').style.background = '#eeeeee';
	    document.getElementById('eEmail').style.height = '100%';
	    document.getElementById('eEmail').innerHTML = 'Please enter a valid e-mail address. Example: name@domain.com';
	    is_valid = false;
	}

	//	Phone
	var phone = document.registerForm.phone.value;
	var RegExp = '^[\+0-9 ()]+$';
	if (!phone.match(RegExp))
	{
	    document.getElementById('phone').style.background = '#eeeeee';
	    document.getElementById('ePhone').style.height = '100%';
	    document.getElementById('ePhone').innerHTML = 'Please enter your phone. May only contain numbers.';
	    is_valid = false;
	}

	//	Fax
	var fax = document.registerForm.fax.value;
	var RegExp = '^[\+0-9 ()]+$';
	if ( document.registerForm.fax.value && !fax.match(RegExp))
	{
	    document.getElementById('fax').style.background = '#eeeeee';
	    document.getElementById('eFax').style.height = '100%';
	    document.getElementById('eFax').innerHTML = 'Please enter your fax. May only contain numbers.';
	    is_valid = false;
	}

	//	Company
	var company = document.registerForm.company.value;
	var RegExp = '^[\.a-zA-Z_ -]+$';
	if (!company.match(RegExp))
	{
	    document.getElementById('company').style.background = '#eeeeee';
	    document.getElementById('eCompany').style.height = '100%';
	    document.getElementById('eCompany').innerHTML = 'Please enter your company. May only contain letters.';
	    is_valid = false;
	}

	//	Job Title
	var jobtitle = document.registerForm.jobTitle.value;
	var RegExp = '[\.a-zA-Z_ -]+$';
	if (!jobtitle.match(RegExp))
	{
	    document.getElementById('jobTitle').style.background = '#eeeeee';
	    document.getElementById('eJobTitle').style.height = '100%';
	    document.getElementById('eJobTitle').innerHTML = 'Please enter your job title. May only contain letters.';
	    is_valid = false;
	}

	//	Department
	var department = document.registerForm.department.value;
	var RegExp = '^[\.a-zA-Z_ -]+$';
	if (!department.match(RegExp))
	{
	    document.getElementById('department').style.background = '#eeeeee';
	    document.getElementById('eDepartment').style.height = '100%';
	    document.getElementById('eDepartment').innerHTML = 'Please enter your department. May only contain letters.';
	    is_valid = false;
	}

	//	Interest
	var interest = document.registerForm.interest.value;
	var RegExp = '.+';
	if (!interest.match(RegExp))
	{
	    document.getElementById('interest').style.background = '#eeeeee';
	    document.getElementById('eInterest').style.height = '100%';
	    document.getElementById('eInterest').innerHTML = 'Please use this space to describe your interest in Markdata.net';
	    is_valid = false;
	}

	//	Captcha
	var captcha = document.registerForm.captcha.value;
	var RegExp = '.+';
	if (!captcha.match(RegExp))
	{
	    document.getElementById('captcha').style.background = '#eeeeee';
	    is_valid = false;
	}

	if( is_valid )
	{
		document.getElementById('newClientFormError').innerHTML = "<iframe id='checkerdiv' src='check.php?username="+username+"&captcha="+captcha+"'>";
	}
};

/** *	*	*	*	*	*	*	*	*
 * @name Markdata Careers			*
 * @type jQuery						*
 * @version 1.0						*
 * @date 01 January 2008			*
 *	*	*	*	*	*	*	*	*	*/

function career_verify()
{
	var is_valid = true;
	
	//	Reset validation
	document.getElementById('jobApplication')			.style.background = 'none';
	document.getElementById('argumentsJob')				.style.background = 'none';
	document.getElementById('firstName')				.style.background = 'none';
	document.getElementById('lastName')					.style.background = 'none';
	document.getElementById('address')					.style.background = 'none';
	document.getElementById('zipCode')					.style.background = 'none';
	document.getElementById('city')						.style.background = 'none';
	document.getElementById('state')					.style.background = 'none';
	document.getElementById('nationality')				.style.background = 'none';
	document.getElementById('email')					.style.background = 'none';
	document.getElementById('phone')					.style.background = 'none';
	document.getElementById('captcha')					.style.background = 'none';

    document.getElementById('eJobApplication')			.style.height = '0';
    document.getElementById('eArgumentsJob')			.style.height = '0';
    document.getElementById('eFirstName')				.style.height = '0';
    document.getElementById('eLastName')				.style.height = '0';
    document.getElementById('eAddress')					.style.height = '0';
    document.getElementById('eZipCode')					.style.height = '0';
    document.getElementById('eCity')					.style.height = '0';
    document.getElementById('eState')					.style.height = '0';
    document.getElementById('eNationality')				.style.height = '0';
    document.getElementById('eEmail')					.style.height = '0';
    document.getElementById('ePhone')					.style.height = '0';

    document.getElementById('eJobApplication')			.innerHTML = '';
    document.getElementById('eArgumentsJob')			.innerHTML = '';
    document.getElementById('eFirstName')				.innerHTML = '';
    document.getElementById('eLastName')				.innerHTML = '';
    document.getElementById('eAddress')					.innerHTML = '';
    document.getElementById('eZipCode')					.innerHTML = '';
    document.getElementById('eCity')					.innerHTML = '';
    document.getElementById('eState')					.innerHTML = '';
    document.getElementById('eNationality')				.innerHTML = '';
    document.getElementById('eEmail')					.innerHTML = '';
    document.getElementById('ePhone')					.innerHTML = '';


	//	Job Application
	var jobapplication = document.careersForm.jobApplication.value;
	var empty = 'none';
	if ( jobapplication == empty )
	{
	    document.getElementById('jobApplication').style.background = '#eeeeee';
	    document.getElementById('eJobApplication').style.height = '100%';
	    is_valid = false;
	}
	
	//	Arguments Job
	var argumentsjob = document.careersForm.argumentsJob.value;
	var RegExp = '.+';
	if (!argumentsjob.match(RegExp))
	{
	    document.getElementById('argumentsJob').style.background = '#eeeeee';
	    document.getElementById('eArgumentsJob').style.height = '100%';
	    document.getElementById('eArgumentsJob').innerHTML = 'Please use this space to justify why you should be considerated.';
	    is_valid = false;
	}
	
	//	First Name
	var firstname = document.careersForm.firstName.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!firstname.match(RegExp))
	{
	    document.getElementById('firstName').style.background = '#eeeeee';
	    document.getElementById('eFirstName').style.height = '100%';
	    document.getElementById('eFirstname').innerHTML = 'Please enter your first name. May only contain letters.';
	    is_valid = false;
	}
	
	//	Last Name
	var lastname = document.careersForm.lastName.value;
	var RegExp = '^[\.a-zA-Z_ -]+$';
	if (!lastname.match(RegExp))
	{
	    document.getElementById('lastName').style.background = '#eeeeee';
	    document.getElementById('eLastName').style.height = '100%';
	    document.getElementById('eLastname').innerHTML = 'Please enter your last name. May only contain letters.';
	    is_valid = false;
	}

	//	Address
	var address = document.careersForm.address.value;
	var RegExp = '.+';
	if (!address.match(RegExp))
	{
	    document.getElementById('address').style.background = '#eeeeee';
	    document.getElementById('eAddress').style.height = '100%';
	    document.getElementById('eAddress').innerHTML = 'Please enter your address.';
	    is_valid = false;
	}

	//	Zip Code
	var zipcode = document.careersForm.zipCode.value;
	var RegExp = '^[0-9a-zA-Z_ -]+$';
	if (!zipcode.match(RegExp))
	{
	    document.getElementById('zipCode').style.background = '#eeeeee';
	    document.getElementById('eZipCode').style.height = '100%';
	    document.getElementById('eZipCode').innerHTML = 'Please enter your zip code. May only contain letters and numbers.';
	    is_valid = false;
	}

	//	City
	var city = document.careersForm.city.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!city.match(RegExp))
	{
	    document.getElementById('city').style.background = '#eeeeee';
	    document.getElementById('eCity').style.height = '100%';
	    document.getElementById('eCity').innerHTML = 'Please enter your city. May only contain letters.';
	    is_valid = false;
	}

	//	State
	var state = document.careersForm.state.value;
	var RegExp = '^[a-zA-Z_ -]+$';
	if (!state.match(RegExp))
	{
	    document.getElementById('state').style.background = '#eeeeee';
	    document.getElementById('eState').style.height = '100%';
	    document.getElementById('eState').innerHTML = 'Please enter your state. May only contain letters.';
	    is_valid = false;
	}
	
	//	Nationality
	var nationality = document.careersForm.nationality.value;
	var empty = 'none';
	if ( nationality == empty )
	{
	    document.getElementById('nationality').style.background = '#eeeeee';
	    document.getElementById('eNationality').style.height = '100%';
	    is_valid = false;
	}

	//	E-mail
	var email = document.careersForm.email.value;
	var RegExp = '^[a-zA-Z]+[-a-zA-Z0-9.]+[a-zA-Z0-9]+@([-a-zA-Z0-9]+[.])+[a-zA-Z]?[a-zA-Z][a-zA-Z]$';
	if (!email.match(RegExp))
	{
	    document.getElementById('email').style.background = '#eeeeee';
	    document.getElementById('eEmail').style.height = '100%';
	    document.getElementById('eEmail').innerHTML = 'Please enter a valid e-mail address. Example: name@domain.com';
	    is_valid = false;
	}

	//	Phone
	var phone = document.careersForm.phone.value;
	var RegExp = '^[\+0-9 ()]+$';
	if (!phone.match(RegExp))
	{
	    document.getElementById('phone').style.background = '#eeeeee';
	    document.getElementById('ePhone').style.height = '100%';
	    document.getElementById('ePhone').innerHTML = 'Please enter your phone. May only contain numbers.';
	    is_valid = false;
	}
	
	//	Captcha
	var captcha = document.careersForm.captcha.value;
	var RegExp = '.+';
	if (!captcha.match(RegExp))
	{
	    document.getElementById('captcha').style.background = '#eeeeee';
	    is_valid = false;
	}
	
	if( is_valid )
	{
		document.getElementById('careersFormError').innerHTML = "<iframe id='checkerdiv' src='check.php?email="+email+"&captcha="+captcha+"'>";
	}
};


/****************************************************************
 * @final 		Markdata Interface								*
 ****************************************************************/