Defi München: Nutzerstatistik
Welche Nutzer haben die meisten Defi-Nodes in München zuletzt bearbeitet?
by saerdnaer
HTML
<h2> Welche OSM-Nutzer haben die meisten Defi-Nodes in München zuletzt bearbeitet? </h2>
<table id="records_table">
<tr>
<th>Rank</th>
<th>User</th>
<th>Count</th>
<th>Nodes</th>
</tr>
</table>
CSS
table, td, th {
border: 1px solid;
border-collapse: collapse;
}
JavaScript
var query =
'[out:json][timeout:25];' +
'node[emergency=defibrillator](47.945786463687185,11.252059936523438,48.346666376503315,11.860427856445312)';
$.ajax({
url: 'http://overpass-api.de/api/interpreter?data=' + query + ';' +
'out meta;',
success: function (response) {
var users = {};
$.each(response.elements, function (i, item) {
if (!users[item.user]) {
users[item.user] = [];
}
users[item.user].push(item)
});
// convert users dict to array, to allow sorting
var usersA = $.map(users, function (value, index) {
return [value];
});
usersA.sort(function (a, b) {
return b.length - a.length;
});
var trHTML = '';
var last_count = -1;
var rank;
$.each(usersA, function (i, items) {
if (last_count != items.length) {
rank = (i + 1);
}
trHTML += '<tr>' +
'<td>' + rank + '</td>' +
'<td><a href="http://osm.org/user/' + items[0].user_id + '">' + items[0].user + '</a></td>' +
'<td>' + items.length + '</td>' +
//'<td>' + $.map(items, function (i) {return i.id;}) + '</td>'+
'<td><a href="http://overpass-turbo.eu/?w=emergency=defibrillator and user:' + items[0].user + '&R" target="_blank">overpass</a></td>'+
'</tr>';
last_count = items.length;
});
$('#records_table').append(trHTML);
}
});