                                 /*---------------------------------------------*\
                                 |   Автор: Lastron [Стиблюк Эдуард Петрович]    |
                                 |   Скрипт написан для WebStudio Aweb Systems   |
                                 |   Data: 20.08.2011:4.20                       |
                                 \*---------------------------------------------*/


function isValidEmail(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

var j = jQuery.noConflict();

j(function(){
	// Dialog
	j('#dialog').dialog({
		autoOpen: false,
		width: 540,
		buttons: {
			"Заказать": function() {

				var DialogName     = j('#dialog input[name="name"]').val();
				var DialogMail     = j('#dialog input[name="mail"]').val();
				var DialogPhone    = j('#dialog input[name="phone"]').val();
				var DialogDopInfo  = j('#dialog textarea').val();
				var DialogCaptcha  = j('#dialog input[name="captcha"]').val();

				//Проверяю DialogName
				if(DialogName == ""){
					j('#dialog input[name="name"]').css('border', '1px solid #E11116');
					var DialogErrorName = false;
				}
				else {
					var DialogErrorName = true;
					j('#dialog input[name="name"]').css('border', '1px solid #A5B6A5');
				}

				//Проверяю DialogMail
				if(DialogMail == ""){
					j('#dialog input[name="mail"]').css('border', '1px solid #E11116');
					var DialogErrorMail = false;
				}
				else {
					//если это E-Mail
					if(isValidEmail(DialogMail)){
						var DialogErrorMail = true;
						j('#dialog input[name="mail"]').css('border', '1px solid #A5B6A5');
					}
					else { //если это не E-Mail
						var DialogErrorMail = false;
						j('#dialog input[name="mail"]').css('border', '1px solid #E11116');
					}
				}//

				//Проверяю DialogPhone
				if(DialogPhone == ""){
					j('#dialog input[name="phone"]').css('border', '1px solid #E11116');
					var DialogErrorPhone = false;
				}
				else {
					var DialogErrorPhone= true;
					j('#dialog input[name="phone"]').css('border', '1px solid #A5B6A5');
				}

				//Если небыло ошибок при проверке
				if(DialogErrorName == true && DialogErrorMail == true && DialogErrorPhone == true){
					j.post("/fb/captcha/session.php", { keystring: DialogCaptcha }, function(data) {						if(DialogCaptcha == ""){							//в случае пустого поля капчи - обновляем её
							j('.CaptchaImg').attr('src', '/fb/captcha/?key='+(Math.floor(Math.random()*100)+4*967)*534);
							j('.CaptchaConteiner > div:first-child').html('<span>Поле не заполнено.</span>');
						}
						else if(data == false){
							//в случае неправильного ввода капчи - обновляем её
							j('.CaptchaImg').attr('src', '/fb/captcha/?key='+(Math.floor(Math.random()*100)+4*967)*534);
							j('.CaptchaConteiner > div:first-child').html('<span>Не правильно заполнено поле.</span>');
						}

						//Если код капчи правильный
						else if(data == true){							//сохраняю html формы и кнопки
							var FormScin = j('.ui-dialog-content').html();

							//отсылаем пост данные
							j.post("/fb/sendmail.php", { name: DialogName, mail: DialogMail, phone: DialogPhone, dop_info: DialogDopInfo }, function(TextRequest) {
								//перезаписываю содержимое окна если POST передача успешна
								j('.ui-dialog-content').html(TextRequest);
								//убираю кнопку заказать
								j('.ui-dialog-buttonset > button:first-child').fadeOut("fast");
							});

							//закрываем диалоговое окно с эфектом
							j('.ui-dialog').delay(2500).slideUp(300, function(){
								//записываю назад форму
								j('.ui-dialog-content').html(FormScin);
								//вывожу назад кнопку - воаля )))
								j('.ui-dialog-buttonset > button:first-child').fadeIn("fast");
								//закрываю диалоговое окно по методе )
								j('#dialog').dialog("close");
								//убираю задний фон
								j('#zadniy_fon').fadeOut("fast", function(){
									j(this).remove();
								});
							});
						}
						else {
							//в случае невероятного ответа
							j('.CaptchaImg').attr('src', '/fb/captcha/?key=' + ( Math.floor ( Math.random () * 100 ) * 967 ) * 534 );
							j('.CaptchaConteiner > div:first-child').html(data);
						}
					});
				}
			},
			"Отмена": function() {
				//console.log(this)
				j('.ui-dialog').slideUp(300, function(){
					j('#dialog').dialog("close");
					j('#zadniy_fon').delay(100).fadeOut("fast", function(){
						j(this).remove();
					});
				});
			}
		}
	});

	// Dialog Link
	j('#dialog_link').click(function () {
		j('#dialog').dialog('open');
		//добавляю  display:none; для будующего эфекта
		j('.ui-dialog').css('display','none');
		//вывод елемента с эфектом после задержки в 0,2 сек
		j('.ui-dialog').delay(200).fadeIn(150, function(){
			j(this).animate({"top": "-=7px"}, 150);
		});
		//Если после открытия окна нажать ESC
		j(document).keyup(function(e) { //keydown
			if (e.keyCode == 27) {
				j('#zadniy_fon').delay(300).fadeOut("fast", function(){
					j(this).remove();
				});
			}
		});
		//если не IE Explorer (проверка методом бага, так как только IE бажит)
/*
		if(-[1,]){			//Собираю переменную DopText
			var DopText = "Меня интересует \""+ProductName+"\" стоимостью: "+ProductPrice+" Руб. \n------------ \nДополнительные параметры: \nПолотно: "+j('#polotno option:selected').text()+"\nКоробка: "+j('#corobka option:selected').text()+"\nНаличник: "+j('#nalichnic option:selected').text()+"\nДобор: "+j('#dobor option:selected').text()+" \nАртикул: "+ProductSku+"\n------------ \n";
			//добавляю тени
			j('.ui-dialog').addClass('shadow');
		}
		else {			//Собираю переменную DopText
			var DopText = "Меня интересует \""+ProductName+"\" стоимостью: "+ProductPrice+" Руб. <br />------------ <br />Дополнительные параметры: <br />Полотно: "+j('#polotno option:selected').text()+"<br />Коробка: "+j('#corobka option:selected').text()+"<br />Наличник: "+j('#nalichnic option:selected').text()+"<br />Добор: "+j('#dobor option:selected').text()+" <br />Артикул: "+ProductSku+"<br />------------ <br />";
		}
		j('#dialog textarea').html(DopText);
		return false;
*/
	});
});

//после загрузки страницы
j(document).ready(function () {
	j('#dialog_link').click(function () {
		j('.ui-dialog').css('z-index', '1100');
		//Узнаём высоту документа
		var docHeight = j(document).height();
		//Узнаём длинну документа
		var docWidth  = j(document).width();
		//создаём елемент div и прикрепляем его к body с высчитанными размерами
		j('body').append(j('<div />').addClass('ui-widget-overlay lastronFon').attr('id','zadniy_fon').attr('style','width: '+docWidth+'px; height: '+docHeight+'px; '))
		j('#zadniy_fon').fadeIn(300);
		//удаляю кнопку закрыть
		j('.ui-dialog-titlebar-close').remove();
		//Если при открытом окне кликнуть по прозрачному заднему слою
		j('#zadniy_fon').click(function () {
			var name_fon = j(this);
			j('.ui-dialog').slideUp(300, function(){
				name_fon.fadeOut(300, function(){
					j(this).remove();
				});
			});
		});
		//Если кликнуть по ссылке обновить
		j('.refresh').bind('click', function (event) {
			j('.CaptchaImg').attr('src', '/fb/captcha/?key=' + ( Math.floor( Math.random() * 100 ) * event.pageX ) * event.pageY );
		});
	});
});
