var Flickr = function(settings){
	if(!this instanceof arguments.callee){
		return new Flickr(settings);
	}
	var self = this;
	var api = {
		url: "http://api.flickr.com/services/rest/",
		api_key: "cd39c2b7438cd736a4095673bd6b04bd",
		format: "json",
		extras: "original_format"
	};
	$.extend(api,settings);
	this.latest = {};
	var method = function(name){
		return function(opts, callbk){
			(function(method, opts, callbk){
				$.getJSON(api.url+"?jsoncallback=?",$.extend(
					opts,
					{
						method: method,
						format: api.format,
						api_key: api.api_key
					}
				), function(data){
					this.latest = data;
					if(callbk){callbk(data);}
				});
			}).apply(self,[name,opts,callbk]);
		};
	};
	this.photosets = {
		getPhotos: method("flickr.photosets.getPhotos")
	};
	this.photos = {
		getInfo: method("flickr.photos.getInfo")
	};
	this.groups = {
		pools: {
			getPhotos: method("flickr.groups.pools.getPhotos")
		}
	};
};

$(function(){
   $("#photostream").append("<ul>");
   var flickr = new Flickr();
   flickr.photosets.getPhotos({photoset_id: "72157624201159353", extras: "url_s", per_page: "5"}, function(data){
      var owner = data.photoset.owner
      $.each(data.photoset.photo, function(n, i){
         var attr = i.height_s > i.width_s ? "width" : "height";
         var img = $("<img>").attr({src: i.url_s}).attr(attr,94);
         var anchor = $("<a>").attr({href: "http://www.flickr.com/photos/"+owner+"/"+i.id, target: "_blank"}).append(img);
         $("#photostream").append($("<li>").append(anchor));
      });
      $("#photostream li:last").css("margin-right",0)
   });
});
