Skip to content

Instantly share code, notes, and snippets.

@thalesfsp
Forked from evandertino/AngularJs Cut Filter.js
Last active August 29, 2015 14:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thalesfsp/b09fcb122690833ce65c to your computer and use it in GitHub Desktop.
Save thalesfsp/b09fcb122690833ce65c to your computer and use it in GitHub Desktop.
AngularJs Cut Filter
/**
* Usage:
* {{some_text | cut:true:100:' ...'}}
* Options:
* - wordwise (boolean) - if true, cut only by words bounds,
* - max (integer) - max length of the text, cut to this number of chars,
* - tail (string, default: ' …') - add this string to the input
* string if the string was cut.
*/
angular.module('ng').filter('cut', function () {
return function (value, wordwise, max, tail) {
if (!value) return '';
max = parseInt(max, 10);
if (!max) return value;
if (value.length <= max) return value;
value = value.substr(0, max);
if (wordwise) {
var lastspace = value.lastIndexOf(' ');
if (lastspace != -1) {
value = value.substr(0, lastspace);
}
}
return value + (tail || ' …');
};
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment