(function(a){a.cookie=function(g,f,k){if(arguments.length>1&&(!/Object/.test(Object.prototype.toString.call(f))||f===null||f===undefined)){k=a.extend({},k);if(f===null||f===undefined){k.expires=-1}if(typeof k.expires==="number"){var h=k.expires,j=k.expires=new Date();j.setDate(j.getDate()+h)}f=String(f);return(document.cookie=[encodeURIComponent(g),"=",k.raw?f:encodeURIComponent(f),k.expires?"; expires="+k.expires.toUTCString():"",k.path?"; path="+k.path:"",k.domain?"; domain="+k.domain:"",k.secure?"; secure":""].join(""))}k=f||{};var b=k.raw?function(i){return i}:decodeURIComponent;var c=document.cookie.split("; ");for(var e=0,d;d=c[e]&&c[e].split("=");e++){if(b(d[0])===g){return b(d[1]||"")}}return null}})(jQuery);
$.easing.jswing = $.easing.swing;
$.extend($.easing,
{
	def: 'easeOutQuad',
	swing: function (x, t, b, c, d) {
		return $.easing[$.easing.def](x, t, b, c, d);
	},
	easeOutQuad: function (x, t, b, c, d) {
		return -c *(t/=d)*(t-2) + b;
	},
	easeOutCubic: function (x, t, b, c, d) {
		return c*((t=t/d-1)*t*t + 1) + b;
	},
	easeOutQuart: function (x, t, b, c, d) {
		return -c * ((t=t/d-1)*t*t*t - 1) + b;
	},
	easeOutCirc: function (x, t, b, c, d) {
		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
	}
});

$(document).ready(function() {
	$('#contact-box').delay(1000).queue(function () {		$(this).css({			'display': 'block',
			'top': parseInt($(window).height() / 2 - $('#contact-box').outerHeight() / 2)
			//'left': -(parseInt($('#contact-box').outerWidth()))
		});
		$(this).dequeue();
		$(this).animate({'left': -504}, 500);
	});
	$('#contact-box input.cancel').bind('click', function() {
		contactBoxCancel();
	});
	$('#contact-box input#contact-send').bind('click', function() {
		contactBoxSend();
	});
	$('<div id="doc-shadow"></div>').appendTo('body').css({		'display': 'none',
		'opacity': 0,
		'position': 'absolute',
		'top': 0,
		'left': 0,
		'width': $(document).width(),
		'height': $(document).height(),
		'background': '#525252'
	});
	$('#contact-box #l_uname').val($.cookie('contact_name'));
	$('#contact-box #l_email').val($.cookie('contact_mail'));
	$('#contact-box #l_telephone').val($.cookie('contact_tele'));
	$('#contact-box .contact-box-b').on({
		click: function (){			if ((parseInt($('#contact-box').css('left')) > 0))
				contactBoxCancel();
			else
				contactBoxFocus();		},
		mouseenter: function(){
			if ((parseInt($('#contact-box').css('left')) == -504))
				$(this).fadeTo(300, 1);
		},
		mouseleave: function(){
			if ((parseInt($('#contact-box').css('left')) == -504))
				$(this).fadeTo(300, 0.7);
		}
	}).css('opacity', 0.7).attr('title', 'Задать вопрос менеджеру');
});

function contactBoxCancel() {
	$('#contact-box').animate({
		'left': -(parseInt($('#contact-box').outerWidth()))
	}, 800, 'easeOutQuart', function () {		$('#contact-box textarea').val('');
		$('#contact-box input[type="text"], #contact-box textarea').attr('style', '').addClass('def-input');
		$('#box-send-wait').remove();
		$('.contact-box-alert').remove();
		$('#contact-box .contact-box-b').fadeTo(300, 0.7);	});
	$('#doc-shadow').animate({
			'opacity': 0
	}, 600, function () {		$(this).css('display', 'none');	});}

function contactBoxFocus() {	$('#contact-box').animate({
		'left': parseInt($(window).width() / 2 - $('#contact-box').width() / 2)
	}, 800, 'easeOutQuart');
	$('#doc-shadow').css('display', 'block').animate({
		'opacity': 0.6
	}, 1200);
	$('#contact-box .contact-box-b').css('opacity', 1.0);}

function contactBoxSend() {	var wrong_field_css = {'border': '1px solid #ed5555', 'box-shadow': '0 0 5px #f47d7d'};
	var ok_field_css = {'border': '1px solid #4FA766', 'box-shadow': '0 0 3px #4FA766'};
	var fields_invalid = 0;

	$('#contact-box input[type!="button"], #contact-box textarea').css(ok_field_css);
	if ($('#contact-box #l_uname').val().length == 0) {    	$('#contact-box #l_uname').css(wrong_field_css).focus();
    	fields_invalid++;	}

	if (!(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/).test($('#contact-box #l_email').val())) {
    	$('#contact-box #l_email').css(wrong_field_css).focus();
    	fields_invalid++;
	}

	if ($('#contact-box #l_telephone').val().length == 0) {
    	$('#contact-box #l_telephone').css(wrong_field_css).focus();
    	fields_invalid++;
	}

	if ($('#contact-box #l_text').val().length == 0) {
    	$('#contact-box #l_text').css(wrong_field_css).focus();
    	fields_invalid++;
	}

	if (fields_invalid == 0) {
		var expire = {expires: 100, path: '/'};
		$.cookie('contact_name', $('#contact-box #l_uname').val(), expire);
		$.cookie('contact_mail', $('#contact-box #l_email').val(), expire);
		$.cookie('contact_tele', $('#contact-box #l_telephone').val(), expire);

		$('<div id="box-send-wait"></div>').appendTo('#contact-box').css({
			//'display': 'none',
			'background': '#fff',
			'border-radius': '2px',
			'opacity': 0.8,
			'position': 'absolute',
			'top': 0,
			'left': 0,
			'width': $('#contact-box').width(),
			'height': $('#contact-box').height(),
	        'cursor' : 'wait'
		});

		$.ajax({
			url: "sendcontact.php",
			type: "POST",
			data: {				uname: $('#contact-box #l_uname').val(),
				umail: $('#contact-box #l_email').val(),
				utele: $('#contact-box #l_telephone').val(),
				utext: $('#contact-box #l_text').val(),
				usurl:  document.location.href
			},
			dataType: 'jsonp',
			crossDomain: true,
			success: function(html){
				//alert(html.status);
				if (html.status > 0) {	            	$('#box-send-wait').css('cursor', 'default');
	            	$('<div></div>').appendTo('#contact-box').addClass('contact-box-alert').html('Ваш вопрос отправлен')
	            	.css({	            		'top': ($('#contact-box').height() / 2 - 40),
	            		'left': ($('#contact-box').width() / 2 - 150)	            	})
	            	.fadeIn(500).delay(2000).queue(function () {	            		contactBoxCancel();	            	});				}
			}
		});
	}}
