diff options
author | Jochen Topf <jochen@topf.org> | 2012-01-23 18:03:32 +0100 |
---|---|---|
committer | Jochen Topf <jochen@topf.org> | 2012-01-23 18:03:32 +0100 |
commit | 9e2e806221d12e0804559e626c88994e5197399a (patch) | |
tree | 42fdd8f886672e328c6cc6a41e62ecd2e90c383e /web/viewsjs/reports | |
parent | e82337c44404f4e42081db24152e86c8ca41e7a5 (diff) | |
download | taginfo-9e2e806221d12e0804559e626c88994e5197399a.tar taginfo-9e2e806221d12e0804559e626c88994e5197399a.tar.gz |
Move flexigrid table definitions into javascript files for each page which are created dynamically according to the language.
Diffstat (limited to 'web/viewsjs/reports')
-rw-r--r-- | web/viewsjs/reports/characters_in_keys.js.erb | 84 | ||||
-rw-r--r-- | web/viewsjs/reports/frequently_used_keys_without_wiki_page.js.erb | 39 | ||||
-rw-r--r-- | web/viewsjs/reports/josm_styles.js.erb | 37 | ||||
-rw-r--r-- | web/viewsjs/reports/key_lengths.js.erb | 49 | ||||
-rw-r--r-- | web/viewsjs/reports/languages.js.erb | 32 | ||||
-rw-r--r-- | web/viewsjs/reports/wiki_pages_about_non_existing_keys.js.erb | 35 |
6 files changed, 276 insertions, 0 deletions
diff --git a/web/viewsjs/reports/characters_in_keys.js.erb b/web/viewsjs/reports/characters_in_keys.js.erb new file mode 100644 index 0000000..ce48a0c --- /dev/null +++ b/web/viewsjs/reports/characters_in_keys.js.erb @@ -0,0 +1,84 @@ +var create_flexigrid_for = { + reports: { + characters_in_keys: { + whitespace: function() { + create_flexigrid('grid-whitespace', { + url: '/api/2/db/keys?filters=characters_space&include=prevalent_values', + colModel: [ + { display: texts.osm.key, name: 'key', width: 250, sortable: true }, + { 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: '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 } + ], + searchitems: [ + { display: texts.osm.key, name: 'key' } + ], + sortname: 'count_all', + sortorder: 'desc', + 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_with_ts(row.users_all), + row.in_wiki ? '✔' : '-', + row.in_josm ? '✔' : '-', + // row.in_potlatch ? '✔' : '-', + // row.in_merkaartor ? '✔' : '-', + print_with_ts(row.values_all), + print_prevalent_value_list(row.key, row.prevalent_values) + ] }; + }); + return data; + } + }); + }, + problematic: function() { + create_flexigrid('grid-problematic', { + url: '/api/2/db/keys?filters=characters_problematic&include=prevalent_values', + colModel: [ + { display: texts.osm.key, name: 'key', width: 250, sortable: true }, + { 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: '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 } + ], + searchitems: [ + { display: texts.osm.key, name: 'key' } + ], + sortname: 'count_all', + sortorder: 'desc', + 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_with_ts(row.users_all), + row.in_wiki ? '✔' : '-', + row.in_josm ? '✔' : '-', + // row.in_potlatch ? '✔' : '-', + // row.in_merkaartor ? '✔' : '-', + print_with_ts(row.values_all), + print_prevalent_value_list(row.key, row.prevalent_values) + ] }; + }); + return data; + } + }); + } + } + } +}; + +function page_init() { + page_init2(); +} diff --git a/web/viewsjs/reports/frequently_used_keys_without_wiki_page.js.erb b/web/viewsjs/reports/frequently_used_keys_without_wiki_page.js.erb new file mode 100644 index 0000000..465059f --- /dev/null +++ b/web/viewsjs/reports/frequently_used_keys_without_wiki_page.js.erb @@ -0,0 +1,39 @@ +var create_flexigrid_for = { + reports: { + frequently_used_keys_without_wiki_page: function(english) { + create_flexigrid('grid-keys', { + url: '/api/2/reports/frequently_used_keys_without_wiki_page?english=' + english, + colModel: [ + { display: 'Create Wiki Page...', name: 'create_wiki_page', width: 200, sortable: false }, + { display: texts.osm.key, name: 'key', width: 180, sortable: true }, + { display: '<span title="Number of objects with this key">Total</span>', name: 'count_all', width: 70, sortable: true, align: 'right' }, + { display: 'Users', name: 'users_all', width: 44, sortable: true, align: 'right' }, + { 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 } + ], + searchitems: [ + { display: texts.osm.key, name: 'key' } + ], + sortname: 'count_all', + sortorder: 'desc', + preProcess: function(data) { + data.rows = jQuery.map(data.data, function(row, i) { + return { 'cell': [ + print_wiki_link('Key:' + row.key, { edit: true }), + link_to_key(row.key), + print_with_ts(row.count_all), + print_with_ts(row.users_all), + print_with_ts(row.values_all), + print_prevalent_value_list(row.key, row.prevalent_values) + ] }; + }); + return data; + } + }); + } + } +}; + +function page_init() { + page_init2(); +} diff --git a/web/viewsjs/reports/josm_styles.js.erb b/web/viewsjs/reports/josm_styles.js.erb new file mode 100644 index 0000000..075ff02 --- /dev/null +++ b/web/viewsjs/reports/josm_styles.js.erb @@ -0,0 +1,37 @@ +var create_flexigrid_for = { + reports: { + josm_styles: function(stylename) { + create_flexigrid('grid-rules', { + url: '/api/2/josm/styles/' + stylename, + colModel: [ + { display: texts.osm.key, name: 'k', width: 300, sortable: true }, + { display: texts.osm.value, name: 'v', width: 300, sortable: true }, + { display: 'Icon', name: 'icon', width: 30, sortable: false, align: 'center' }, + { display: 'Line', name: 'line', width: 30, sortable: false, align: 'center' }, + { display: 'Area', name: 'area', width: 30, sortable: false, align: 'center' } + ], + searchitems: [ + { display: 'Key/Value', name: 'k' } + ], + sortname: 'k', + sortorder: 'asc', + preProcess: function(data) { + data.rows = jQuery.map(data.data, function(row, i) { + return { 'cell': [ + link_to_key(row.k), + row.v ? link_to_value(row.k, row.v) : row.b ? (row.b + ' (Boolean)') : '*', + row.icon ? '<img src="/api/2/josm/styles/images?style=standard&image=' + row.icon + '" title="' + row.icon + '" alt=""/>' : '', + '<div>' + (row.line_width > 0 ? '<div title="' + row.line_color + '" style="height: ' + row.line_width + 'px; margin-top: ' + (10 - Math.round(row.line_width/2)) + 'px; padding: 0; background-color: ' + row.line_color + '"></div>' : '') + '</div>', + row.area_color ? '<div title="' + row.area_color + '" style="height: 18px; background-color: ' + row.area_color + '"></div>' : '' + ] }; + }); + return data; + } + }); + } + } +}; + +function page_init() { + page_init2(); +} diff --git a/web/viewsjs/reports/key_lengths.js.erb b/web/viewsjs/reports/key_lengths.js.erb new file mode 100644 index 0000000..897df68 --- /dev/null +++ b/web/viewsjs/reports/key_lengths.js.erb @@ -0,0 +1,49 @@ +var create_flexigrid_for = { + reports: { + key_lengths: { + keys: function() { + create_flexigrid('grid-keys', { + url: '/api/2/db/keys?include=prevalent_values', + colModel: [ + { display: 'Length', name: 'length', width: 60, sortable: true, align: 'right' }, + { display: texts.osm.key, name: 'key', width: 180, sortable: true }, + { display: 'Number of Objects', name: 'count_all', width: 250, sortable: true, align: 'center' }, + { 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 } + ], + searchitems: [ + { display: texts.osm.key, name: 'key' } + ], + sortname: 'length', + sortorder: 'asc', + preProcess: function(data) { + data.rows = jQuery.map(data.data, function(row, i) { + return { 'cell': [ + row.key.length, + link_to_key(row.key), + print_value_with_percent(row.count_all, row.count_all_fraction), + row.in_wiki ? '✔' : '-', + row.in_josm ? '✔' : '-', + // row.in_potlatch ? '✔' : '-', + // row.in_merkaartor ? '✔' : '-', + print_with_ts(row.values_all), + print_prevalent_value_list(row.key, row.prevalent_values) + ] }; + }); + return data; + } + }); + }, + histogram: function() { + } + } + } +}; + +function page_init() { + page_init2(); +} diff --git a/web/viewsjs/reports/languages.js.erb b/web/viewsjs/reports/languages.js.erb new file mode 100644 index 0000000..5be1b0c --- /dev/null +++ b/web/viewsjs/reports/languages.js.erb @@ -0,0 +1,32 @@ +function page_init() { + create_flexigrid('grid-langs', { + url: '/api/2/reports/languages', + colModel: [ + { display: 'Code', name: 'code', width: 60, sortable: true }, + { display: 'Native Name', name: 'native_name', width: 150, sortable: true }, + { display: 'English Name', name: 'english_name', width: 150, sortable: true }, + { display: 'Wiki Key Pages', name: 'wiki_key_pages', width: 260, sortable: true, align: 'center' }, + { display: 'Wiki Tag Pages', name: 'wiki_tag_pages', width: 260, sortable: true, align: 'center' } + ], + sortname: 'code', + sortorder: 'asc', + showToggleBtn: false, + usepager: false, + useRp: false, + preProcess: function(data) { + return { + total: data.total, + page: 1, + rows: jQuery.map(data.data, function(row, i) { + return { 'cell': [ + '<span class="lang">' + row.code + '</span>', + row.native_name, + row.english_name, + print_value_with_percent(row.wiki_key_pages, row.wiki_key_pages_fraction), + print_value_with_percent(row.wiki_tag_pages, row.wiki_tag_pages_fraction) + ]}; + }) + }; + } + }); +} diff --git a/web/viewsjs/reports/wiki_pages_about_non_existing_keys.js.erb b/web/viewsjs/reports/wiki_pages_about_non_existing_keys.js.erb new file mode 100644 index 0000000..9de24a6 --- /dev/null +++ b/web/viewsjs/reports/wiki_pages_about_non_existing_keys.js.erb @@ -0,0 +1,35 @@ +function page_init() { + create_flexigrid('grid-keys', { + url: '/api/2/db/keys?filters=in_wiki,not_in_db&include=wikipages', + colModel: [ + { 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: texts.osm.key, name: 'key', width: 260, sortable: true, align: 'left' }, + { display: 'Wiki Pages', name: 'wikipages', width: 400, sortable: false, align: 'left' } + ], + searchitems: [ + { display: texts.osm.key, name: 'key' } + ], + sortname: 'count_all', + sortorder: 'desc', + preProcess: function(data) { + data.rows = jQuery.map(data.data, function(row, i) { + var wikilinks = []; + jQuery(row.wikipages).each(function(i, wikipage) { + wikilinks.push(print_wiki_link(wikipage.title)); + }); + return { 'cell': [ + row.in_wiki ? '✔' : '-', + row.in_josm ? '✔' : '-', + // row.in_potlatch ? '✔' : '-', + // row.in_merkaartor ? '✔' : '-', + link_to_key(row.key), + wikilinks.join(' • ') + ] }; + }); + return data; + } + }); +} |