jQuery(document).ready(function(){
	//alert('try');
	var pageObj = new PageTry();
});

function PageTry()
{
	this.getLangList();
	this.createHandlers();
	this.clearTuf();
}

/**
* Вешаем обработчики событий
*/
PageTry.prototype.createHandlers = function()
{
	/**
	* Обработчики ввода символа в полях формы
	*/
	var self = this;
	var intervalId;

	jQuery('input').focus(function (){
		var checkIntervalValue = 2000;
		var currentID = jQuery(this).attr('id');
		//console.log(this);
		//console.log(window.validateUniverseName);
		if(currentID == 'tuf_universe_name'){intervalId = setInterval(validateUniverseName, checkIntervalValue);}
		else if(currentID == 'tuf_full_name'){intervalId = setInterval(validateFullName, checkIntervalValue);}
		else if(currentID == 'tuf_login'){intervalId = setInterval(validateLogin, checkIntervalValue);}
		else if(currentID == 'tuf_email'){intervalId = setInterval(validateEmail, checkIntervalValue);}
		else if(currentID == 'tuf_email_confirm'){intervalId = setInterval(validateEmailConfirm, checkIntervalValue);}
		else if(currentID == 'tuf_phone'){intervalId = setInterval(validatePhone, checkIntervalValue);}
	});
	
	jQuery('input').blur(function (){
		clearInterval(intervalId);
		
		var currentID = jQuery(this).attr('id');
		if(currentID == 'tuf_universe_name'){validateUniverseName();}
		else if(currentID == 'tuf_full_name'){validateFullName();}
		else if(currentID == 'tuf_login'){validateLogin();}
		else if(currentID == 'tuf_email'){validateEmail();}
		else if(currentID == 'tuf_email_confirm'){validateEmailConfirm();}
		else if(currentID == 'tuf_phone'){validatePhone();}
	});
	
	/**
	* Обработка клика по галке согласия с условиями
	*/
	jQuery('#tuf_question').click(function(){
		if(jQuery(this).attr('checked') == true)
		{
			// TODO Раскомментировать
			jQuery('#tuf_submit_link').removeAttr('disabled');
		}
		else
		{
			jQuery('#tuf_submit_link').attr('disabled', 'disabled');
		}
	});		

	/**
	* Обработка клика по линку отправки формы
	*/
	jQuery('#tuf_submit_link').click(function(){
		if(self.isTufDataCorrect())
		{
			self.createUniverse();
		}
		else
		{
			alert(errorMsg);
		}
	});
};
/**
 * Запрашиваем список языков
 */
PageTry.prototype.getLangList = function()
{
	var langs = getAll__('get_langs_list', '', new CerebroLang);
	if(langs.length > 0)
	{
		// Проверяем статус ответа сервера
		if(langs[0].code == 'ok' && langs.length > 1)
		{// Все нормально, генерим инпут с языками
			var selectLangsContent = '<option value="'+langs[1].uid+'" selected="selected">'+langs[1].name+'</option>';
			for(var i = 2; i < langs.length; i++)
			{
				selectLangsContent += '<option value="'+langs[i].uid+'">'+langs[i].name+'</option>';
			}
			jQuery('#tuf_lng').append(selectLangsContent);
		}
		else
		{// Все плохо, сносим форму
			jQuery('.try-universe-form').empty();
			jQuery('.try-universe-form').text(serviceErrorMsg);
		}
	}
};

/**
* Проверка корректности заполнения формы
* @return boolean - true, если форма заполнена корректна, иначе false
*/
PageTry.prototype.isTufDataCorrect = function()
{
	//if(jQuery('#tuf_universe_name').hasClass('input-good') && jQuery('#tuf_full_name').hasClass('input-good') && jQuery('#tuf_login').hasClass('input-good') && jQuery('#tuf_email').hasClass('input-good') && jQuery('#tuf_email_confirm').hasClass('input-good'))
	if(jQuery('#tuf_universe_name').hasClass('input-good') && jQuery('#tuf_full_name').hasClass('input-good') && jQuery('#tuf_login').hasClass('input-good') && jQuery('#tuf_email').hasClass('input-good') && jQuery('#tuf_phone').hasClass('input-good'))
	{
		return true;
	}
	
	return false;
};

/**
* Очистка формы
*/
PageTry.prototype.clearTuf = function()
{
	// [TODO] Некрасиво, переделать по реальной верстке
	
	jQuery('#tuf_universe_name').val('');
	jQuery('#tuf_universe_name').removeClass('input-good');
	
	jQuery('#tuf_full_name').val('');
	jQuery('#tuf_full_name').removeClass('input-good');
	
	jQuery('#tuf_login').val('');
	jQuery('#tuf_login').removeClass('input-good');
	
	jQuery('#tuf_email').val('');
	jQuery('#tuf_email').removeClass('input-good');
	
	/*
	jQuery('#tuf_email_confirm').val('');
	jQuery('#tuf_email_confirm').removeClass('input-good');
	*/
	
	jQuery('#tuf_site').val('');
	jQuery('#tuf_site').removeClass('input-good');
	
	jQuery('#tuf_icq').val('');
	jQuery('#tuf_phone').val('');
	jQuery('#tuf_why_cerebro').val('');

	jQuery('#tuf_question').attr('checked', false);
	jQuery('.tuf-submit').hide();
};

/**
* Обработка клика по линку отправки формы
*/
PageTry.prototype.createUniverse = function()
{
	var param = '';
	param += 'uname='+jQuery('#tuf_universe_name').val();
	param += '&email='+jQuery('#tuf_email').val();
	param += '&login='+jQuery('#tuf_login').val();
	param += '&full_name='+jQuery('#tuf_full_name').val();
	param += '&lang='+jQuery('#tuf_lng').val();
	param += '&icq='+jQuery('#tuf_icq').val();
	param += '&phone='+jQuery('#tuf_phone').val();
	param += '&why_cerebro='+jQuery('#tuf_why_cerebro').val();
	param += '&lang_string='+jQuery('#tuf_lng option:selected').text();
	param += '&email_confirm='+jQuery('#tuf_email_confirm').val();
	param += '&site='+jQuery('#tuf_site').val();
	param += '&ref='+jQuery('#tuf_ref').val();

	var answer = getAll__('create_universe', param);
	
	if(answer.length > 0)
	{
		// Проверяем статус ответа сервера
		if(answer[0].code == 'ok')
		{	
			var signupBox = $('.SignUpBox');
			jQuery('.SignUpBoxBody').hide();
			jQuery('.SignUpBoxBody').slideUp(100);
			jQuery('.arr a').removeClass('collapsed');
			
			alert(tryUniverseSuccessMsg);
			//jQuery('.SignUpBoxBody').hide();
			this.clearTuf();
			
			/*
			jQuery('.try-universe-form').empty();
			jQuery('#tuf-title').empty();
			jQuery('.try-universe-form').text(tryUniverseSuccessMsg);
			*/
		}
		else
		{
			alert('code: '+answer[0].code+' message: '+answer[0].message);
		}
	}
};

