
(function($) {
	$.fn.fancyFlickset = function(options) {
		var opts    = $.extend($.fn.fancyFlickset.defaults, options);
		var jsonUrl = 'http://api.flickr.com/services/rest/?&method=flickr.photosets.getPhotos&api_key={apiKey}&photoset_id={photosetId}&extras=url_z&format=json&jsoncallback=?'.replace(/\{\w+\}/g, function(match) {
			return opts[match.replace(/\{|\}/g, '')];
		});

		// Create a fancyFlickset for each selector
		return this.each(function() {
			var obj = $(this);
			$.getJSON(jsonUrl, function(data) {
				var set = [];
				$.each(data.photoset.photo, function(index, photo) {
					set.push({'href'	: photo.url_z, 'title'	: photo.title});
				});
				$(obj).click(function() {
					$.fancybox(set, opts.fancybox);
					return false;
				})
			});
		});
	};
	
	//options
	$.fn.fancyFlickset.defaults = {
		apiKey     : '58f5a410a16a55b39f00a83f5fd5f2f4',
		photosetId : '',
		fancybox   : {
			'padding'			: 10,
			'transitionIn'		: 'elastic',
			'transitionOut'		: 'none',
			'type'            : 'image',
			'titlePosition' 	: 'over',
			'titleFormat'		: function(title, currentArray, currentIndex, currentOpts) {
				return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' &nbsp; ' + title : '') + '</span>';
			},
			'changeFade'        : 'fast'
		}
 	};
})(jQuery);
