/**
 * @author Krzysztof Sobieraj
 * 
 * @since 2010-05-27
 * @version 1.0.20100817.1003
 */
jQuery(document).ready(function(){
	jQuery('#verifyLink').bind('click', function(){
		modalBuilder(jQuery(this));
	});

	jQuery('body').delegate('.submitButton', 'click', function() {
		_validator(jQuery(this));
		return false;
	});
	
	jQuery('body').delegate('#modalCloseBox', 'click', function(){
		_validator(jQuery(this));
	});
/*	
	jQuery('#newAccountBox').children('a').bind('click', function() {
		alert('Funkcja zakładania nowych kont jest chwilowo niedostępna. \nJeżeli posiadasz juz konto w naszym serwisie ale nie możesz się zalogować skorzystaj z opcji "Weryfikuj e-mail". \nJeżeli nie masz jeszcze konta w naszym serwisie, a chcesz je założyć napisz e-mail na adres k.kuberski@rp.pl. \n\nPrzepraszamy za niedogodności.');
		return false;
	});
*/	
	jQuery('#verifyHelpLink').bind('click', function() {
		helpModalBuilder();
	});
	
	jQuery('body').delegate('#closeHelpBox', 'click', function(){
		jQuery('#helpBox').remove();
	});
})

function modalBuilder(oActiveElement) {
	var plateWidth = document.body.clientWidth;
	var plateHeight = document.body.clientHeight;
	
	var detailsWidth = 450;
	var detailsLeft = (plateWidth - detailsWidth) / 2;
	var detailsTop = 100;

	var oPlate = document.createElement('div');
	jQuery(oPlate).css('width', plateWidth).css('height', plateHeight);
	jQuery(oPlate).attr('id', 'modalBg');
	jQuery(oPlate).appendTo('body');
	jQuery(oPlate).css('opacity','0').show().fadeTo(10, 0.5, function(){
		
		var oModalBox = document.createElement('div');
		jQuery(oModalBox).css('position', 'absolute').css('left', detailsLeft).css('top', detailsTop);
		jQuery(oModalBox).css('display', 'none');
		jQuery(oModalBox).attr('id', 'verifyBox');
		jQuery(oModalBox).appendTo('body');

		var oModalBoxp = document.createElement('div');
		jQuery(oModalBoxp).attr('id', 'verifyBoxp');
		jQuery(oModalBoxp).appendTo('#verifyBox');

		var oModalCloseBox = document.createElement('div');
		jQuery(oModalCloseBox).attr('id', 'modalCloseBox');
		jQuery(oModalCloseBox).appendTo('#verifyBox');
	
		jQuery('#verifyBoxp').load('http://www.parkiet.com/migracja/login.ajax', function(){
			jQuery(oModalBox).fadeIn(500);
		});
	});
}

function helpModalBuilder() {
	var oModalBox = document.createElement('div');
	jQuery(oModalBox).css('position', 'absolute').css('right', '25px').css('top', '25px');
	jQuery(oModalBox).css('display', 'none');
	jQuery(oModalBox).attr('id', 'helpBox');
	jQuery(oModalBox).appendTo('body');

	var oModalBoxp = document.createElement('div');
	jQuery(oModalBoxp).attr('id', 'helpBoxp');
	jQuery(oModalBoxp).appendTo('#helpBox');

	var oModalCloseBox = document.createElement('div');
	jQuery(oModalCloseBox).attr('id', 'closeHelpBox');
	jQuery(oModalCloseBox).appendTo('#helpBox');
	
	jQuery('#helpBoxp').load('http://www.parkiet.com/migracja/help.html', function(){
		jQuery(oModalBox).fadeIn(500);
	});
}

function _validator(oActiveElement) {
	switch(oActiveElement.attr('id')) {
		case 'weryfikacja':
			if (oActiveElement.parents('.loginFormBox').find('#login').val() == '' || oActiveElement.parents('.loginFormBox').find('#password').val() == '') {
	  		jQuery('.validationMsg').children('div').fadeIn(50);
			}
			else {
				jQuery('#verifyBoxp').load('http://www.parkiet.com/migracja/login.ajax', {login:jQuery('#login').val(), pass:jQuery('#password').val()});
			}
			break;

		case 'potwierdzenie':
			if (_validateEmail(oActiveElement.parents('.verifyFormBox').find('#email').val())) {
				jQuery('#verifyBoxp').load('http://www.parkiet.com/migracja/confirm.ajax', {email:jQuery('#email').val(), mobile:jQuery('#mobile').val(), conditions:jQuery('#cconditions').val(), agree:jQuery('#cagree').val(), marketing:jQuery('#cmarketing').val(), newsletter:jQuery('#cnewsletter').val()});
			}
			else {
				if(oActiveElement.parents('.verifyFormBox').find('#email').val() == "") {
					jQuery('.verifyFormBox').find('.error_msg').text('prosimy o uzupełnienie pola adres e-mail');
				}
				else {
					jQuery('.verifyFormBox').find('.error_msg').text('adres e-mail ma niepoprawną formę');
				}
			}
			break;

		default: 
			jQuery('#verifyBox').fadeOut(200, function(){
				jQuery('#verifyBox').remove();
				jQuery('#modalBg').fadeOut(200, function(){
					jQuery('#modalBg').remove();
				});
			});
	}
}

function _validateEmail(sEmail) {
	var bFlag;
	var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	filter.test(sEmail) ? bFlag = true : bFlag = false;
	return bFlag;
}
