var Customer = {
    auth: 0,
    login: function() {
        var req = new Ajax(baseUrl + '/customer/login-ajax', {
            data: $('form-login'),
            onComplete: function(response) {
            	Status.end();
                response = Json.evaluate(response);
                if (response.logged) {
                    Customer.auth = 1;
                    $('form-login').reset();
                    
                    Sliders.login.slideOut();
                    Sliders.register.slideOut();
                    
                    //Customer.showSets();
                    Customer.loadSets();
                    $('block-button-save').removeClass('x-hidden');
                } else {
                    alert('Wrong email or password!');
                }
            }
        });
        Status.start('authorizations');
        req.request();
    },
    
    logout: function() {
        var req = new Ajax(baseUrl + '/customer/logout-ajax', {
            onComplete: function(response) {
            	Status.end();
                response = Json.evaluate(response);
                if (response.succefull) {
                    Customer.auth = 0;
                    Customer.hideSets();
                    Customer.showLoginForm();
                    $('block-button-save').addClass('x-hidden');
                } else {
                    alert('Error, please reload page.');
                }
            }
        });
        Status.start('Logout');
        req.request();
    },
    
    register: function() {
        var req = new Ajax(baseUrl + '/customer/register-ajax', {
            data: $('form-register'),
            onComplete: function(response) {
            	Status.end();
                response = Json.evaluate(response);
                $$('#form-register div.error').addClass('x-hidden');
                if (response.succefull) {
                    alert('Your was succefull registered. Now you can login using this data.');
					$('email').value = $('remail').value;
                    $('form-register').reset();
                    Customer.showLoginForm();
                } else {
                    Error.showMessages(response.messages);
                    Sliders.register.slideIn();
                }
            }
        });
        Status.start('Registration');
        req.request();
    },
    
    showRegisterForm: function() {
        $('block-form-register').removeClass('x-hidden');
        Sliders.register.slideIn();
		Customer.hideLoginForm();
		setTimeout("Sliders.register.slideIn()", 500);
    },
    hideRegisterForm: function() {
        Sliders.register.slideOut();
    },
    showHideRegisterForm: function() {
        $('block-form-register').removeClass('x-hidden');
        Sliders.register.toggle();
    },
    
    showLoginForm: function() {
        $('block-form-login').removeClass('x-hidden');
        Sliders.login.slideIn();
		Customer.hideRegisterForm();
    },
    hideLoginForm: function() {
        Sliders.login.slideOut();
    },
    
    showSets: function() {
        $('block-sets').removeClass('x-hidden');
        Sliders.sets.slideIn();
    },
    hideSets: function() {
        Sliders.sets.slideOut();
    },
    
    
    loadSets: function() {
        var req = new Ajax(baseUrl + '/set/get-sets', {
            onComplete: function(response) {
            	Status.end();
                $('sets').innerHTML = response;
                Customer.showSets()
            }
        });
        Status.start('Loading set list');
        req.request();
    },
    
    initSet: function(setId, copy) {
        var req = new Ajax(baseUrl + '/set/get-set/id/' + setId, {
            onComplete: function(response) {
            	Status.end();
                buttons = Json.evaluate(response);
                Set.init(setId, buttons, copy);
            }
        });
        Status.start('Loading set buttons');
        req.request();
    }
};
