/*
	НОВОСТИ / ПОДПИСКА
*/
var News_Subscribe = new Class ({
	initialize: function(formID) {
		this.formID = $(formID);
		
		$('email_news_subscribe').addEvent('focus', function(e){
			if (this.get('value') == 'Ваш e-mail') {
				this.set('value', '');
			}
		});
		$('email_news_subscribe').addEvent('blur', function(e){
			if (this.get('value') == '') {
				this.set('value', 'Ваш e-mail');
			}
		});
		
		var validator = new FormValidator(this.formID, {
			submit : false
		});
		validator.addRoule('email_news_subscribe', 'empty', 'Введите Ваш e-mail.');
		validator.addRoule('email_news_subscribe', 'email', 'Введите корректный e-mail.');
		this.formID.addEvent('submit', function(e){
			e.stop();
			this.add(validator);
		}.bind(this));
	},
	
	// Добавление
	add: function(validator) {
		if (validator.validate()) {
			var btn = this.formID.getElement('input[type=submit]');
			btn.set('disabled', true);
			new Ajax(this.formID.get('action'), {
				method : 'post',
				data : this.formID,
				response : function(data) {
					if (!data.error) {
						$('email_news_subscribe').set('value', '');
						
						var fx = new Fx.Reveal(this.formID);
						fx.dissolve().chain(function(){
							this.formID.empty();
							new Element('div', {
								'class': 'msg'
							}).set('text', data.done).inject(this.formID);
							fx.reveal();
						}.bind(this));
					}
					else {
						var first = '';
						$each(data.error, function(text, index){
							if (first == '') {
								first = index;
							}
							var box = $('error_' + index);
							box.set('html', text);
							new Fx.Reveal(box).reveal();
						});
						$(first).focus();
					}
					btn.set('disabled', false);
				}.bind(this)
			}).request();
		}
	}
});
