From e122552b98ddd76930d86deb4c8fa5c359591456 Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Sat, 29 Dec 2012 11:57:05 -0800 Subject: [PATCH] Fix bugs in user list * URL is connection-dependent * Open link in new window so as not to lose work * Don't show undefined (fixes #302) --- js/id/connection.js | 4 ++++ js/id/id.js | 11 ++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/js/id/connection.js b/js/id/connection.js index dd156f9d4..795c2633d 100644 --- a/js/id/connection.js +++ b/js/id/connection.js @@ -138,6 +138,10 @@ iD.Connection = function() { }); } + connection.userUrl = function(username) { + return apiURL + "/user/" + username; + }; + function tileAtZoom(t, distance) { var power = Math.pow(2, distance); return [ diff --git a/js/id/id.js b/js/id/id.js index 70f2b67c4..e4134fb5b 100644 --- a/js/id/id.js +++ b/js/id/id.js @@ -49,17 +49,18 @@ window.iD = function(container) { var users = {}, entities = map.history().graph().intersects(map.extent()); for (var i in entities) { - users[entities[i].user] = true; - if (Object.keys(users).length > 10) break; + if (entities[i].user) { + users[entities[i].user] = true; + if (Object.keys(users).length > 10) break; + } } var u = Object.keys(users); var l = d3.select('#user-list') .selectAll('a.user-link').data(u); l.enter().append('a') .attr('class', 'user-link') - .attr('href', function(d) { - return 'http://api06.dev.openstreetmap.org/user/' + d; - }) + .attr('href', function(d) { return connection.userUrl(d); }) + .attr('target', '_blank') .text(String); l.exit().remove(); }, 1000);