Improve auto-complete dropdown elements sorting
This commit is contained in:
@@ -4,6 +4,7 @@ Version 1.0.37 (unreleased)
|
|||||||
Improvements:
|
Improvements:
|
||||||
|
|
||||||
* Improve keyboard shortcuts handling
|
* Improve keyboard shortcuts handling
|
||||||
|
* Improve auto-complete dropdown elements sorting
|
||||||
* Larger task form
|
* Larger task form
|
||||||
* Rewrite dialog and confirmation boxes (inline popup)
|
* Rewrite dialog and confirmation boxes (inline popup)
|
||||||
* Remove TaskGanttCreationController
|
* Remove TaskGanttCreationController
|
||||||
|
|||||||
6
assets/js/app.min.js
vendored
6
assets/js/app.min.js
vendored
File diff suppressed because one or more lines are too long
@@ -127,18 +127,29 @@ KB.component('select-dropdown-autocomplete', function(containerElement, options)
|
|||||||
|
|
||||||
function buildItems(items) {
|
function buildItems(items) {
|
||||||
var elements = [];
|
var elements = [];
|
||||||
var keys = Object.keys(items);
|
|
||||||
|
|
||||||
if (options.sortByKeys) {
|
for (var key in items) {
|
||||||
keys.sort();
|
if (items.hasOwnProperty(key)) {
|
||||||
|
elements.push({
|
||||||
|
'class': 'select-dropdown-menu-item',
|
||||||
|
'text': items[key],
|
||||||
|
'data-label': items[key],
|
||||||
|
'data-value': key
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var i = 0; i < keys.length; i++) {
|
if (options.sortByKeys) {
|
||||||
elements.push({
|
elements.sort(function (a, b) {
|
||||||
'class': 'select-dropdown-menu-item',
|
var value1 = a['data-value'].toLowerCase();
|
||||||
'text': items[keys[i]],
|
var value2 = b['data-value'].toLowerCase();
|
||||||
'data-label': items[keys[i]],
|
return value1 < value2 ? -1 : (value1 > value2 ? 1 : 0);
|
||||||
'data-value': keys[i]
|
});
|
||||||
|
} else {
|
||||||
|
elements.sort(function (a, b) {
|
||||||
|
var value1 = a['data-label'].toLowerCase();
|
||||||
|
var value2 = b['data-label'].toLowerCase();
|
||||||
|
return value1 < value2 ? -1 : (value1 > value2 ? 1 : 0);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user