summaryrefslogtreecommitdiff
path: root/web/views
diff options
context:
space:
mode:
authorJochen Topf <jochen@topf.org>2010-11-13 21:31:39 +0100
committerJochen Topf <jochen@topf.org>2010-11-13 21:31:39 +0100
commit9db63dc2526bf0b2a94e7a6f37a0f7dabdb8f12d (patch)
tree0d2ae6de413c39c21d30aaf296a98ee37977ab45 /web/views
parentc82bbe69572398d44187ca7b57b1ce572f435d65 (diff)
downloadtaginfo-9db63dc2526bf0b2a94e7a6f37a0f7dabdb8f12d.tar
taginfo-9db63dc2526bf0b2a94e7a6f37a0f7dabdb8f12d.tar.gz
Multiple changes
* Improved and cleaned up source import scripts * Improved some reports and report overview * New osmium version that uses a better hash function * Some experimental magic to include Javascipt in an easier way (tested in keys.erb)
Diffstat (limited to 'web/views')
-rw-r--r--web/views/keys.erb99
-rw-r--r--web/views/layout.erb8
-rw-r--r--web/views/reports/characters_in_keys.erb8
-rw-r--r--web/views/reports/index.erb32
-rw-r--r--web/views/sources/index.erb9
5 files changed, 72 insertions, 84 deletions
diff --git a/web/views/keys.erb b/web/views/keys.erb
index ced0a96..e398fa0 100644
--- a/web/views/keys.erb
+++ b/web/views/keys.erb
@@ -3,63 +3,48 @@
<table id="keys">
</table>
-<script type="text/javascript">
- jQuery(document).ready(function() {
- jQuery('#keys').flexigrid({
- url: '/api/2/db/keys',
- method: 'GET',
- dataType: 'json',
- colModel: [
- { display: 'Key', name: 'key', width: 180, sortable: true, align: 'left' },
- { display: '<span title="Number of objects with this key"><img src="/img/types/all.16.png" alt=""/> Total</span>', name: 'count_all', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of nodes with this key"><img src="/img/types/node.16.png" alt=""/> Nodes</span>', name: 'count_nodes', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of ways with this key"><img src="/img/types/way.16.png" alt=""/> Ways</span>', name: 'count_ways', width: 250, sortable: true, align: 'center' },
- { display: '<span title="Number of relations with this key"><img src="/img/types/relation.16.png" alt=""/> Relation</span>', name: 'count_relations', width: 250, sortable: true, align: 'center' },
- { display: 'Users', name: 'users_all', width: 44, sortable: true, align: 'right' },
- { display: '<img src="/img/sources/wiki.16.png" alt="Wiki" title="Wiki"/>', name: 'in_wiki', width: 20, sortable: true, align: 'center' },
- { display: '<img src="/img/sources/josm.16.png" alt="JOSM" title="JOSM"/>', name: 'in_josm', width: 20, sortable: true, align: 'center' },
- // { display: '<img src="/img/sources/potlatch.16.png" alt="Potlatch 2" title="Potlatch 2"/>', name: 'in_potlatch', width: 20, sortable: true, align: 'center' },
- // { display: '<img src="/img/sources/merkaartor.16.png" alt="Merkaartor" title="Merkaartor"/>', name: 'in_merkaartor', width: 20, sortable: true, align: 'center' },
- { display: '<span title="Number of different values for this key">Values</span>', name: 'values_all', width: 70, sortable: true, align: 'right' },
- { display: 'Prevalent Values', name: 'prevalent_values', width: 500, sortable: true, align: 'left' }
+<% javascript do
+ JQuery.ready do
+ JQuery.flexigrid(:keys,
+ :url => '/api/2/db/keys',
+ :colModel => [
+ { :display => 'Key', :name => 'key', :width => 180, :sortable => true, :align => 'left' },
+ { :display => '<span title="Number of objects with this key"><img src="/img/types/all.16.png" alt=""/> Total</span>', :name => 'count_all', :width => 250, :sortable => true, :align => 'center' },
+ { :display => '<span title="Number of nodes with this key"><img src="/img/types/node.16.png" alt=""/> Nodes</span>', :name => 'count_nodes', :width => 250, :sortable => true, :align => 'center' },
+ { :display => '<span title="Number of ways with this key"><img src="/img/types/way.16.png" alt=""/> Ways</span>', :name => 'count_ways', :width => 250, :sortable => true, :align => 'center' },
+ { :display => '<span title="Number of relations with this key"><img src="/img/types/relation.16.png" alt=""/> Relation</span>', :name => 'count_relations', :width => 250, :sortable => true, :align => 'center' },
+ { :display => 'Users', :name => 'users_all', :width => 44, :sortable => true, :align => 'right' },
+ { :display => '<img src="/img/sources/wiki.16.png" alt="Wiki" title="Wiki"/>', :name => 'in_wiki', :width => 20, :sortable => true, :align => 'center' },
+ { :display => '<img src="/img/sources/josm.16.png" alt="JOSM" title="JOSM"/>', :name => 'in_josm', :width => 20, :sortable => true, :align => 'center' },
+ { :display => '<span title="Number of different values for this key">Values</span>', :name => 'values_all', :width => 70, :sortable => true, :align => 'right' },
+ { :display => 'Prevalent Values', :name => 'prevalent_values', :width => 500, :sortable => true, :align => 'left' }
],
- searchitems: [
- { display: 'Key', name: 'key' }
+ :searchitems => [
+ { :display => 'Key', :name => 'key' }
],
- sortname: 'count_all',
- sortorder: 'desc',
- pagetext: '<%= t.flexigrid.pagetext %>',
- pagestat: '<%= t.flexigrid.pagestat %>',
- outof: '<%= t.flexigrid.outof %>',
- findtext: '<%= t.flexigrid.findtext %>',
- procmsg: '<%= t.flexigrid.procmsg %>',
- nomsg: '<%= t.flexigrid.nomsg %>',
- errormsg: '<%= t.flexigrid.errormsg %>',
- showToggleBtn: false,
- usepager: true,
- useRp: true,
- rp: 15,
- rpOptions: [10,15,20,25,50,100],
- height: 420,
- preProcess: function(data) {
- data.rows = jQuery.map(data.data, function(row, i) {
- return { 'cell': [
- link_to_key(row.key),
- print_value_with_percent(row.count_all, row.count_all_fraction),
- print_value_with_percent(row.count_nodes, row.count_nodes_fraction),
- print_value_with_percent(row.count_ways, row.count_ways_fraction),
- print_value_with_percent(row.count_relations, row.count_relations_fraction),
- print_with_ts(row.users_all),
- row.in_wiki ? '&#x2714;' : '-',
- row.in_josm ? '&#x2714;' : '-',
- // row.in_potlatch ? '&#x2714;' : '-',
- // row.in_merkaartor ? '&#x2714;' : '-',
- print_with_ts(row.values_all),
- print_tag_list(row.key, row.prevalent_values)
- ] };
- });
- return data;
- }
- });
+ :sortname => 'count_all',
+ :sortorder => 'desc',
+ :height => 420,
+ :preProcess => JS.raw(%q{
+function(data) {
+ data.rows = jQuery.map(data.data, function(row, i) {
+ return { 'cell': [
+ link_to_key(row.key),
+ print_value_with_percent(row.count_all, row.count_all_fraction),
+ print_value_with_percent(row.count_nodes, row.count_nodes_fraction),
+ print_value_with_percent(row.count_ways, row.count_ways_fraction),
+ print_value_with_percent(row.count_relations, row.count_relations_fraction),
+ print_with_ts(row.users_all),
+ row.in_wiki ? '&#x2714;' : '-',
+ row.in_josm ? '&#x2714;' : '-',
+ print_with_ts(row.values_all),
+ print_tag_list(row.key, row.prevalent_values)
+ ] };
});
-</script>
+ return data;
+}
+ })
+ )
+ end
+end
+%>
diff --git a/web/views/layout.erb b/web/views/layout.erb
index e2fc109..ebbe352 100644
--- a/web/views/layout.erb
+++ b/web/views/layout.erb
@@ -5,13 +5,9 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="content-language" content="<%= r18n.locale.code %>" />
<link rel="stylesheet" type="text/css" href="/css/taginfo.css" />
- <link rel="Stylesheet" type="text/css" href="/css/smoothness/jquery-ui-1.7.3.custom.css" />
+ <link rel="stylesheet" type="text/css" href="/css/smoothness/jquery-ui-1.7.3.custom.css" />
<link rel="stylesheet" type="text/css" href="/css/flexigrid/flexigrid.css" />
- <script type="text/javascript" src="/js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="/js/jquery-ui-1.7.2.all.min.js"></script>
- <script type="text/javascript" src="/js/flexigrid-minified.js"></script>
- <script type="text/javascript" src="/js/taginfo.js"></script>
- <script type="text/javascript" src="/js/protovis-r3.2.js"></script>
+<%= javascript_tags %>
</head>
<body>
<div id="top">
diff --git a/web/views/reports/characters_in_keys.erb b/web/views/reports/characters_in_keys.erb
index b54a0a4..8f0b578 100644
--- a/web/views/reports/characters_in_keys.erb
+++ b/web/views/reports/characters_in_keys.erb
@@ -51,6 +51,12 @@ case latin letters (a-z) and the underscore (_) are used. Sometimes the colon
<td><%= sprintf '%.2f', @db.stats('characters_in_keys_rest') * 100.0 / @db.stats('num_keys') %>%</td>
<td>Everything else.</td>
</tr>
+ <tr>
+ <td style="border-top: 1px solid #000000;"></td>
+ <td style="border-top: 1px solid #000000;"><%= @db.stats('num_keys') %></td>
+ <td style="border-top: 1px solid #000000;">100%</td>
+ <td style="border-top: 1px solid #000000;">Total</td>
+ </tr>
</table>
</div>
<div id="tabs-whitespace">
@@ -90,7 +96,7 @@ case latin letters (a-z) and the underscore (_) are used. Sometimes the colon
{ display: 'Characters in Key', name: 'characters', width: 810, sortable: true, align: 'left' }
],
width: 990,
- height: 170
+ height: 200
});
jQuery('#keys-whitespace').flexigrid({
url: '/api/2/db/keys?filters=characters_space',
diff --git a/web/views/reports/index.erb b/web/views/reports/index.erb
index b9642e8..d77a4d2 100644
--- a/web/views/reports/index.erb
+++ b/web/views/reports/index.erb
@@ -1,19 +1,21 @@
<h1>Reports</h1>
-<p>Reports show the data from different perspectives. They often bring
-together the data from several sources in interesting ways.</p>
+<p class="text">Reports show the data from different perspectives.
+They often bring together data from several sources in interesting ways. Some
+of the reports can help with finding certain kinds of errors, such as popular
+keys without wiki pages.</p>
-<table>
- <% Report.each do |report| %>
- <tr>
- <% %w(db wiki).each do |source| %>
- <td>
- <% if report.sources[source] %>
- <img src="/img/sources/<%= source %>.16.png" alt="<%= source.capitalize %>" title="<%= source.capitalize %>" width="16" height="16"/>
- <% end %>
- </td>
- <% end %>
- <td style="padding: 2px;"><a href="<%= report.url %>"><%= report.title %></a></td>
- </tr>
- <% end %>
+<table class="reports">
+ <tr><th class="source" colspan="<%= Source.size %>"/>Data<br/>Sources</th><th></th></tr>
+<% Report.each do |report| %>
+ <tr>
+<% Source.each do |source| %>
+ <td class="source"><%= source.link_img if report.uses_source? source.id %></td>
+<% end %>
+ <td><a href="<%= report.url %>"><%= report.title %></a></td>
+ </tr>
+<% end %>
+ <tr><th class="last" colspan="<%= Source.size %>"/></th><th></th></tr>
</table>
+
+
diff --git a/web/views/sources/index.erb b/web/views/sources/index.erb
index ba7fdb8..ee40a60 100644
--- a/web/views/sources/index.erb
+++ b/web/views/sources/index.erb
@@ -10,13 +10,12 @@ have to go back to the source.</p>
<tr>
<th></th><th>Source</th><th>Data until*</th><th>Last update run</th><th></th>
</tr>
- <% @sources.each do |source| %>
+ <% Source.each do |source| %>
<tr>
<td class="border"></td>
- <td><a href="/sources/<%= source['source_id'] %>"><img src="/img/sources/<%= source['source_id'] %>.16.png" alt="" width="16" height="16"/></a>
- <a href="/sources/<%= source['source_id'] %>"><%= source['source_name'] %></a></td>
- <td><%= source['data_until'] %></td>
- <td><%= source['update_start'] %> to <%= source['update_end'] %></td>
+ <td><%= source.link_img + ' ' + source.link_name %>
+ <td><%= source.data_until %></td>
+ <td><%= source.update_start %> to <%= source.update_end %></td>
<td class="border"></td>
</tr>
<% end %>