﻿/*
 * jQuery Dynamic Image Loader plugin
 *
 */

jQuery.fn.loader = function(options, callback)
{
    var $container = $(this);
    settings = jQuery.extend({url: null, path: null, allowDuplicates: false, wrapperTag: null}, options);    
    return this.each(function() {
        $.ajax({
          type: "GET",
          url: settings.url,          
          data: {path: settings.path},
          contentType: "text/xml; charset=utf-8",
          dataType: "xml",
          success: function(xml) 
          {            
            $(xml).find('string').each(function() {
                var path = $(this).text();                
                //var file = getFileNameFromPath(path);
                var compare = $container.find('img[src="' + path + '"]');                   
                if ((!settings.allowDuplicates && compare.length == 0) || settings.allowDuplicates)
                {
                    var image = new Image();
                    image.src = path;                    
                    if (settings.wrapperTag != null)
                    {
                        var $wrapper = $('<' + settings.wrapperTag + '></' + settings.wrapperTag + '>');
                        $wrapper.append(image);
                        $('#' + $container.attr('id') + ' ul').append($wrapper);
                    }
                    else
                    {
                        $container.append(image);
                    }                    
                }
            })
          }      
        });    
        if (typeof callback == 'function')
        {
            callback();
        }
    });
}
    
function getFileNameFromPath(path)
{
    return path.split("/").pop();
}

