34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
angular.module('truncate',[])
|
|
.filter('characters', function() {
|
|
return function(input, chars) {
|
|
if (isNaN(chars)) return input;
|
|
if (chars <= 0) return '';
|
|
if(input && input.length >= chars)
|
|
{
|
|
input = input.substring(0, chars);
|
|
|
|
var lastspace = input.lastIndexOf(' ');
|
|
//get last space
|
|
if (lastspace !== -1) {
|
|
input = input.substr(0, lastspace);
|
|
}
|
|
return input + '...';
|
|
}
|
|
return input;
|
|
};
|
|
})
|
|
.filter('words', function() {
|
|
return function(input, words) {
|
|
if (isNaN(words)) return input;
|
|
if (words<=0) return '';
|
|
if(input)
|
|
{
|
|
var inputWords = input.split(/\s+/);
|
|
if (inputWords.length > words) {
|
|
input = inputWords.slice(0, words).join(' ') + '...';
|
|
}
|
|
}
|
|
return input;
|
|
};
|
|
});
|