/**
 * @author cybi
 */

var AjaxClass = new Class({
    
    initialize: function(){
	}, // initialize
	
	domReady: function() {
        this.activateReview();
        this.activateRecipe();
        this.activateNewsletter();
        this.activateContact();
	}, // domReady
	
    clearForm: function(form_obj) {
        var elems = form_obj.getElementsBySelector('input[type=text],textarea');
        
        elems.each(function(obj) {
              obj.value = '';
        })
    }, // clearForm
    
    sendReview: function(ajax_form) {
        var loader_div=$('review_loader');
        var submit_btn = $('review_send');
        var status_div = $('review_status');

        submit_btn.setStyle('display','none');
        loader_div.setStyle('display','block');
        
        ajax_form.action='/ajax/review';
        ajax_form.readonly='readonly';
        ajax_form.send({
            update: status_div,
            onComplete: function(req){
                if ( status_div.innerHTML.indexOf('__ok__') != -1 ) {
                        MyAjax.clearForm(ajax_form);
                    }
                ajax_form.readonly='';
                loader_div.setStyle('display','none');
                submit_btn.setStyle('display','block');
					 //go();
            }
        });
    }, // sendReview
    
    /*
   sendRecipe: function(ajax_form) {
        var loader_div=$('recipe_loader');
        var submit_btn = $('recipe_send');
        var status_div = $('recipe_status');

        submit_btn.setStyle('display','none');
        loader_div.setStyle('display','block');
        
        ajax_form.action='/ajax/recipe';
        ajax_form.readonly='readonly';
        ajax_form.send({
            update: status_div,
            onComplete: function(req){
                if ( status_div.innerHTML.indexOf('__ok__') != -1 ) {
                        MyAjax.clearForm(ajax_form);
                    }
                ajax_form.readonly='';
                loader_div.setStyle('display','none');
                submit_btn.setStyle('display','block');
					 //go();
            }
        });
    }, // sendRecipe */
    
    sendContact: function(ajax_form) {
        var loader_div=$('contact_loader');
        var submit_btn = $('contact_send');
        var status_div = $('contact_status');

        submit_btn.setStyle('display','none');
        loader_div.setStyle('display','block');
        
        ajax_form.action='/ajax/contact';
        ajax_form.readonly='readonly';
        ajax_form.send({
            update: status_div,
            onComplete: function(req){
                if ( status_div.innerHTML.indexOf('__ok__') != -1 ) {
                        MyAjax.clearForm(ajax_form);
                    }
                ajax_form.readonly='';
                loader_div.setStyle('display','none');
                submit_btn.setStyle('display','inline');
					// go();
            }
        });
    }, // sendRecipe
    
    sendNewsletter: function(ajax_form) {
        var loader_div=$('newsletter-loader');
        var submit_btn = $('newsletter-button');
        var status_div = $('newsletter-status');

        submit_btn.setStyle('display','none');
        loader_div.setStyle('display','block');
        
        ajax_form.action='/ajax/newsletter';
        ajax_form.readonly='readonly';
        ajax_form.send({
            update: status_div,
            onComplete: function(req){
                if ( status_div.innerHTML.indexOf('__ok__') != -1 ) {
                        MyAjax.clearForm(ajax_form);
                    }
                ajax_form.readonly='';
                loader_div.setStyle('display','none');
                submit_btn.setStyle('display','block');
					 //go();
            }
        });
    }, // sendRecipe
    
    activateReview: function() {
        var send_form = $('review_form');

        if ( send_form ) {
            send_form.onsubmit = function() {
                MyAjax.sendReview(this);
                return false;
            }
        }
    }, // activateReview
    
    activateNewsletter: function() {
        var send_form = $('sign_up_form');
        var send_button = $('newsletter-button');

        if(send_form && send_button) {
        
            send_button.onclick = function () {
                MyAjax.sendNewsletter($('sign_up_form')); 
                return false;
            }
    
            if ( send_form ) {
                send_form.onsubmit = function() {
                    MyAjax.sendNewsletter(this);
                    return false;
                }
            }
        }
    }, // activateReview
    
    activateRecipe: function() {
     var send_form = $('recipe_form');

     if ( send_form ) {
         send_form.onsubmit = function() {
             MyAjax.sendRecipe(this);
             return false;
         }
     }
    },// activateRecipe
     
     activateContact: function() {
     var send_form = $('contact_form');

     if ( send_form ) {
         send_form.onsubmit = function() {
             MyAjax.sendContact(this);
             return false;
             }
         }
     } //activateContact
    
});

var MyAjax = new AjaxClass();

window.addEvent('domready', function(){ MyAjax.domReady(); });


