Show relation documentation for relation presets

See http://taginfo.openstreetmap.org/taginfo/apidoc#api_4_relation_wiki_pages

Fixes #1862.
This commit is contained in:
Minh Nguyễn
2013-09-29 21:17:21 -07:00
committed by John Firebaugh
parent 30bf1cd87c
commit 77c7091cf2
4 changed files with 16 additions and 5 deletions
+8 -2
View File
@@ -46,8 +46,14 @@ iD.presets.Preset = function(id, preset, fields) {
return Object.keys(preset.tags).length === 0;
};
preset.reference = function() {
var reference = {key: Object.keys(preset.tags)[0]};
preset.reference = function(geometry) {
var key = Object.keys(preset.tags)[0];
if (geometry === 'relation' && key === 'type') {
return {rtype: preset.tags[key]};
}
var reference = {key: key};
if (preset.tags[reference.key] !== '*') {
reference.value = preset.tags[reference.key];
+6 -1
View File
@@ -117,7 +117,12 @@ iD.taginfo = function() {
taginfo.docs = function(parameters, callback) {
var debounce = parameters.debounce;
parameters = clean(setSort(parameters));
request(endpoint + (parameters.value ? 'tag/wiki_pages?' : 'key/wiki_pages?') +
var path = 'key/wiki_pages?';
if (parameters.value) path = 'tag/wiki_pages?';
else if (parameters.rtype) path = 'relation/wiki_pages?';
request(endpoint + path +
iD.util.qsString(parameters), debounce, callback);
};
+1 -1
View File
@@ -169,7 +169,7 @@ iD.ui.EntityEditor = function(context) {
if (!arguments.length) return preset;
if (_ !== preset) {
preset = _;
reference = iD.ui.TagReference(preset.reference())
reference = iD.ui.TagReference(preset.reference(context.geometry(id)))
.showing(false);
}
return entityEditor;
+1 -1
View File
@@ -213,7 +213,7 @@ iD.ui.PresetList = function(context) {
};
item.preset = preset;
item.reference = iD.ui.TagReference(preset.reference());
item.reference = iD.ui.TagReference(preset.reference(context.geometry(id)));
return item;
}