
window.onload = function() {
    
    var trg  = $("main");
    var list = getElementsByClass("thumb", $('imageList'), "img");
    trg.src = list[0].src.replace("_mini", "");
    
    for (var i=0; i<list.length; i++) {
        var a = list[i];
        addEvent(a, "click", function(evt) {
            trg.src = this.src.replace("_mini", "");
        });
    }
}

/******************************************************************************/

    /**
     * Ritorna l'elemento/i con gli/l'id specificato
     * 
     * @param element srray|string Id o gruppo di id da cui recuperare il DOM
     * @see Prototype          
    */         
    function $(element) {
        if (arguments.length > 1) {
            for (var i = 0, elements = [], length = arguments.length; i < length; i++)
                elements.push($(arguments[i]));
            return elements;
        }
        if (typeof element == 'string')
        element = document.getElementById(element);
        return element;
    }
    
    /**
     * Ritorna gli elementi con la determinata classe
     * 
     * @param searchClass String Classe da ricercare        
     * @param node HTMLElement Nodo DOM da cui cercare
     * @param tag String Filtro sui tag
     * 
     * @return Array
     * @see http://www.dustindiaz.com/getelementsbyclass/                   
    */              
    function getElementsByClass(searchClass,node,tag) {
    	var classElements = new Array();

        if ( node == null )	node = document;
    	if ( tag  == null ) tag = '*';
    	
        var els     = node.getElementsByTagName(tag);
    	var elsLen  = els.length;
    	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
    	
    	for (i = 0, j = 0; i < elsLen; i++) {
    		if ( pattern.test(els[i].className) ) {
    			classElements[j] = els[i];
    			j++;
    		}
    	}
    	return classElements;
    }

    /**
     * Aggiunge un evento cross browser
    */                   
    function addEvent( obj, type, fn ) {
        if ( obj.addEventListener ) {
            obj.addEventListener( type, fn, false );
        } else {
            obj['e'+type+fn] = fn;
            obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
            obj.attachEvent( 'on'+type, obj[type+fn] );
        }
    }

    /**
     * Rimuove un evento cross browser
    */  
    function removeEvent( obj, type, fn ) {
        if ( obj.detachEvent ) {
            obj.removeEventListener( type, fn, false );
        } else {
            obj.detachEvent( 'on'+type, obj[type+fn] );
            obj[type+fn] = null;
        }
    }
