String.implement({
	ellipsize:function(len,ellip){
		var str = this;
		if(!str){return null;}
		if(arguments.length == 0){return str;}
		if(arguments.length > 0){	var len = arguments[0];		}
		if(arguments.length > 1){	var ellip = arguments[1];		}
		
		// default values
		if(!len){	return str;	}
		if(!ellip){	ellip = '\u2026';	}
		
		// no need to shorten
		if(str.length <= len){	return str;	}
		
		return str.substring(0,(len - ellip.length)) + ellip;
	}
});
