//TODO обработка ентера в формах
// TODO отчистка полей перед показом формы
// Сократить количество кода
function showreg(){
	$('#reg_firstname_help').text("");
	$('#reg_email_help').text("");
	$('#reg_password_help').text("");
	$('#reg_password2_help').text("");
	$('#reg_info').text("");
	$('#reg_password').val("");
	$('#reg_password2').val("");

$('#register_form').dialog('open').load('/register/register.php');
}

$(document).ready(function(){
    
	$('span#mymail').html('<a href=\'mailto:dfprices@mail.ru\'>'+$('span#mymail').html()+'</a>');
	  $('ul.airport_list').columnize({ width: 290});
	  $('ul.airport_list_w').columnize({ width: 465});
	  $('ul.product_list').columnize({ width: 465});


	  $('#login').click(function() {
			if($(this).text()=='вход'){
				$('#password').val('');
				$('span.help').text("");
	  			$('#login_info').text('');
				$('#login_form').dialog('open').load('/register/login.php',"",function(){if($.cookie('email')) $('#email').val($.cookie('email'));});


			}
			else{
				//свойства пользователя
				$('#reg_firstname_help').text("");
//				$('#reg_email_help').text("");
				$('#reg_password_help').text("");
				$('#reg_password2_help').text("");
				$('#reg_info').text("");
				$('#reg_password').val("");
				$('#reg_password2').val("");
				$('#register_form').dialog('option','title','Смена данных пользователя');
				$('#register_form').dialog('option', 'buttons', { "Сохранить": function() {
					/*
					 * функция сохранения параметров пользователя
					 */

					$('#reg_firstname_help').text("");
//					$('#reg_email_help').text("");
					$('#reg_password_help').text("");
					$('#reg_password2_help').text("");

					if($('#reg_firstname').val()=="" ||  /*$('#reg_email').val()=="" ||*/  $('#reg_password').val()=="" || $('#reg_password2').val()==""){
		  				if($('#reg_password2').val()==""){
							$('#reg_password2_help').text("Требуется заполнить");
							$('#reg_password2').focus();
							}
		  				if($('#reg_password').val()==""){
							$('#reg_password_help').text("Требуется заполнить");
							$('#reg_password').focus();
							}
/*						if($('#reg_email').val()==""){
							$('#reg_email_help').text("Требуется заполнить");
							$('#reg_email').focus();
						}
*/						if($('#reg_firstname').val()==""){
							$('#reg_firstname_help').text("Требуется заполнить");
							$('#reg_firstname').focus();
						}
						return false;
		  			}
					if($('#reg_password').val() != $('#reg_password2').val()){
						$('#reg_password_help').text("Пароли не совпадают");
						$('#reg_password2_help').text("Пароли не совпадают");
						$('#reg_password').val("");
						$('#reg_password2').val("");
						$('#reg_password').focus();
						return false;
					}
/*					if ($('#reg_email').val().search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1){
						$('#reg_email_help').text("Это не email-адрес");
						$('#reg_email').focus();
						return false;
					}
*/					$.post('/register.php',{'action':'putuserdata',
						'firstname':$('#reg_firstname').val(),
						'secondname':$('#reg_secondname').val(),
						'country':$('#reg_country').val(),
//						'email':$('#reg_email').val(),
						'city':$('#reg_city').val(),
						'password':$('#reg_password').val()
						},
						function(data){
							//TODO проверка на ответ
							if(data=='reboot') document.location.reload();
							$('#register_form').dialog("close");
						});
					}
				});

				$('#register_form').dialog('open').load('/register/update.html');
				$.post('/register.php',{'action':'getuserdata'},
						function(data){
							$('#reg_firstname').val(data['firstname']);
							$('#reg_secondname').val(data['secondname']);
//							$('#reg_email').val(data['email']);
							$('#reg_country').val(data['country']);
							$('#reg_city').val(data['city']);
							$('#reg_password').val(data['password']);
							$('#reg_password2').val(data['password']);
						}, 'json'
				);

			}

		});

	  $('#register').click(function() {
			if($(this).text()=="регистрация"){
				showreg();
		}
			else if($(this).text()=="выход"){
				$.cookie('email', null);
				$.post('/register.php',{'action':'logout'},function(){document.location.reload();});
			}

		});

	  $('#que').click(function() {
		  $('#reg_que').dialog('open').load("/register/que.html");
		  });

	  $('#register2').live('click',function() {
		  if($('#login_form').dialog('isOpen')) $('#login_form').dialog('close');
		  showreg();
		  });

	  $('#getpasswordl').live('click',function() {
		  if($('#login_form').dialog('isOpen')) $('#login_form').dialog('close');
		  $('#password_form').dialog('open').load('/register/password.php',"", function (){$('#password_email').val($('#email').val());});
		  });

	  $('#getpasswordr').live('click',function() {
		  //if($('#register_form').dialog('isOpen')) $('#register_form').dialog('close');
		  //$('#password_form').dialog('open').load('/register/password.php',"", function (){$('#password_email').val($('#reg_email').val());});
          document.location.href="/register/password.php";
		  });
/*
 * форма логина
 */
	$("#login_form").dialog({
			bgiframe: true,
			autoOpen: false,
			height: 370,
			width: 340,
			modal: true,
			resizable: false,
			zIndex: 10000,
			buttons: {
				'Вход': function() {
		// TODO сделать проверку за 1 раз
					$('span.help').text("");
					if($('#email').val()=="" ||  $('#password').val()=="")
					{
						if($('#email').val()==""){
							$('#email_help').text("Требуется заполнить");
							$('#email').focus();
						}
						if($('#password').val()==""){
							$('#password_help').text("Требуется заполнить");
							$('#password').focus();
							}
						return false;
					}
					if ($('#email').val().search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1){
						$('#email_help').text("Это не email-адрес");
						$('#email').focus();
						return false;
					}
					else {
						//проверка пользователя AJAX'ом
						$('#login_info').css({'display':'block','height':'2em'}).html("Подождите, идет проверка...");
						$.post('/register.php',{'email':$('#email').val(),'password':$('#password').val(),'action':'login'},
								function(data){
								// проверяем ответ есть ли пользователь
								if(data=='Ok'){
									//пользователь есть
									//$("#login_form").dialog('close');
									$('#login_info').html("Все в порядке... Подождите секундочку...");

									document.location.reload();
								}
									else if(data=='needactivate'){
										//если не активирован - варнинг
										$("#info_box").dialog('open').html('Не забудьте активировать аккаунт кодом из письма',function(){$('#login_form').dialog('close');});
									}
								else{
									//пользователя нет или запрос не верный
									//$("#dialog").dialog('option','height', 420);
									//$('#login_info').css({'display':'block'});
									$('#login_info').css({'display':'block','height':'4em'}).html("<span class='warning'>Неверное сочетание полей <b>Email</b> и <b>Пароль</b>. Проверьте и попробуйте еще раз.</span>");
									if(data=="1"){
										// запрос пароля по почте
										$('#login_info').css({'display':'block','height':'6em'}).html($('#login_info').html() + "<br>Если вы не помните пароль, <a href='/register/password.php'>запросите его по почте</a>.");
									}

									}
								},'text');
							}
						}
			},

			//open: function() {alert(1);$('#email').val("sss");},
			close: function() {
			//	allFields.val('').removeClass('ui-state-error');
			}
		});


	  $('#register_form').dialog({
			bgiframe: true,
			autoOpen: false,
			height: 510,
			width: 290,
			modal: true,
			resizable: false,
			zIndex: 10000,
			buttons: {
				'Регистрация': function() {
		  			$('span.help').text("");
		  			// TODO сделать проверку за 1 раз
		  			if($('#reg_firstname').val()=="" ||  $('#reg_email').val()=="" ||  $('#reg_password').val()==""){
		  				if($('#reg_password').val()==""){
							$('#reg_password_help').text("Требуется заполнить");
							$('#reg_password').focus();
							}
						if($('#reg_email').val()==""){
							$('#reg_email_help').text("Требуется заполнить");
							$('#reg_email').focus();
						}
						if($('#reg_firstname').val()==""){
							$('#reg_firstname_help').text("Требуется заполнить");
							$('#reg_firstname').focus();
						}
						return false;
		  			}
					if ($('#reg_email').val().search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1){
						$('#reg_email_help').text("Это не email-адрес");
						$('#reg_email').focus();
						return false;
					}
				// проверка по email
					$('#reg_info').css({'display':'block','height':'2em'}).html("Подождите, идет проверка...");
					$.post('/register.php',{'email':$('#reg_email').val(),'action':'checkuser'},
						function(data){
						if(data==1){
							$.post('/register.php',{
								'firstname' : $('#reg_firstname').val(),
								'secondname' : $('#reg_secondname').val(),
								'email' : $('#reg_email').val(),
								'password' : $('#reg_password').val(),
								'city' : $('#reg_city').val(),
								'country' : $('#reg_country').val(),
								'action':'register'}, function (data){
									$("#register_form").dialog('close');
									$("#reg_confirm").dialog('open').load("/register/confirm.html");

								});
							//все хорошо
							}
						else {
							$('#reg_email_help').text("Этот адрес уже есть в базе");
							$('#reg_info').css({'display':'block','height':'3em'}).html("<span class='warning'>Если вы не помните пароль, <span id='getpasswordr' class='link'>запросите его по почте</span>.");
							}

						});

				// активация
				}
	  		},
	  		close: function() {}
	  });
	  // окошко с рассказом о подтверждении

	  $("#reg_confirm").dialog({
		  	//show:'scale',
			bgiframe: true,
			autoOpen: false,
			height: 270,
			width: 340,
			modal: true,
			resizable: false,
			zIndex: 10000,
			buttons: {
				'Понятно': function() {
                    $(this).dialog('close');
                    document.location.reload();  
                }
	  		},
	  		close: function() {}
	  });


	  // окошко с описанием плюсов регистрации
	  $("#reg_que").dialog({
		bgiframe: true,
		autoOpen: false,
		height: 380,
		width: 340,
		modal: true,
		resizable: false,
		zIndex: 10000,
		buttons: {
		  	'Закрыть': function() {$(this).dialog('close');}
	  	}
	  });

	// окошко с востановлением пароля
	  $("#password_form").dialog({
		bgiframe: true,
		autoOpen: false,
		height: 366,
		width: 340,
		modal: true,
		resizable: false,
		zIndex: 10000,
		buttons: {
		  	'Запросить пароль': function() {
		  if($('#password_email').val()==""){
		  			$('#password_email_help').text("Требуется заполнить");
		  			$('#password_email').focus();
		  			return false;
		  		}
		  if ($('#password_email').val().search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1){
				$('#password_email_help').text("Это не email-адрес");
				$('#password_email').focus();
				return false;
			}
		  		$.post('/register.php',{'action':'getpassword', 'email':$('#password_email').val()},function(data){
		  			$("#password_form").dialog('close');
		  			// cделать окошко что все хорошо или плохо
		  			$("#password_form2").dialog('open').html(data);
		  			}
		  		);

		  	}
	  	}
	  });

	  /*
	   * окошко о статусе отправки пароля
	   */
	  $("#password_form2").dialog({
			bgiframe: true,
			autoOpen: false,
			height: 150,
			width: 340,
			modal: true,
			resizable: false,
			zIndex: 10000,
			buttons: {
			  	'Ок': function() {
		  	  			$(this).dialog('close');
				}
	  		}
	  });
	  /*
	   * warning о необходимости активации
	   */
	  $("#info_box").dialog({
			bgiframe: true,
			autoOpen: false,
			height: 150,
			width: 340,
			modal: true,
			resizable: false,
			zIndex: 10000,
			buttons: {
			  	'Ок': function() {
		  	  		//	$(this).dialog('close');
		  	  		document.location.reload();
				}
	  		}
	  });
});
