mirror of
https://github.com/FoggedLens/iD.git
synced 2026-05-20 23:44:47 +02:00
Remove original taginfo debouce
and shorten key/value queries to 3 chars to prevent unnecessary requests. Assumption is that 3 chars is specific enough
This commit is contained in:
@@ -35,6 +35,15 @@ iD.taginfo = function() {
|
||||
return _.omit(parameters, 'geometry');
|
||||
}
|
||||
|
||||
function shorten(parameters) {
|
||||
if (!parameters.query) {
|
||||
delete parameters.query;
|
||||
} else {
|
||||
parameters.query = parameters.query.slice(0, 3);
|
||||
}
|
||||
return parameters;
|
||||
}
|
||||
|
||||
function popularKeys(parameters) {
|
||||
var pop_field = 'count_all';
|
||||
if (parameters.filter) pop_field = 'count_' + parameters.filter;
|
||||
@@ -68,10 +77,10 @@ iD.taginfo = function() {
|
||||
}
|
||||
|
||||
taginfo.keys = function(parameters, callback) {
|
||||
parameters = clean(setSort(setFilter(parameters)));
|
||||
parameters = clean(shorten(setSort(setFilter(parameters))));
|
||||
request(endpoint + 'keys/all?' +
|
||||
iD.util.qsString(_.extend({
|
||||
rp: 6,
|
||||
rp: 10,
|
||||
sortname: 'count_all',
|
||||
sortorder: 'desc',
|
||||
page: 1
|
||||
@@ -82,7 +91,7 @@ iD.taginfo = function() {
|
||||
};
|
||||
|
||||
taginfo.values = function(parameters, callback) {
|
||||
parameters = clean(setSort(setFilter(parameters)));
|
||||
parameters = clean(shorten(setSort(setFilter(parameters))));
|
||||
request(endpoint + 'key/values?' +
|
||||
iD.util.qsString(_.extend({
|
||||
rp: 20,
|
||||
|
||||
+4
-4
@@ -212,18 +212,18 @@ iD.ui.Taglist = function() {
|
||||
|
||||
var keyinput = key.select('input');
|
||||
key.call(d3.combobox()
|
||||
.fetcher(_.debounce(function(_, __, callback) {
|
||||
.fetcher(function(_, __, callback) {
|
||||
taginfo.keys({
|
||||
geometry: geometry,
|
||||
query: keyinput.property('value')
|
||||
}, function(err, data) {
|
||||
if (!err) callback(sort(keyinput.property('value'), data));
|
||||
});
|
||||
}, 500)));
|
||||
}));
|
||||
|
||||
var valueinput = value.select('input');
|
||||
value.call(d3.combobox()
|
||||
.fetcher(_.debounce(function(_, __, callback) {
|
||||
.fetcher(function(_, __, callback) {
|
||||
taginfo.values({
|
||||
key: keyinput.property('value'),
|
||||
geometry: geometry,
|
||||
@@ -231,7 +231,7 @@ iD.ui.Taglist = function() {
|
||||
}, function(err, data) {
|
||||
if (!err) callback(sort(valueinput.property('value'), data));
|
||||
});
|
||||
}, 500)));
|
||||
}));
|
||||
}
|
||||
|
||||
function focusNewKey() {
|
||||
|
||||
Reference in New Issue
Block a user