function mycarousel_itemLoadCallback(carousel, state)
{
    // Check if the requested items already exist
    if (carousel.has(carousel.first, carousel.last)) {
        return;
    }

    jQuery.get(
        'js/jcarousel/examples/dynamic_ajax_php.php',
        {
            first: carousel.first,
            last: carousel.last
        },
        function(xml) {
            mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, xml);
            $('.carousel').click(function(){
            var enlargerd_img = get_enlarged_thumb(this.id);
            $('#enlargedimg').height(310);
             $('#enlargedimg').css("margin-left","170px");
              $('#enlargedimg').css("margin-bottom","20px");
            $('#enlargedimg').width(400);
             $('#enlargedimg').html('<img src="'+enlargerd_img+'"><br/><a class="main" id="close" class="hide" href="">close</a>');
             $('#enlargedimg').show(500);
             setTimeout(function(){$("#close").show();}, 600);
             $('#close').click(function(){
                 $('#enlargedimg').hide();
                 return false;
             });

    });
        },
        'xml'
    );
};


function get_enlarged_thumb(img){
       
        return img.replace("mini_", "");
}

function mycarousel_itemAddCallback(carousel, first, last, xml)
{
    // Set the size of the carousel
    carousel.size(parseInt(jQuery('total', xml).text()));

    jQuery('image', xml).each(function(i) {
        carousel.add(first + i, mycarousel_getItemHTML(jQuery(this).text()));
    });
};

/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(url)
{
    return '<img class="carousel" src="' + url + '" width="75" height="75" alt="" id="'+url+'" />';
};

jQuery(document).ready(function() {
    jQuery('#mycarousel').jcarousel({
        // Uncomment the following option if you want items
        // which are outside the visible range to be removed
        // from the DOM.
        // Useful for carousels with MANY items.

        // itemVisibleOutCallback: {onAfterAnimation: function(carousel, item, i, state, evt) { carousel.remove(i); }},
        itemLoadCallback: mycarousel_itemLoadCallback
    });


});
