window.addEvent('domready', function() {
    var wrapper = $$('.wrapper')[0]
    var scroller = new Fx.Scroll(wrapper).toTop();
    $$('.tab-content').setStyle('display', 'block').fade('hide');
    $('main').fade('in');
    $$('.arrow').fade('hide');
    $$(".tab").addEvent('click', function(ev) {
        ev.stop();
        var self = this;
        var finalItem = null;
        $$('.tab-content').each(function(item) {
            if(item.id == self.getAttribute('for')) {
                item.setStyle('display', 'block');
                item.fade('in');
            } else {
                item.setStyle('display', 'none');
                item.fade('hide');
            }
        });
        var size = wrapper.getSize();
        var scrollSize = wrapper.getScrollSize();
        if(size.y >= scrollSize.y) {
             $$('.arrow').fade('out');
        } else {
             $$('.arrow').fade('in');
        }
        scroller.toTop();
    });
    $$('.arrow.up').addEvent('click', function(ev) {
        ev.stop();
        scroller.start(0, wrapper.getScroll().y-80);
    });
    $$('.arrow.down').addEvent('click', function(ev) {
        ev.stop();
        scroller.start(0, wrapper.getScroll().y+80);
    });
    $('order-form').get('send').addEvent('request', function() {
        $('send').setStyle('display', 'none');
        $('sending').set('text', 'Sending ...');
    }).addEvent('success', function() {
        $('send').setStyle('display', 'inline');
        $('sending').set('text', 'Your order was sent successfully!');
        $$('.input-field').each(function(el) { el.value = ''; });
    }).addEvent('failure', function() {
        $('send').setStyle('display', 'inline');
        $('sending').set('text', 'There was an error processing your order. Please try again after sometime.');
    });
    $('send').addEvent('click', function(ev) {
        ev.stop();
        var emailRegex = /^[a-z0-9._%-]+@[a-z0-9.-]+\.[a-z]{2,4}$/i;
        var flag = false;
        if( !$('order-name').value.trim() ) {
            $('order-name-error').set('text', 'You must enter your name');
            $('order-name').addClass('error');
            flag = true;
        } else {
            $('order-name-error').set('text', '');
            $('order-name').removeClass('error');

        }
        if( !$('order-email').value.trim() ) {
            $('order-email-error').set('text', 'You must enter your email address');
            flag = true;
            $('order-email').addClass('error');
        }
        else if( !$('order-email').value.trim().test(emailRegex) ) {
            $('order-email-error').set('text', 'You must enter a valid email address');
            flag = true;
            $('order-email').addClass('error');
        } else {
            $('order-email-error').set('text', '');
            $('order-email').removeClass('error');
        }

        if(!flag) $('order-form').send();
    });
});
