tag selection improvements

This commit is contained in:
Antelle 2016-01-14 21:49:33 +03:00
parent 1731cc7585
commit b5879a3793
2 changed files with 17 additions and 3 deletions

View File

@ -23,7 +23,18 @@ var FieldViewTags = FieldViewText.extend({
endEdit: function(newVal, extra) {
if (this.selectedTag) {
newVal += (newVal ? ', ' : '') + this.selectedTag;
if (newVal) {
var tags = this.valueToTags(newVal);
var last = tags[tags.length - 1];
var isLastPart = last && this.model.tags.indexOf(last) < 0;
if (isLastPart) {
newVal = newVal.substr(0, newVal.lastIndexOf(last)) + this.selectedTag;
} else {
newVal += ', ' + this.selectedTag;
}
} else {
newVal = this.selectedTag;
}
this.input.val(newVal);
this.input.focus();
this.setTags();
@ -61,8 +72,10 @@ var FieldViewTags = FieldViewText.extend({
getAvailableTags: function() {
var tags = this.valueToTags(this.input.val());
var last = tags[tags.length - 1];
var isLastPart = last && this.model.tags.indexOf(last) < 0;
return this.model.tags.filter(function(tag) {
return tags.indexOf(tag) < 0;
return tags.indexOf(tag) < 0 && (!isLastPart || tag.toLowerCase().indexOf(last.toLowerCase()) >= 0);
});
},

View File

@ -7,9 +7,10 @@ Improvements
`+` more reliable binaries management
`+` string resources globalization
`+` help/tips
`+` #67: field editing improvements
`*` #68: url display without http
`+` #50: notification on password copy
`-` #74: select all in search field
`*` #68: url display without http
##### v0.5.1 (2015-12-15)
Layout bugfixes