diff options
author | Jochen Topf <jochen@topf.org> | 2010-11-13 21:31:39 +0100 |
---|---|---|
committer | Jochen Topf <jochen@topf.org> | 2010-11-13 21:31:39 +0100 |
commit | 9db63dc2526bf0b2a94e7a6f37a0f7dabdb8f12d (patch) | |
tree | 0d2ae6de413c39c21d30aaf296a98ee37977ab45 /web/views | |
parent | c82bbe69572398d44187ca7b57b1ce572f435d65 (diff) | |
download | taginfo-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.erb | 99 | ||||
-rw-r--r-- | web/views/layout.erb | 8 | ||||
-rw-r--r-- | web/views/reports/characters_in_keys.erb | 8 | ||||
-rw-r--r-- | web/views/reports/index.erb | 32 | ||||
-rw-r--r-- | web/views/sources/index.erb | 9 |
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 ? '✔' : '-', - row.in_josm ? '✔' : '-', - // row.in_potlatch ? '✔' : '-', - // row.in_merkaartor ? '✔' : '-', - 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 ? '✔' : '-', + row.in_josm ? '✔' : '-', + 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 %> |