J.app = {
    
    init : function () {
        J.app.setup_input_labels();
        J.app.display_messages();
        J.prime.init();
        J.wishlist.init();
    },
    
    // Make sure we clear input for all forms
    setup_input_labels : function (scope) {
        if(!scope){scope=document;}
        $('form input[type=text], form textarea, form input[type=password]', scope).each(function(){
            if($(this).val() != '') {
                $(this).css('background-position', '-100px -100px');
            }
            $(this).bind('focus', function () {
                $(this).css('background-position', '-100px -100px');
            }).bind('blur', function() {
                if($(this).val() == '') {
                    $(this).css('background-position', '0px 0px');
                }
            });            
        });        
    },

    // display messages
    display_messages : function () {
        if($('#messages li').length){
            $('#messages').slideDown(300);
            setTimeout(J.app.clear_messages, 7000);
        }
    },
    
    clear_messages : function () {
        $('#messages').slideUp(900, function(){
            $('#messages ul').empty();
        });
    },
    
    create_message : function (msg) {
        if(!msg) {return false; }
        $('#messages ul').append('<li>'+msg+'</li>');
        J.app.display_messages();
    },
    
    display_form_errors : function (form_errors) {
        $('.errorlist').remove();
        for (key in form_errors) {
            var error_str = '<ul class="errorlist">';
            for (var i=0; i < form_errors[key].length; i++) {
                error_str += '<li>'+form_errors[key][i]+'</li>';
            }
            $('#id_'+key).parent('li').prepend(error_str + '</ul>');
        };
    }
};

$(document).ready(function(){
    J.app.init();
});

if(window['console'] === undefined){ window.console = { log : function(str){ } }; };
