/**
 * @author Administrator
 */
$(document).ready(function(){
	$.fn.itemThumbnail = function(options) {
		// Variables
		var img = new Image();
		var $elem = $(this);
		
		// Get width and height
		var width = $elem.innerWidth() - parseInt($elem.css('padding-left')) - parseInt($elem.css('padding-right'));
		var height = $elem.innerHeight() - parseInt($elem.css('padding-top')) - parseInt($elem.css('padding-bottom'));
		
		var defaults = {
			'loading': false,
			'width': width,
			'height': height,
			'click': function() {},
			'source': 'src'
		}
		
		var settings = {};
		settings = $.extend(settings, defaults, options);
		
		// Get source
		var src = $elem.attr(settings.source);
		
		$elem.empty();
		
		if (src) {
			if (settings.loading) {
				$elem.append('<img src="' + settings.loading + '" />');
			}
			
			$(img).attr('src', src).load(function(){
				var img_width = this.width;
				var img_height = this.height;
				var new_width = settings.width;
				var new_height = settings.height;
				
				if (img_height / img_width > new_height / new_width) {
					new_width = Math.floor((new_height * img_width) / img_height);
				}
				else {
					new_height = Math.floor((new_width * img_height) / img_width);
				}
				
				this.width = new_width;
				this.height = new_height;
				
				$elem.empty();
				$(this).prependTo($elem);
			}).bind('click', settings.click);
		}
		
		return this;
	}
});