window.addEvent('domready', function()
{
	if ( ! $('contact') ) return;
	
	new Center($('contact-form'));
    $('contact').addEvent('click', function(){
		$$('.overlay').show();
		$('contact-form').show();
	});
	
	$$('.overlay, .close').addEvent('click', function(){
		$$('.overlay').hide();
		$('contact-form').hide();
	});
	
	$$('#contact-form .reset').addEvent('click', function() {
		$$('#contact-form input, #contact-form textarea').set('value', '');
	});
	
	$$('#contact-form .send').addEvent('click', function(e) {
		e.stop();
		
		var fields = $$('#contact-form .required input, #contact-form .required textarea');
		
		var err_count = 0;
		fields.each(function(item, i) {
			if ( item.get('value').length == 0 ) {
				$(item).getNext('.err-msg').set('html', 'Заполните обязательное поле');
				err_count++;
			}
		});
		
		if ( err_count > 0 ) {
			$$('#contact-form .confirmation').addClass('conf-error');
			$$('#contact-form .confirmation').set('html', 'Ошибка');
			return;
		}
		$$('#contact-form .overlay-big').show();
		var req = new Request.JSON({
			method: 'post',
			url: '/index/contact',
			data: {
				'name'	: $('name').get('value'),
				'email'	: $('email').get('value'),
				'phone'	: $('phone').get('value'),
				'subject'	: $('subject').get('value'),
				'message'	: $('message').get('value'),
				'referer'	: $('referer').get('value'),
				'country'	: $('country').get('value'),
				'entity'	: $('entity').get('value')
			},
			onSuccess: function(response) {
				$$('.err-msg').set('html', '');
				$$('#contact-form .overlay-big').hide();
				if ( response.error ) {
					$$('#contact-form .confirmation').addClass('conf-error');
					$$('#contact-form .confirmation').set('html', 'Ошибка');
					
					if ( response.error.name ) {
						$('err-name').set('html', response.error.name);
						//$('err-name').getPrevious().addClass('error');
					} else {
						//$('err-name').getPrevious().addClass('error');
					}
					if ( response.error.phone ) {
						$('err-phone').set('html', response.error.phone);
						//$('err-phone').getPrevious().addClass('error');
					} else {
						//$('err-phone').getPrevious().addClass('error');
					}
					if ( response.error.email ) {
						$('err-email').set('html', response.error.email);
					}
					$('err-message').set('html', response.error.message ? response.error.message : '');
				} else {
					$$('#contact-form .confirmation').removeClass('conf-error');
					$$('#contact-form .confirmation').addClass('conf-success');
					$$('#contact-form .confirmation').set('html', 'Письмо успешно отправлено.');
				}
			}
		}).send();

	});
	
});


