(function($el){
	$el.fn.ellipses = function(options) {
	
		var defaults = {
			size: 30,
			dots: "..."
		};
		
		var options = $el.extend(defaults, options);
		return this.each(function () 
		{
			if ($el(this).html().length > options.size) {
				var oldText = $el(this).html();
				var newText = $el(this).html().substring(0,options.size);
				$el(this).html(newText + options.dots);
				if ( (newText.charAt(newText.length-1) == ' ') || (oldText.charAt(newText.length) == ' ') ) {
				
				} else {
					$el(this).html(newText.substring(0, newText.lastIndexOf(" ")) + options.dots);
				}	
			}
		});
	};
	
})(jQuery);


