var Rollover = {
    // Refactoring dell'oggetto spostare pattern come proprietà
    init : function() {
        var buttons = $("sidebar-2").select('[class="box_img"]');
        for (i = 0; i < buttons.length; i++) {
            Event.observe(buttons[i], "mouseover", Rollover.mouseOverListener);
            Event.observe(buttons[i], "mouseout", Rollover.mouseOutListener);
        }
    },
    // spostare corpo in un metodo unificato
    mouseOver : function(e) {
        var src = Event.element(e).src;
        var pattern = /(.*)-(?=green)/;
        var reg = new RegExp(pattern);
        var base_src = reg.exec(src)[0];
        Event.element(e).src = base_src + "blue.png";
    },
    mouseOut : function(e) {
        var src = Event.element(e).src;
        var pattern = /(.*)-(?=blue)/;
        var reg = new RegExp(pattern);
        var base_src = reg.exec(src)[0];
        Event.element(e).src = base_src + "green.png";
    },
    mouseOverListener : function(e) {
        Rollover.mouseOver(e);
    // Testare se eliminando e dall'argomento funziona ugualmente
    },
    mouseOutListener : function(e) {
        Rollover.mouseOut(e);
    }
};

Event.observe(window, "load", Rollover.init, false);