<% osm = @trans.t.osm misc = @trans.t.misc page = @trans.t.pages.tag %> function link_to_key_or_tag(key, value) { var link = link_to_key(key) + '='; if (value && value != '') { link += link_to_value(key, value, { 'class': 'pref' }); } else { link += '*'; } return link; } var create_flexigrid_for = { overview: function(key, value, filter_type) { create_flexigrid('grid-overview', { url: '/api/4/tag/stats?key=' + encodeURIComponent(key) + '&value=' + encodeURIComponent(value), colModel: [ { display: '<%= misc.object_type %>', name: 'type', width: 100, sortable: true }, { display: '<%= page.number_objects %>', name: 'count', width: 260, sortable: true, align: 'center' } ], usepager: false, useRp: false, preProcess: function(data) { return { total: 4, page: 1, rows: jQuery.map(data.data, function(row, i) { return { 'cell': [ fmt_image(row.type) + ' ' + texts.osm[row.type], print_value_with_percent(row.count, row.count_fraction) ]}; }) }; } }); }, combinations: function(key, value, filter_type) { create_flexigrid('grid-combinations', { url: '/api/4/tag/combinations?key=' + encodeURIComponent(key) + '&value=' + encodeURIComponent(value) + '&filter=' + encodeURIComponent(filter_type), colModel: [ { display: '<%= misc.count %> →', name: 'to_count', width: 260, sortable: true, align: 'center' }, { display: '<%= page.other_tags_used.other %>', name: 'other_tag', width: 400, sortable: true }, { display: '→ <%= misc.count %>', name: 'from_count', width: 260, sortable: true, align: 'center' } ], searchitems: [ { display: '<%= page.other_tags_used.other %>', name: 'other_tag' } ], sortname: 'to_count', sortorder: 'desc', preProcess: function(data) { data.rows = jQuery.map(data.data, function(row, i) { return { 'cell': [ print_value_with_percent(row.together_count, row.to_fraction), link_to_key_or_tag(row.other_key, row.other_value), print_value_with_percent(row.together_count, row.from_fraction), ] }; }); return data; } }); }, wiki: function(key, value) { create_flexigrid('grid-wiki', { url: '/api/4/tag/wiki_pages?key=' + encodeURIComponent(key) + '&value=' + encodeURIComponent(value), colModel: [ { display: '<%= misc.language %>', name: 'lang', width: 150, sortable: false }, { display: '<%= page.wiki_pages.wiki_page %>', name: 'title', width: 200, sortable: false, align: 'right' }, { display: '<%= misc.description %>', name: 'description', width: 400, sortable: false }, { display: '<%= misc.image %>', name: 'image', width: 120, sortable: false }, { display: '<%= osm.objects %>', name: 'objects', width: 80, sortable: false }, { display: '<%= page.wiki_pages.implied_tags %>', name: 'tags_implied', width: 120, sortable: false }, { display: '<%= page.wiki_pages.combined_tags %>', name: 'tags_combination', width: 120, sortable: false }, { display: '<%= page.wiki_pages.linked_tags %>', name: 'tags_linked', width: 220, sortable: false } ], usepager: false, useRp: false, preProcess: function(data) { return { total: data.size, page: 1, rows: jQuery.map(data, function(row, i) { return { 'cell': [ fmt_language(row.lang, row.language, row.language_en), link_to_wiki(row.title), row.description, row.image.title ? fmt_img_popup(row.image) : empty('<%= misc.no_image %>'), fmt_type_icon('node', row.on_node) + fmt_type_icon('way', row.on_way) + fmt_type_icon('area', row.on_area) + fmt_type_icon('relation', row.on_relation), print_key_or_tag_list(row.tags_implies), print_key_or_tag_list(row.tags_combination), print_key_or_tag_list(row.tags_linked) ]}; }) }; } }); }, josm: function(key, value) { create_flexigrid('grid-josm', { url: '/api/4/tag/josm/style/rules?style=standard&key=' + encodeURIComponent(key) + '&value=' + encodeURIComponent(value), colModel: [ { display: '<%= osm.value %>', name: 'value', width: 400, sortable: false }, { display: '<%= misc.icon %>', name: 'icon', width: 40, sortable: false, align: 'center' }, { display: '<%= misc.line %>', name: 'line', width: 40, sortable: false, align: 'center' }, { display: '<%= misc.area %>', name: 'area', width: 40, sortable: false, align: 'center' } ], sortname: 'value', sortorder: 'asc', preProcess: function(data) { data.rows = jQuery.map(data.data, function(row, i) { return { 'cell': [ fmt_josm_value(row.key, row.value, row.value_bool), fmt_josm_icon('standard', row.icon), fmt_josm_line(row.line_width, row.line_color), fmt_josm_area(row.area_color) ] }; }); return data; } }); } }; function page_init() { jQuery('#josm_button').bind('click', function() { jQuery('#josmiframe')[0].src = jQuery('#josm_button')[0].href; return false; }); jQuery('#filter').bind('change', function() { var value = this.value; var qs = jQuery.getQueryString; qs['filter'] = value; window.location.search = jQuery.param(qs); }); page_init2(); }