
function __contentLoader()
{
    var _this= this;
    
    this.gallery_webservice= '/webserv/getGalleryContents.php';
    this.description_webservice= '/webserv/getDescriptionContents.php';


    this.gallery_id= 0;
    
    
    this.addImage= function( image_layer, image_data )
    {
        var tmp_layer= document.createElement( 'div' );

        // HACK 
        var is_interhome= false;
        if( document.getElementById( 'isInterhome' ) )
        {
            is_interhome= parseInt( document.getElementById( 'isInterhome' ).value );
        }
        
        
        
        
        
        
        
        
        tmp_layer.className= "galleryImageBox";
    

        var tmp_link= document.createElement( 'a' );
        tmp_link.rel= "lytebox[gallery"+this.gallery_id+"]";
        tmp_link.title= image_data.title;        


        if( is_interhome )
            tmp_link.href= urlGenerator.bigInterhomeImage( image_data.file_name );
        else
            tmp_link.href= urlGenerator.bigGalleryImage( image_data.file_name );
        
        
        
        //console.log( tmp_link );

        
        tmp_layer.appendChild( tmp_link );

        var tmp_br= document.createElement( 'br' );
        tmp_layer.appendChild( tmp_br );
        

        var tmp_image= document.createElement( 'img' );

        if( is_interhome )
            tmp_image.src= urlGenerator.smallInterhomeImage( image_data.file_name );
        else
            tmp_image.src= urlGenerator.smallGalleryImage( image_data.file_name );
        
        tmp_link.appendChild( tmp_image );
        

        var tmp_title= document.createElement( 'span' );

        tmp_title.innerHTML= image_data.title;
        
        tmp_layer.appendChild( tmp_title );

        image_layer.appendChild( tmp_layer );

        
    }


    
    this.loadGallery= function( element )
    {
        this.gallery_id++;
        
        advAJAX.get({
            url: _this.gallery_webservice,
            parameters : {
                "id" : element.id
                },
            onSuccess: function( response ){ _this.displayFetchedGallery( response ) }
            });
            
        element.className= "galleryContainer";
    }



    this.displayFetchedGallery= function( response )
    {
        var res= JSON.parse( response.responseText );
        var parent_layer= document.getElementById( res.id );
        
        for( var itr= 0; itr < res.images.length; itr++ )
            this.addImage( parent_layer, res.images[ itr ] );
        
        myLytebox.updateLyteboxItems();
    }








    this.loadDescription= function( element )
    {
        advAJAX.get({
            url: _this.description_webservice,
            parameters : {
                "id" : element.id
                },
            onSuccess: function( response ){ _this.displayFetchedDescription( response ); }
            });

        element.className= "descriptionContainer";
    }



    this.displayFetchedDescription= function( response )
    {
        var res= JSON.parse( response.responseText );

        var parent_layer= document.getElementById( res.id );
        parent_layer.innerHTML= res.content;
        
    }









}











var contentLoader= new __contentLoader();
