]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/2422'
authorTom Hughes <tom@compton.nu>
Fri, 1 Nov 2019 09:13:39 +0000 (09:13 +0000)
committerTom Hughes <tom@compton.nu>
Fri, 1 Nov 2019 09:13:39 +0000 (09:13 +0000)
18 files changed:
Gemfile.lock
app/abilities/api_ability.rb
app/controllers/api/search_controller.rb [deleted file]
app/controllers/traces_controller.rb
app/views/traces/_trace_optionals.html.erb [deleted file]
app/views/traces/index.html.erb
config/locales/ca.yml
config/locales/de.yml
config/locales/es.yml
config/locales/fit.yml [new file with mode: 0644]
config/locales/fr.yml
config/locales/gl.yml
config/locales/he.yml
config/locales/lv.yml
config/locales/pl.yml
config/locales/sv.yml
config/routes.rb
test/controllers/api/search_controller_test.rb [deleted file]

index 97473d9ac53b8f4e08e7d79fb260cd48b0782f31..ebc633ff33491529f28bf4ae1029bdb5b7c930cf 100644 (file)
@@ -61,17 +61,17 @@ GEM
     autoprefixer-rails (8.6.5)
       execjs
     aws-eventstream (1.0.3)
-    aws-partitions (1.226.0)
-    aws-sdk-core (3.69.1)
+    aws-partitions (1.230.0)
+    aws-sdk-core (3.72.0)
       aws-eventstream (~> 1.0, >= 1.0.2)
-      aws-partitions (~> 1.0)
+      aws-partitions (~> 1, >= 1.228.0)
       aws-sigv4 (~> 1.1)
       jmespath (~> 1.0)
-    aws-sdk-kms (1.24.0)
-      aws-sdk-core (~> 3, >= 3.61.1)
+    aws-sdk-kms (1.25.0)
+      aws-sdk-core (~> 3, >= 3.71.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-s3 (1.50.0)
-      aws-sdk-core (~> 3, >= 3.61.1)
+    aws-sdk-s3 (1.52.0)
+      aws-sdk-core (~> 3, >= 3.71.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.1)
     aws-sigv4 (1.1.0)
@@ -220,7 +220,7 @@ GEM
       sprockets
     image_size (2.0.2)
     in_threads (1.5.3)
-    jaro_winkler (1.5.3)
+    jaro_winkler (1.5.4)
     jmespath (1.4.0)
     jquery-rails (4.3.5)
       rails-dom-testing (>= 1, < 3)
@@ -244,7 +244,7 @@ GEM
       activesupport (>= 4.0)
       logstash-event (~> 1.2.0)
       request_store
-    loofah (2.3.0)
+    loofah (2.3.1)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     mail (2.7.1)
@@ -256,7 +256,7 @@ GEM
     mini_magick (4.9.5)
     mini_mime (1.0.2)
     mini_portile2 (2.4.0)
-    minitest (5.12.2)
+    minitest (5.13.0)
     msgpack (1.3.1)
     multi_json (1.14.1)
     multi_xml (0.6.0)
@@ -371,7 +371,7 @@ GEM
     rinku (2.0.6)
     rotp (5.1.0)
       addressable (~> 2.5)
-    rubocop (0.75.1)
+    rubocop (0.76.0)
       jaro_winkler (~> 1.5.1)
       parallel (~> 1.10)
       parser (>= 2.6)
@@ -412,14 +412,14 @@ GEM
       actionpack (>= 4.0)
       activesupport (>= 4.0)
       sprockets (>= 3.0.0)
-    strong_migrations (0.4.1)
+    strong_migrations (0.4.2)
       activerecord (>= 5)
     term-ansicolor (1.7.1)
       tins (~> 1.0)
     thor (0.20.3)
     thread_safe (0.3.6)
     tilt (2.0.10)
-    tins (1.21.1)
+    tins (1.22.0)
     tzinfo (1.2.5)
       thread_safe (~> 0.1)
     uglifier (4.2.0)
index 80245eeaa34882e6acd71d3930436b5d9d13f4d1..6d62ece5172f0f5ad9eaccb63dc2fc8c798bcd4a 100644 (file)
@@ -8,7 +8,6 @@ class ApiAbility
     can :index, :change
     can :index, :map
     can :show, :permission
-    can [:search_all, :search_nodes, :search_ways, :search_relations], :search
     can :show, :version
 
     if Settings.status != "database_offline"
diff --git a/app/controllers/api/search_controller.rb b/app/controllers/api/search_controller.rb
deleted file mode 100644 (file)
index feb487a..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-module Api
-  class SearchController < ApiController
-    # Support searching for nodes, ways, or all
-    # Can search by tag k, v, or both (type->k,value->v)
-    # Can search by name (k=name,v=....)
-    authorize_resource :class => false
-
-    def search_all
-      do_search(true, true, true)
-    end
-
-    def search_ways
-      do_search(true, false, false)
-    end
-
-    def search_nodes
-      do_search(false, true, false)
-    end
-
-    def search_relations
-      do_search(false, false, true)
-    end
-
-    def do_search(do_ways, do_nodes, do_relations)
-      type = params["type"]
-      value = params["value"]
-      unless type || value
-        name = params["name"]
-        if name
-          type = "name"
-          value = name
-        end
-      end
-
-      if do_nodes
-        response.headers["Error"] = "Searching of nodes is currently unavailable"
-        head :service_unavailable
-        return false
-      end
-
-      unless value
-        response.headers["Error"] = "Searching for a key without value is currently unavailable"
-        head :service_unavailable
-        return false
-      end
-
-      # Matching for node tags table
-      if do_nodes
-        nodes = Node.joins(:node_tags)
-        nodes = nodes.where(:current_node_tags => { :k => type }) if type
-        nodes = nodes.where(:current_node_tags => { :v => value }) if value
-        nodes = nodes.limit(100)
-      else
-        nodes = []
-      end
-
-      # Matching for way tags table
-      if do_ways
-        ways = Way.joins(:way_tags)
-        ways = ways.where(:current_way_tags => { :k => type }) if type
-        ways = ways.where(:current_way_tags => { :v => value }) if value
-        ways = ways.limit(100)
-      else
-        ways = []
-      end
-
-      # Matching for relation tags table
-      if do_relations
-        relations = Relation.joins(:relation_tags)
-        relations = relations.where(:current_relation_tags => { :k => type }) if type
-        relations = relations.where(:current_relation_tags => { :v => value }) if value
-        relations = relations.limit(2000)
-      else
-        relations = []
-      end
-
-      # Fetch any node needed for our ways (only have matching nodes so far)
-      nodes += Node.find(ways.collect(&:nds).uniq)
-
-      # Print
-      visible_nodes = {}
-      changeset_cache = {}
-      user_display_name_cache = {}
-      doc = OSM::API.new.get_xml_doc
-      nodes.each do |node|
-        doc.root << node.to_xml_node(changeset_cache, user_display_name_cache)
-        visible_nodes[node.id] = node
-      end
-
-      ways.each do |way|
-        doc.root << way.to_xml_node(visible_nodes, changeset_cache, user_display_name_cache)
-      end
-
-      relations.each do |rel|
-        doc.root << rel.to_xml_node(changeset_cache, user_display_name_cache)
-      end
-
-      render :xml => doc.to_s
-    end
-  end
-end
index 3497e92d5fdc9348e80e3c9b6bbaf40036bd9a7f..a0852d2ce2665959714c02c35c5cdc4c03504425 100644 (file)
@@ -65,19 +65,9 @@ class TracesController < ApplicationController
     @traces = @traces.limit(@page_size)
     @traces = @traces.includes(:user, :tags)
 
-    # put together SET of tags across traces, for related links
-    tagset = {}
-    @traces.each do |trace|
-      trace.tags.reload if params[:tag] # if searched by tag, ActiveRecord won't bring back other tags, so do explicitly here
-      trace.tags.each do |tag|
-        tagset[tag.tag] = tag.tag
-      end
-    end
-
     # final helper vars for view
     @target_user = target_user
     @display_name = target_user.display_name if target_user
-    @all_tags = tagset.values
   end
 
   def mine
diff --git a/app/views/traces/_trace_optionals.html.erb b/app/views/traces/_trace_optionals.html.erb
deleted file mode 100644 (file)
index d974965..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-<% content_for :optionals do %>
-  <div class="optionalbox">
-    <h4><%= t ".tags" %></h4>
-    <% if @all_tags %>
-      <% @all_tags.each do |tag| %>
-        <%= link_to_tag tag %><br />
-      <% end %>
-    <% end %>
-  </div>
-<% end %>
index da40f5a4d64a16133f15b6083f9711c886ecc7a2..fff62ba551ee00d61f31164ebbdad3148edefa9e 100644 (file)
@@ -41,5 +41,3 @@
 <% else %>
   <h4><%= t ".empty_html", :upload_link => new_trace_path %></h4>
 <% end %>
-
-<%= render :partial => "trace_optionals" %>
index 4938e38061810ab6dbc3330739d68cae4568a3b4..9fbd9a13f95fc388b55e368e880aa5cef96b5a9a 100644 (file)
@@ -56,8 +56,8 @@ ca:
       message:
         create: Envia
       client_application:
-        create: Registre
-        update: Modificació
+        create: Registra
+        update: Modifica
       redaction:
         create: Crea una redacció
         update: Desa la redacció
@@ -65,8 +65,8 @@ ca:
         create: Puja
         update: Desa els canvis
       user_block:
-        create: Crear bloc
-        update: Bloc d'Actualització
+        create: Crea un bloc
+        update: Actualitza el bloc
   activerecord:
     errors:
       messages:
@@ -77,8 +77,8 @@ ca:
       changeset: Conjunt de canvis
       changeset_tag: Etiqueta del conjunt de canvis
       country: País
-      diary_comment: Comentari del diari
-      diary_entry: Entrada al diari
+      diary_comment: Comentari de diari
+      diary_entry: Entrada de diari
       friend: Amic
       language: Llengua
       message: Missatge
@@ -86,11 +86,11 @@ ca:
       node_tag: Etiqueta del node
       notifier: Notificador
       old_node: Node antic
-      old_node_tag: Etiqueta del node antic
+      old_node_tag: Etiqueta de node antic
       old_relation: Relació antiga
       old_relation_member: Membre de la relació antiga
       old_relation_tag: Etiqueta de relació antiga
-      old_way: Via antiga
+      old_way: Camí antic
       old_way_node: Node de la via antiga
       old_way_tag: Etiqueta de la via antiga
       relation: Relació
@@ -101,7 +101,7 @@ ca:
       tracepoint: Punt de la traça
       tracetag: Etiqueta de la traça
       user: Usuari
-      user_preference: Preferència d'usuari
+      user_preference: Preferència de l'usuari
       user_token: Testimoni d'usuari
       way: Via
       way_node: Node de la via
@@ -142,17 +142,17 @@ ca:
   datetime:
     distance_in_words_ago:
       about_x_hours:
-        one: aproximadament fa 1 hora
-        other: aproximadament fa %{count} hores
+        one: fa 1 hora aproximadament
+        other: 'fa %{count} hores aproximadament '
       about_x_months:
-        one: aproximadament fa 1 mes
-        other: aproximadament fa %{count} mesos
+        one: fa 1 mes aproximadament
+        other: fa %{count} mesos aproximadament
       about_x_years:
-        one: aproximadament fa 1 any
-        other: aproximadament fa %{count} anys
+        one: fa 1 any aproximadament
+        other: ' fa %{count} anys aproximadament'
       almost_x_years:
-        one: gairebé fa 1 any
-        other: gairebé fa %{count} anys
+        one: fa gairebé 1 any
+        other: gairebé fa gairebé %{count} anys
       half_a_minute: fa mig minut
       less_than_x_seconds:
         other: un=fa menys d'1 segon
@@ -177,15 +177,15 @@ ca:
     default: Predeterminat (actualment %{name})
     potlatch:
       name: Potlatch 1
-      description: Potlatch 1 (editor al navegador)
+      description: Potlatch 1 (editor integrat en el navegador)
     id:
       name: iD
-      description: iD (editor al navegador)
+      description: iD (editor integrat en el navegador)
     potlatch2:
       name: Potlatch 2
-      description: Potlatch 2 (editor al navegador)
+      description: Potlatch 2 (editor integrat en el navegador)
     remote:
-      name: Control Remot
+      name: Control remot
       description: Control remot (JOSM o Merkaartor)
   api:
     notes:
@@ -197,36 +197,36 @@ ca:
         closed_at_html: Resolt a %{when}
         closed_at_by_html: Resolt a %{when} per %{user}
         reopened_at_html: Reactivat a %{when}
-        reopened_at_by_html: Reactivat el %{when} per %{user}
+        reopened_at_by_html: Reactivat a %{when} per %{user}
       rss:
-        title: Notes dOpenStreetMap
-        description_area: Una llista de notes, reportades, comentades o bé tancades
+        title: Notes d'OpenStreetMap
+        description_area: Una llista de notes reportades, comentades o bé tancades
           a la vostra àrea [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})]
-        description_item: Un canal rss per la nota %{id}
-        opened: Nota nova (a prop %{place})
-        commented: nou comentari (prop de %{place})
-        closed: nota tancada (aprop de %{place})
-        reopened: Nota reactivada (prop de %{place})
+        description_item: Un agregador rss per a la nota %{id}
+        opened: Nota nova (a prop de %{place})
+        commented: nou comentari (prop de %{place})
+        closed: nota tancada (a prop de %{place})
+        reopened: nota reactivada (a prop de %{place})
       entry:
         comment: Comentari
         full: Nota sencera
   browse:
     created: Creat
     closed: Tancat
-    created_html: Creat el <abbr title='%{title}'>%{time}</abbr>
-    closed_html: Tancat el <abbr title='%{title}'>%{time}</abbr>
-    created_by_html: Creat el <abbr title='%{title}'>%{time}</abbr> per %{user}
-    deleted_by_html: Eliminat el <abbr title='%{title}'>%{time}</abbr> per %{user}
-    edited_by_html: Editat el <abbr title='%{title}'>%{time}</abbr> per  %{user}
-    closed_by_html: Tancat el <abbr title='%{title}'>%{time} </abbr> per  %{user}
+    created_html: Creat a <abbr title='%{title}'>%{time}</abbr>
+    closed_html: Tancat a <abbr title='%{title}'>%{time}</abbr>
+    created_by_html: Creat a <abbr title='%{title}'>%{time}</abbr> per %{user}
+    deleted_by_html: Eliminat a <abbr title='%{title}'>%{time}</abbr> per %{user}
+    edited_by_html: Editat a <abbr title='%{title}'>%{time}</abbr> per  %{user}
+    closed_by_html: Tancat a <abbr title='%{title}'>%{time} </abbr> per  %{user}
     version: Versió
     in_changeset: Conjunt de canvis
     anonymous: anònim
-    no_comment: (sense comentaris)
+    no_comment: (cap comentari)
     part_of: Part de
     download_xml: Descarregar l'XML
-    view_history: Mostrar l'historial
-    view_details: Mostrar els detalls
+    view_history: Mostra l'historial
+    view_details: Mostra els detalls
     location: 'Ubicació:'
     changeset:
       title: 'Conjunt de canvis: %{id}'
@@ -238,8 +238,7 @@ ca:
       relation: Relacions (%{count})
       relation_paginated: Relacions (%{x}-%{y} de %{count})
       comment: Comentaris(%{count})
-      hidden_commented_by: Comentari ocult de l'usuari %{user}<abbr title='%{exact_time}'>el
-        %{when}</abbr>
+      hidden_commented_by: Comentari ocult de l'usuari %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
       commented_by: Comentari de %{user} <abbr title='%{exact_time}'> a %{when}</abbr>
       changesetxml: XML del conjunt de canvis
       osmchangexml: XML en format osmChange
@@ -265,16 +264,16 @@ ca:
       history_title: 'Historial de la relació: %{name}'
       members: Membres
     relation_member:
-      entry_role: '%{type} %{name} com %{role}'
+      entry_role: '%{type} %{name} com %{role}'
       type:
         node: Node
         way: Via
         relation: Relació
     containing_relation:
       entry: Relació %{relation_name}
-      entry_role: Relació %{relation_name} (com a  %{relation_role})
+      entry_role: Relació %{relation_name} (com a %{relation_role})
     not_found:
-      sorry: 'Ho sentim, no s''ha trobat el %{type} amb l''id #%{id}.'
+      sorry: 'No s''ha trobat el %{type} #%{id}.'
       type:
         node: node
         way: via
@@ -282,8 +281,8 @@ ca:
         changeset: conjunt de canvis
         note: nota
     timeout:
-      sorry: Ho sentim, hem trigat massa en obtenir les dades pel tipus %{type} amb
-        identificador %{id}.
+      sorry: S'ha trigat massa a obtenir les dades per al tipus %{type} amb l'identificador
+        %{id}.
       type:
         node: node
         way: via
@@ -292,23 +291,23 @@ ca:
         note: nota
     redacted:
       redaction: Redacció %{id}
-      message_html: La versió %{version} d'aquest %{type} no pot ser mostrada com
-        ha estat redactada. Si us plau, vegeu  %{redaction_link} per més detalls.
+      message_html: No es pot mostrar la versió %{version} d'aquest %{type} tal com
+        ha estat redactada. Consulteu %{redaction_link} per a més detalls.
       type:
         node: node
         way: via
         relation: relació
     start_rjs:
-      feature_warning: Carregant %{num_features} característiques, que poden fer que
-        el vostre navegador funcioni més lent, o que no respongui. Esteu segur que
-        voleu mostrar aquestes dades?
+      feature_warning: Carregant %{num_features} característiques que poden fer que
+        el vostre navegador funcioni més lent o que no respongui. Voleu mostrar aquestes
+        dades de tota manera?
       load_data: Carrega dades
       loading: S'està carregant...
     tag_details:
       tags: Etiquetes
       wiki_link:
-        key: La pàgina de descripció del wiki per l'etiqueta %{key}
-        tag: La pàgina de descripció del wiki per l'etiqueta %{key}=%{value}
+        key: La pàgina de descripció del wiki per l'etiqueta %{key}
+        tag: La pàgina de descripció del wiki per l'etiqueta %{key}=%{value}
       wikidata_link: L'element %{page} a Wikidata
       wikipedia_link: L'article %{page} a la Viquipèdia
       telephone_link: Telefona %{phone_number}
@@ -321,28 +320,28 @@ ca:
       closed_title: 'Nota resolta #%{note_name}'
       hidden_title: 'Nota oculta #%{note_name}'
       open_by: Creat per %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
-      open_by_anonymous: Creat per un anònim fa <abbr title='%{exact_time}'>%{when}</abbr>
-      commented_by: Comentari de %{user} fa <abbr title='%{exact_time}'>%{when}</abbr>
+      open_by_anonymous: Creat per un anònim a <abbr title='%{exact_time}'>%{when}</abbr>
+      commented_by: Comentari de %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
       commented_by_anonymous: Comentari d'un anònim a <abbr title='%{exact_time}'>%{when}</abbr>
       closed_by: Resolt per %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
       closed_by_anonymous: Resolt per un anònim a <abbr title='%{exact_time}'>%{when}</abbr>
       reopened_by: Reactivat per %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
       reopened_by_anonymous: Reactivat per un anònim a <abbr title='%{exact_time}'>%{when}</abbr>
       hidden_by: Ocultat per %{user} a <abbr title='%{exact_time}'>%{when}</abbr>
-      report: Avisa d’aquesta notícia
+      report: Reporta aquesta nota
     query:
-      title: Consultar característiques
-      introduction: Cliqueu al mapa per trobar característques properes.
-      nearby: Característiques properes
-      enclosing: Característiques adjuntes
+      title: Consulta objectes
+      introduction: Cliqueu en el mapa per a trobar objectes propers.
+      nearby: Objectes propers
+      enclosing: Objectes envoltants
   changesets:
     changeset_paging_nav:
       showing_page: Pàgina %{page}
-      next: Següent 
-      previous:  Anterior
+      next: Següent »
+      previous: « Anterior
     changeset:
       anonymous: Anònim
-      no_edits: (sense edicions)
+      no_edits: (no hi ha cap edició)
       view_changeset_details: Mostra els detalls del conjunt de canvis
     changesets:
       id: ID
@@ -363,11 +362,11 @@ ca:
       no_more_user: No hi ha cap altre conjunt de canvis d'aquest usuari.
       load_more: Carrega'n més
     timeout:
-      sorry: Ho sentim, la llista de conjunt de canvis que heu sol·licitat ha trigat
-        massa a recuperar-se.
+      sorry: La llista de conjunt de canvis que heu sol·licitat ha trigat massa a
+        carregar-se.
   changeset_comments:
     comment:
-      comment: 'Nou comentari de %{author} al conjunt de canvis #%{changeset_id}'
+      comment: 'Nou comentari al conjunt de canvis #%{changeset_id} de %{author}'
       commented_at_by_html: Actualitzat a %{when} per %{user}
     comments:
       comment: 'Nou comentari de %{author} al conjunt de canvis #%{changeset_id}'
@@ -383,20 +382,20 @@ ca:
     form:
       subject: 'Assumpte:'
       body: 'Cos del missatge:'
-      language: 'Llengua:'
+      language: 'Idioma:'
       location: 'Ubicació:'
       latitude: 'Latitud:'
       longitude: 'Longitud:'
       use_map_link: usa el mapa
     index:
-      title: Diaris d'usuari/a
-      title_friends: Diaris dels amics
+      title: Diaris dels usuaris
+      title_friends: Diaris d'amics
       title_nearby: Diaris d'usuaris propers
       user_title: Diari de %{user}
       in_language_title: Entrades de diari en %{language}
       new: Entrada de diari nova
-      new_title: Redacta una nova entrada al meu diari d'usuari/a
-      no_entries: No hi ha entrades al diari
+      new_title: Redacta una nova entrada en el meu diari d'usuari
+      no_entries: No hi ha cap entrada en el diari
       recent_entries: Entrades recents al diari
       older_entries: Entrades més antigues
       newer_entries: Entrades més noves
@@ -406,12 +405,12 @@ ca:
     show:
       title: Diari de %{user} | %{title}
       user_title: Diari de %{user}
-      leave_a_comment: Deixa un comentari
-      login_to_leave_a_comment: '%{login_link} per deixar un comentari'
+      leave_a_comment: Feu un comentari
+      login_to_leave_a_comment: '%{login_link} per a fer un comentari'
       login: Inicia una sessió
     no_such_entry:
       title: Aquesta entrada no és al diari
-      heading: No hi ha cap entrada amb la id %{id}
+      heading: 'No hi ha cap entrada amb la id: %{id}'
       body: No hi ha cap entrada o comentari en el diari amb l'id %{id}. Si us plau,
         comproveu-ne l'ortografia. O potser l'enllaç que heu clicat no és correcte.
     diary_entry:
@@ -419,20 +418,20 @@ ca:
       comment_link: Comenta aquesta entrada
       reply_link: Respon a aquesta entrada
       comment_count:
+        zero: Cap comentari
         one: '%{count} comentari'
-        zero: Sense comentaris
         other: '%{count} comentaris'
       edit_link: Edita aquesta entrada
       hide_link: Amaga aquesta entrada
-      unhide_link: Desamaga aquesta entrada
+      unhide_link: Mostra aquesta entrada
       confirm: Confirma
       report: Denuncieu aquesta entrada
     diary_comment:
       comment_from: Comentari de %{link_user} el %{comment_created_at}
       hide_link: Amaga aquest comentari
-      unhide_link: Desamaga aquest comentari
+      unhide_link: Mostra aquest comentari
       confirm: Confirma
-      report: Informeu d'aquest comentari
+      report: Reporteu aquest comentari
     location:
       location: 'Ubicació:'
       view: Mostra
@@ -457,14 +456,14 @@ ca:
   geocoder:
     search:
       title:
-        latlon: Resultats <a href="http://openstreetmap.org/">propis</a>
+        latlon: Resultats de <a href="http://openstreetmap.org/">interns</a>
         ca_postcode: Resultats de <a href="http://geocoder.ca/">Geocoder.CA</a>
         osm_nominatim: Resultats de <a href="http://nominatim.openstreetmap.org/">OpenStreetMap
-          nominatim</a>
-        geonames: Resultats des de <a href="http://www.geonames.org/">GeoNames</a>
+          Nominatim</a>
+        geonames: Resultats de <a href="http://www.geonames.org/">GeoNames</a>
         osm_nominatim_reverse: Resultats de <a href="http://nominatim.openstreetmap.org/">OpenStreetMap
           nominatim</a>
-        geonames_reverse: Resultats procedents de <a href="http://www.geonames.org/">GeoNames</a>
+        geonames_reverse: Resultats de <a href="http://www.geonames.org/">GeoNames</a>
     search_osm_nominatim:
       prefix:
         aerialway:
@@ -479,13 +478,13 @@ ca:
         aeroway:
           aerodrome: Aeròdrom
           airstrip: Aeròdrom
-          apron: Autobús de pista
+          apron: Plataforma d'estacionament
           gate: Porta
           hangar: Hangar
-          helipad: Helisuperfície
+          helipad: Heliport
           holding_position: Punt d'espera
           parking_position: Punt d'estacionament
-          runway: Pista d'aterratge
+          runway: Pista
           taxiway: Carrer de rodada
           terminal: Terminal
         amenity:
@@ -494,11 +493,11 @@ ca:
           atm: Caixer automàtic
           bank: Banc
           bar: Bar
-          bbq: barbacoa
+          bbq: Barbacoa
           bench: Banc
           bicycle_parking: Aparcament de bicicletes
           bicycle_rental: Lloguer de bicicletes
-          biergarten: Cervesseria a l'aire lliure
+          biergarten: Cerveseria a l'aire lliure
           boat_rental: Lloguer d'embarcacions
           brothel: Prostíbul
           bureau_de_change: Oficina de canvi
@@ -509,12 +508,12 @@ ca:
           car_wash: Rentat de cotxes
           casino: Casino
           charging_station: Estació de recàrrega
-          childcare: Ludoteca
+          childcare: Llar d'infants
           cinema: Cinema
           clinic: Clínica
           clock: Rellotge
           college: Institut
-          community_centre: Centre Comunitari / Centre Cívic
+          community_centre: Centre cívic
           courthouse: Jutjat
           crematorium: Crematori
           dentist: Dentista
@@ -523,7 +522,7 @@ ca:
           driving_school: Autoescola
           embassy: Ambaixada
           fast_food: Menjar ràpid
-          ferry_terminal: Terminal de Ferry
+          ferry_terminal: Terminal de ferris
           fire_station: Parc de bombers
           food_court: Àrea de restauració
           fountain: Font
@@ -532,15 +531,15 @@ ca:
           grave_yard: Cementiri
           grit_bin: Contenidor de sal
           hospital: Hospital
-          hunting_stand: Club de caça
-          ice_cream: Gelat
+          hunting_stand: Aguait
+          ice_cream: Gelateria
           kindergarten: Jardí d'infància
           library: Biblioteca
           marketplace: Mercat
           monastery: Monestir
           motorcycle_parking: Aparcament per a motos
           nightclub: Club nocturn
-          nursing_home: Llar d'Avis
+          nursing_home: Residència geriàtrica
           office: Oficina
           parking: Pàrquing
           parking_entrance: Entrada d'aparcament
@@ -548,15 +547,15 @@ ca:
           pharmacy: Farmàcia
           place_of_worship: Lloc de culte
           police: Policia
-          post_box: Bustia
+          post_box: Bústia
           post_office: Oficina de correus
-          preschool: Pre-Escola
+          preschool: Parvulari
           prison: Presó
           pub: Pub
           public_building: Edifici públic
           recycling: Punt de reciclatge
           restaurant: Restaurant
-          retirement_home: Casa de Retirament
+          retirement_home: Residència geriàtrica
           sauna: Sauna
           school: Escola
           shelter: Refugi
@@ -570,21 +569,21 @@ ca:
           taxi: Taxi
           telephone: Telèfon públic
           theatre: Teatre
-          toilets: Banys
+          toilets: Lavabos
           townhall: Ajuntament
           university: Universitat
           vending_machine: Màquina expenedora
-          veterinary: Veterinari
-          village_hall: Casa de la Vila
-          waste_basket: Cistella de Residus
+          veterinary: Cirurgia veterinària
+          village_hall: Centre cívic
+          waste_basket: Paperera
           waste_disposal: Contenidor d'escombraries
           water_point: Punt d'aigua
           youth_centre: Centre juvenil
         boundary:
           administrative: Límit administratiu
           census: Límit censal
-          national_park: Parc Nacional
-          protected_area: Zona protegida
+          national_park: Parc nacional
+          protected_area: Àrea protegida
         bridge:
           aqueduct: Aqüeducte
           boardwalk: Passarel·la de fusta
@@ -609,43 +608,43 @@ ca:
           ambulance_station: Base d'ambulàncies
           assembly_point: Punt de reunió
           defibrillator: Desfibril·lador
-          landing_site: Lloc d'aterratges d'emergència
+          landing_site: Lloc d'aterratge d'emergència
           phone: Telèfon per a emergències
           water_tank: Dipòsit d'aigua d'emergència
           "yes": Emergència
         highway:
           abandoned: Carretera abandonada
-          bridleway: Ferradura
-          bus_guideway: Carril Bus
+          bridleway: Camí de ferradura
+          bus_guideway: Carril d'autobús guiat
           bus_stop: Parada d'autobús
           construction: Autopista en construcció
           corridor: Corredor
-          cycleway: Ruta per a bicicletes
+          cycleway: Carril bici
           elevator: Ascensor
           emergency_access_point: Accés d'emergència
           footway: Sendera
-          ford: Fiord
-          give_way: Senya de cediu el pas
-          living_street: Carrer habitat
+          ford: Gual
+          give_way: Senyal de cediu el pas
+          living_street: Carrer residencial
           milestone: Fita
           motorway: Autopista
-          motorway_junction: Unió d'autopista
-          motorway_link: Carretera d'autopista
+          motorway_junction: Nus viari
+          motorway_link: Enllaç d'autopista
           passing_place: Apartador
           path: Camí
-          pedestrian: Via Peatonal
-          platform: Perron
-          primary: Carretera Principal
+          pedestrian: Via de vianants
+          platform: Andana per a bus o tramvia
+          primary: Carretera principal
           primary_link: Carretera principal
-          proposed: Carretera proposada
-          raceway: Vial Ràpid
-          residential: Carrer Residencial
+          proposed: Carretera projectada
+          raceway: Circuit de curses
+          residential: Carrer residencial
           rest_area: Àrea de descans
           road: Carretera
           secondary: Carretera secundària
           secondary_link: Carretera secundària
-          service: Carretera de Servei
-          services: Serveis en ruta
+          service: Via de servei
+          services: Àrea de serveis
           speed_camera: Radar
           steps: Graons
           stop: Senyal d'estop
@@ -654,46 +653,46 @@ ca:
           tertiary_link: Carretera terciària
           track: Pista
           traffic_signals: Senyals de trànsit
-          trail: Sendera o corriol
-          trunk: Autovia de
-          trunk_link: Autovia de
+          trail: Sendera
+          trunk: Autovia
+          trunk_link: Autovia
           turning_loop: Rotonda de canvi de sentit
-          unclassified: Sense classificar Road
+          unclassified: Carretera sense classificar
           "yes": Carretera
         historic:
-          archaeological_site: Lloc arqueològic
+          archaeological_site: Jaciment arqueològic
           battlefield: Camp de batalla
-          boundary_stone: Pedra de la frontera
+          boundary_stone: Fita fronterera
           building: Edifici històric
           bunker: Búnquer
           castle: Castell
           church: Església
-          city_gate: Porta urbana
-          citywalls: Muralles
-          fort: Fortí
-          heritage: Espai patrimoni de la humanitat
+          city_gate: Porta de la ciutat
+          citywalls: Muralles de la vila
+          fort: Fort
+          heritage: Patrimoni de la humanitat
           house: Casa
           icon: Icona
-          manor: Manor
+          manor: Casa pairal
           memorial: Memorial
           mine: Mina
           mine_shaft: Pou miner
           monument: Monument
-          roman_road: Carretera Romana
+          roman_road: Calçada romana
           ruins: Ruïnes
           stone: Pedra
           tomb: Tomba
           tower: Torre
-          wayside_cross: Camí de la creu
-          wayside_shrine: Santuari de carreteres
-          wreck: Wreck
+          wayside_cross: Creu de terme
+          wayside_shrine: Oratori
+          wreck: Derelicte
           "yes": Lloc històric
         junction:
           "yes": Intersecció
         landuse:
           allotments: Horts
           basin: Conca
-          brownfield: Brownfield terra
+          brownfield: Erm urbà
           cemetery: Cementiri
           commercial: Zona comercial
           conservation: Conservació
@@ -704,51 +703,51 @@ ca:
           forest: Bosc
           garages: Garatges
           grass: Herba
-          greenfield: Greenfield terra
+          greenfield: Terreny no urbanitzat
           industrial: Zona industrial
           landfill: Abocador
           meadow: Prat
-          military: Zona Militar
+          military: Zona militar
           mine: Mina
           orchard: Verger
           quarry: Pedrera
           railway: Ferrocarril
-          recreation_ground: Zona d'Esbarjo
+          recreation_ground: Zona d'esbarjo
           reservoir: Embassament
-          reservoir_watershed: Embassament de conca
+          reservoir_watershed: Conca de l'embassament
           residential: Àrea residencial
-          retail: Al detall
-          road: Zona de carretera
-          village_green: Zona verda
+          retail: Zona comercial
+          road: Àrea de carretera
+          village_green: Prat municipal
           vineyard: Vinya
           "yes": Ús del terreny
         leisure:
-          beach_resort: Beach Resort
+          beach_resort: Complex turístic de platja
           bird_hide: Aguait
-          common: Terra comú
+          common: Terreny comunal
           dog_park: Parc caní
           firepit: Pou per a fer for
           fishing: Àrea de pesca
-          fitness_centre: Centre de fitness
-          fitness_station: Centre de fitness
+          fitness_centre: Gimnàs
+          fitness_station: Gimnàs a l'aire lliure
           garden: Jardí
           golf_course: Camp de golf
           horse_riding: Hípica
-          ice_rink: Pista de patinatge sobre gel
+          ice_rink: Pista de gel
           marina: Port esportiu
           miniature_golf: Minigolf
           nature_reserve: Reserva natural
           park: Parc
           pitch: Camp d'esports
           playground: Parc infantil
-          recreation_ground: Terra de recreació
-          resort: Resort
+          recreation_ground: Zona d'esbarjo
+          resort: Complex turístic
           sauna: Sauna
-          slipway: Slipway
+          slipway: Grada nàutica
           sports_centre: Centre esportiu
           stadium: Estadi
           swimming_pool: Piscina
-          track: Pista
+          track: Pista d'atletisme
           water_park: Parc aquàtic
           "yes": Esbarjo
         man_made:
@@ -779,14 +778,14 @@ ca:
           storage_tank: Tanc d'emmagatzematge
           surveillance: Vigilància
           tower: Torre
-          wastewater_plant: Planta d'aigües residuals
+          wastewater_plant: Estació depuradora d'aigües residuals
           watermill: Molí d'aigua
           water_tower: Torre d'aigua
           water_well: Pou
           water_works: Estructura hidràulica
           windmill: Molí de vent
           works: Fàbrica
-          "yes": Fet per l'home
+          "yes": Artificial
         military:
           airfield: Aeroport militar
           barracks: Caserna
@@ -802,7 +801,7 @@ ca:
           cliff: Cingle
           crater: Cràter
           dune: Duna
-          fell: Forest
+          fell: Landa
           fjord: Fiord
           forest: Bosc
           geyser: Guèiser
@@ -812,8 +811,8 @@ ca:
           hill: Pujol
           island: Illa
           land: Terra
-          marsh: Marsh
-          moor: Amarratge
+          marsh: Aiguamoll
+          moor: Torbera
           mud: Llot
           peak: Pic
           point: Punt
@@ -823,7 +822,7 @@ ca:
           saddle: Coll
           sand: Sorra
           scree: Pedregar
-          scrub: Scrub
+          scrub: Matollar
           spring: Deu
           stone: Pedra
           strait: Estret
@@ -867,55 +866,55 @@ ca:
           municipality: Municipi
           neighbourhood: Barri
           postcode: Codi postal
-          quarter: Quarter
+          quarter: Districte
           region: Regió
           sea: Mar
           square: Plaça
-          state: Estat o província
+          state: Estat
           subdivision: Subdivisió
           suburb: Suburbi
-          town: Poble
+          town: Vila
           unincorporated_area: Àrea no incorporada
-          village: Aldea
+          village: Poble
           "yes": Lloc
         railway:
-          abandoned: Ferrocarril fora de Servei
-          construction: Ferrocarril en Construcció
+          abandoned: Ferrocarril abandonat
+          construction: Ferrocarril en construcció
           disused: Ferrocarril en desús
-          funicular: Funicular Railway
-          halt: Parada de tren
-          junction: Cruïlla de tren
+          funicular: Funicular
+          halt: Parada de trens
+          junction: Nus ferroviari
           level_crossing: Pas a nivell
           light_rail: Tren lleuger
           miniature: Ferrocarril en miniatura
           monorail: Monorail
-          narrow_gauge: Ample ferroviari mètric
+          narrow_gauge: Ferroviari de via estreta
           platform: Andana
-          preserved: Conservat ferrocarril
-          proposed: Ferrocarril proposat
+          preserved: Ferrocarril conservat
+          proposed: Ferrocarril projectat
           spur: Esperó de ferrocarril
           station: Estació de tren
-          stop: Parada de Ferrocarril
+          stop: Parada de trens
           subway: Metro
-          subway_entrance: Accés al Metro
-          switch: Punts de ferrocarril
+          subway_entrance: Accés al metro
+          switch: Canvi d'agulles
           tram: Tramvia
           tram_stop: Parada de tramvia
         shop:
-          alcohol: De llicència
+          alcohol: Licorista
           antiques: Antiquari
           art: Galeria d'Art
           bakery: Fleca
           beauty: Saló de bellesa
           beverages: Botiga de begudes
-          bicycle: Tenda de bicicletes
+          bicycle: Botiga de bicicletes
           bookmaker: Casa d'apostes
           books: Llibreria
           boutique: Boutique
           butcher: Carnisseria
           car: Venda de Cotxes
-          car_parts: Peces de cotxes
-          car_repair: Reparació d'automòbils
+          car_parts: Recanvis per a cotxes
+          car_repair: Taller mecànic
           carpet: Botiga de catifes
           charity: Botiga de caritat
           chemist: Farmàcia
@@ -1067,7 +1066,11 @@ ca:
       reports: Informes
       last_updated: Darrera actualització
       last_updated_time_html: <abbr title='%{title}'> %{time}</abbr>
+      last_updated_time_user_html: <abbr title='%{title}'>%{time}</abbr> per %{user}
       link_to_reports: Veure els informes
+      reports_count:
+        one: 1 Informe
+        other: '%{count} Informes'
       reported_item: Element denunciat
       states:
         ignored: Ignorat
@@ -1078,6 +1081,11 @@ ca:
       successful_update: El vostre informe s'ha actualitzat correctament
       provide_details: Proporcioneu els detalls demanats
     show:
+      title: '%{status} Incidència #%{issue_id}'
+      reports:
+        zero: Cap informe
+        one: 1 informe
+        other: '%{count} informes'
       report_created_at: Denunciat per primer cop a %{datetime}
       last_resolved_at: Resolt per darrer cop a %{datetime}
       last_updated_at: Actualitzat per darrer cop a %{datetime} per %{displayname}
@@ -2513,7 +2521,7 @@ ca:
       title: Revocació de bloc en %{block_on}
       heading: Revocació de bloc en %{block_on} %{block_by}
       time_future: Aquest bloc va a acabar en %{time}.
-      past: Aquest blocatge va acabar a %{time} i ara no es pot revocat.
+      past: Aquest blocatge va acabar a %{time} i ara no es pot revocar.
       confirm: Esteu segur que voleu revocar aquest bloc?
       revoke: Revoca!
       flash: Aquest bloc ha estat revocat.
@@ -2702,6 +2710,8 @@ ca:
         onramp_right_with_directions: Gireu a la dreta en la rampa cap a %{directions}
         onramp_right_with_name_directions: Gireu a la dreta en la rampa a %{name}
           cap a %{directions}
+        onramp_right_without_directions: Gireu a la dreta a la rampa
+        onramp_right: Gireu a la dreta a la rampa
         endofroad_right_without_exit: Al final de la carretera gireu a la dreta a
           %{name}
         merge_right_without_exit: Incorporeu-vos a la dreta a %{name}
@@ -2711,8 +2721,21 @@ ca:
         uturn_without_exit: Canvi de sentit a %{name}
         sharp_left_without_exit: Gira a l'esquerra a %{name}
         turn_left_without_exit: Gira a l'esquerra per %{name}
+        offramp_left: Agafeu la rampa de l'esquerra
+        offramp_left_with_exit: Agafeu la sortida %{exit} a l'esquerra
+        offramp_left_with_exit_name: Agafeu la sortida %{exit} a l'esquerra a %{name}
+        offramp_left_with_exit_directions: Agafeu la sortida %{exit} a l'esquerra
+          cap a %{directions}
+        offramp_left_with_exit_name_directions: Agafeu la sortida %{exit} a l'esquerra
+          a %{name} cap a %{directions}
         offramp_left_with_name: Agafeu el carril de l'esquerra a %{name}
+        offramp_left_with_directions: Agafeu la rampa de l'esquerra cap a %{directions}
+        offramp_left_with_name_directions: Agafeu la rampa de l'esquerra a %{name}
+          cap a %{directions}
         onramp_left_without_exit: Gireu a l'esquerra al carril a %{name}
+        onramp_left_with_directions: Gireu a l'esquerra en la rampa cap a %{directions}
+        onramp_left_with_name_directions: Gireu a l'esquerra en la rampa a %{name}
+          cap a %{directions}
         onramp_left_without_directions: Gireu a l'esquerra a la rampa
         onramp_left: Gireu a l'esquerra a la rampa
         endofroad_left_without_exit: Al final de la carretera gireu a l'esquerra a
index 4c2ae2d4fd97cdcde2fe3b9e6873eb4f6d5de11b..188469dd85c7216da0690888305a8bf7698e524d 100644 (file)
@@ -122,9 +122,9 @@ de:
       relation_member: Relations-Mitglied
       relation_tag: Relations-Attribut
       session: Sitzung
-      trace: Spur
-      tracepoint: Spurpunkt
-      tracetag: Spur-Attribut
+      trace: Track
+      tracepoint: Trackpunkt
+      tracetag: Track-Attribut
       user: Benutzer
       user_preference: Benutzereinstellung
       user_token: Benutzer-Token
@@ -343,6 +343,7 @@ de:
       wikidata_link: Das Objekt %{page} auf Wikidata
       wikipedia_link: Der Artikel zu %{page} in der Wikipedia
       telephone_link: '%{phone_number} anrufen'
+      colour_preview: Farbe %{colour_value} Vorschau
     note:
       title: 'Kartenfehler: %{id}'
       new_note: Neuer Kartenfehler
@@ -1987,7 +1988,7 @@ de:
       pending: WARTEND
       count_points:
         one: Ein Punkt
-        other: '%{count}Punkte'
+        other: '%{count} Punkte'
       more: Details
       trace_details: Details des Tracks anzeigen
       view_map: Karte anzeigen
index a85fc99203b55519b71c4b5f3c3d327124485753..eb5a56055e72d73cd4db771330cfa6029f41ba91 100644 (file)
@@ -27,6 +27,7 @@
 # Author: James
 # Author: Javiersanp
 # Author: Jelou
+# Author: Jlrb+
 # Author: Johnarupire
 # Author: Jynus
 # Author: KATRINE1992
diff --git a/config/locales/fit.yml b/config/locales/fit.yml
new file mode 100644 (file)
index 0000000..b76e7d0
--- /dev/null
@@ -0,0 +1,799 @@
+# Messages for Tornedalen Finnish (meänkieli)
+# Exported from translatewiki.net
+# Export driver: phpyaml
+# Author: Pyscowicz
+---
+fit:
+  time:
+    formats:
+      friendly: '%e. %B %Y klo %H.%M'
+      blog: '%e. %Ba %Y'
+  helpers:
+    submit:
+      diary_comment:
+        create: Säästä
+      diary_entry:
+        create: Anna ulos
+        update: Päivitä
+      issue_comment:
+        create: Lissää kommentti
+      message:
+        create: Lähätä
+      client_application:
+        update: Mookkaa
+      redaction:
+        create: Luo redaktio
+        update: Säästä redaktio
+      trace:
+        create: Lattaa ylös
+        update: Säästä muutokset
+      user_block:
+        create: Luo esto
+        update: Päivitä esto
+  activerecord:
+    errors:
+      messages:
+        invalid_email_address: '"%s" ei näytä olevan kelvollinen e-postiatressi'
+        email_address_not_routable: reittiohjeet eivät ole saatavilla
+    models:
+      acl: Pääsyoikeuslista
+      changeset: Muutoskokoelma
+      changeset_tag: Muutoskokoelman tagi
+      country: Maa
+      diary_comment: Päiväkirjakommentti
+      diary_entry: Päiväkirjamerkintä
+      friend: Ystävä
+      language: Kieli
+      message: Viesti
+      node: Piste
+      node_tag: Pisteen tagi
+      notifier: Ilmottaja
+      old_node: Vanha piste
+      old_node_tag: Vanha pisteen tagi
+      old_relation: Vanha relaatio
+      old_relation_member: Vanha relaation jäsen
+      relation: Relaatio
+      relation_member: Relaation jäsen
+      user: Käyttäjä
+      way: Viiva
+      way_node: Viivan piste
+      way_tag: Viivan tagi
+    attributes:
+      diary_comment:
+        body: Leipäteksti
+      diary_entry:
+        user: Käyttäjä
+        title: Aihe
+        latitude: Leveyspiiri
+        longitude: Pituuspiiri
+        language: Kieli
+      friend:
+        user: Käyttäjä
+        friend: Ystävä
+      trace:
+        user: Käyttäjä
+        visible: Näkyvissä
+        name: Nimi
+        size: Koko
+        latitude: Leveyspiiri
+        longitude: Pituuspiiri
+        public: Julkinen
+        description: Kuvvaus
+      message:
+        sender: Lähättäjä
+      user:
+        email: E-posti
+        display_name: Näyttönimi
+        description: Kuvvaus
+        languages: Kielet
+        pass_crypt: Salasana
+  datetime:
+    distance_in_words_ago:
+      about_x_hours:
+        one: noin 1 tiima sitten
+        other: noin %{count} tiimaa sitten
+      about_x_months:
+        one: noin 1 kuukausi sitten
+        other: noin %{count} kuukautta sitten
+      about_x_years:
+        one: noin 1 vuosi sitten
+        other: noin %{count} vuotta sitten
+      almost_x_years:
+        one: 1 vuosi sitten
+        other: lähes %{count} vuotta sitten
+      half_a_minute: puoli minuuttia sitten
+      less_than_x_seconds:
+        one: vähemmän kuin 1 sekuntia sitten
+        other: vähemmän kuin %{count} sekuntia sitten
+      less_than_x_minutes:
+        one: vähemmän kuin minuutti sitten
+        other: vähemmän kuin %{count} minuuttia sitten
+      over_x_years:
+        one: yli 1 vuosi sitten
+        other: yli %{count} vuotta sitten
+      x_seconds:
+        one: 1 sekunti sitten
+        other: '%{count} sekuntia sitten'
+      x_minutes:
+        one: 1 minuutti sitten
+        other: '%{count} minuuttia sitten'
+      x_days:
+        one: 1 päivä sitten
+        other: '%{count} päivää sitten'
+      x_months:
+        one: 1 kuukausi sitten
+        other: '%{count} kuukautta sitten'
+      x_years:
+        one: 1 vuosi sitten
+        other: '%{count} vuotta sitten'
+  editor:
+    default: Oletus (tällä hetkellä %{name})
+    potlatch:
+      name: Potlatch 1
+      description: Potlatch 1 (selainkäyttöinen mookkain)
+    id:
+      name: iD
+      description: iD (selainkäyttöinen mookkain)
+    potlatch2:
+      name: Potlatch 2
+      description: Potlatch 2 (selainkäyttöinen mookkain)
+    remote:
+      description: Kauko-ohjaus (JOSM eli Merkaartor)
+  api:
+    notes:
+      comment:
+        opened_at_html: Luotu %{when}
+        opened_at_by_html: '%{user} luonut %{when}'
+        commented_at_html: Päivitetty %{when}
+        commented_at_by_html: '%{user} päivittänyt %{when}'
+        closed_at_html: Ratkaistu %{when}
+        closed_at_by_html: '%{user} ratkaissut %{when}'
+        reopened_at_html: Avattu uuesti %{when}
+        reopened_at_by_html: '%{user} aktivoinut uuesti %{when}'
+      rss:
+        title: OpenStreetMapin karttailmoitukset
+        commented: uusi kommentti (lähelä kohdetta %{place})
+      entry:
+        comment: Kommentti
+  browse:
+    created: Luotu
+    closed: Ratkaistu
+    created_html: Lähättänyt käyttäjä <abbr title='%{title}'>%{time}</abbr>
+    closed_html: Ratkaistu <abbr title='%{title}'>%{time}</abbr>
+    created_by_html: Lähättänyt käyttäjä %{user} <abbr title='%{title}'>%{time}</abbr>
+    deleted_by_html: Otettu poies <abbr title='%{title}'>%{time}</abbr> käyttäjän
+      %{user} toimesta
+    edited_by_html: Mookannut viimeksi käyttäjä %{user} <abbr title='%{title}'>%{time}</abbr>
+    closed_by_html: Suljettu <abbr title='%{title}'>%{time}</abbr> käyttäjän %{user}
+      toimesta
+    version: Versuuni
+    in_changeset: Muutoskokoelma
+    anonymous: tuntematon
+    no_comment: (ei kommenttia)
+    part_of: Osana seuraavia
+    download_xml: Lattaa XML-fiilinä
+    view_history: Näytä histuuria
+    view_details: Näytä detaljit
+    location: 'Sijainti:'
+    changeset:
+      title: 'Muutoskokoelma: %{id}'
+      belongs_to: Lähättäjä
+      node: Pisteet (%{count})
+      node_paginated: Pisteet (%{x}-%{y} / %{count})
+      way: Reitit (%{count})
+      way_paginated: Reitit (%{x}-%{y} of %{count})
+      relation: Relaatiot (%{count})
+      relation_paginated: Relaatiot (%{x}-%{y} / %{count})
+      comment: Kommentit (%{count})
+      hidden_commented_by: Käyttäjän %{user} piilotettu kommentti <abbr title='%{exact_time}'>%{when}</abbr>
+      commented_by: Kommentti käyttäjältä %{user} <abbr title='%{exact_time}'>%{when}</abbr>
+      changesetxml: Muutoskokoelman XML
+      osmchangexml: osmChange XML
+      feed:
+        title: Muutoskokoelma %{id}
+        title_comment: Muutoskokoelma %{id} - %{comment}
+      join_discussion: Lokkaa sisäle, jos haluat osallistua keskusteluun
+      discussion: Keskustelu
+      still_open: Muutoskokoelma on edelleen avoimena - keskustelu avathaan heti kun
+        muutoskokoelma on suljettu.
+    node:
+      title: 'Piste: %{name}'
+      history_title: Pisteen %{name} histuuria
+    way:
+      title: 'Viiva: %{name}'
+      history_title: Viivan %{name} histuuria
+      nodes: Pisteet
+      also_part_of:
+        one: osana viivaa %{related_ways}
+        other: osana viivoja %{related_ways}
+    relation:
+      title: 'Relaatio: %{name}'
+      history_title: Relaation %{name} histuuria
+      members: Jäsenet
+    relation_member:
+      entry_role: '%{type} %{name} roolissa %{role}'
+      type:
+        node: Piste
+        way: Polku
+        relation: Relaatio
+    containing_relation:
+      entry: Relaatio %{relation_name}
+      entry_role: Relaatio %{relation_name} (rooli %{relation_role})
+    not_found:
+      type:
+        node: Pistettä
+        way: Polkua
+        relation: Relaatiota
+        changeset: muutoskokoelma
+        note: merkintä
+    timeout:
+      type:
+        node: piste
+        way: polku
+        relation: relaatio
+        changeset: muutoskokoelma
+        note: merkintä
+    redacted:
+      redaction: Redaktio %{id}
+      type:
+        node: piste
+        way: polku
+        relation: relaatio
+    start_rjs:
+      feature_warning: Ladathaan %{num_features} ominaisuutta, mikä saatta hidasthaa
+        eli kaathaa verkkoselaimen. Haluakko varmasti näythää nämä tiot?
+      load_data: Lattaa detaljit
+      loading: Ladathaan...
+    tag_details:
+      tags: Ominaisuusdetaljit
+      wiki_link:
+        key: Wikisivu avaimelle %{key}
+        tag: Wikisivu tietueelle %{key}=%{value}
+      wikidata_link: '%{page} Wikitaattassa'
+      wikipedia_link: Artikkeli %{page} Wikipeetiassa
+      telephone_link: Soita %{phone_number}
+      colour_preview: Värin %{colour_value} etukattelu
+    note:
+      title: 'Karttailmoitus: %{id}'
+      new_note: Uusi karttailmoitus
+      description: Kuvvaus
+      open_title: 'Ratkaisematon karttailmotus #%{note_name}'
+      closed_title: 'Ratkaistu karttailmotus #%{note_name}'
+      hidden_title: 'Piilotettu karttailmotus #%{note_name}'
+      open_by: Lähättänyt käyttäjä %{user} <abbr title='%{exact_time}'>%{when}</abbr>
+      open_by_anonymous: Luonut tuntematon käyttäjä <abbr title='%{exact_time}'>%{when}</abbr>
+      commented_by: Kommentti käyttäjältä %{user} <abbr title='%{exact_time}'>%{when}</abbr>
+      commented_by_anonymous: Kommentti tuntemattomalta käyttäjältä <abbr title='%{exact_time}'>%{when}</abbr>
+      closed_by: Ratkaissut käyttäjä %{user} <abbr title='%{exact_time}'>%{when}</abbr>
+      closed_by_anonymous: Ratkaissut tuntematon käyttäjä <abbr title='%{exact_time}'>%{when}</abbr>
+      report: Ilmianna karttailmotus
+    query:
+      title: Ominaisuuskysely
+      introduction: Näytä luettelo lähistön karttakohteista knapauttamalla karthaa.
+      nearby: Lähistön karttakohteet
+      enclosing: Ympäröivät karttakohteet
+  changesets:
+    changeset_paging_nav:
+      showing_page: Sivu %{page}
+      next: Seuraava »
+      previous: « Eelinen
+    changeset:
+      anonymous: Tuntematon
+      no_edits: (ei mookkauksia)
+      view_changeset_details: Näytä muutoskokoelman tarkemmat detaljit
+    changesets:
+      id: Tunniste
+      saved_at: Säästetty
+      user: Käyttäjä
+      comment: Kommentti
+      area: Alue
+    index:
+      title: Muutoskokoelmat
+      title_user: Käyttäjän %{user} muutoskokoelmat
+      title_friend: Minun ystävien muutoskokoelmat
+      title_nearby: Lähellä olevien käyttäjien muutoskokoelmat
+      empty: Muutosryhmiä ei löytynyt.
+      empty_area: Ei muutosryhmiä tällä alueella.
+      empty_user: Tämä käyttäjä ei ole tehnyt muutosryhmiä.
+      no_more: Ei löytynyt enempää muutosryhmiä.
+      no_more_area: Ei muita muutosryhmiä tällä alueella.
+      no_more_user: Ei muita muutosryhmiä tällä käyttäjällä.
+      load_more: Lattaa lissää
+    timeout:
+      sorry: Valitettavasti pyytämäsi muutoskokoelmien listan hakeminen kesti liian
+        kauan.
+  changeset_comments:
+    comment:
+      comment: 'Käyttäjä %{author} kommentoi muutoskokoelmaa #%{changeset_id}'
+      commented_at_by_html: '%{user} päivittänyt %{when}'
+    comments:
+      comment: 'Uusi kommentti käyttäjän %{author} muutoskokoelmassa #%{changeset_id}'
+    index:
+      title_all: Keskustelu OpenStreetMapin muutoskokoelmasta
+      title_particular: 'OpenStreetMap muutoskokoelma #%{changeset_id} keskustelu'
+  diary_entries:
+    new:
+      title: Uusi päiväkirjamerkintä
+    form:
+      subject: 'Aihe:'
+      body: 'Teksti:'
+      language: 'Kieli:'
+      location: 'Paikka:'
+      latitude: 'Leveyspiiri:'
+      longitude: 'Pituuspiiri:'
+      use_map_link: valitte kartalta
+    index:
+      title: Käyttäjien päiväkirjamerkinnät
+      title_friends: Ystävien päiväkirjat
+      title_nearby: Lähellä olevien käyttäjien päiväkirjat
+      user_title: Käyttäjän %{user} päiväkirja
+      in_language_title: Päiväkirjamerkinnät kielellä %{language}
+      new: Lissää päiväkirjamerkintä
+      new_title: Kirjota uusi merkintä minun käyttäjän päiväkirjaan
+      no_entries: Päiväkirjassa ei ole merkintöjä.
+      recent_entries: Uusimmat päiväkirjamerkinnät
+      older_entries: Vanhempia...
+      newer_entries: Uuempia...
+    edit:
+      title: Mookkaa päiväkirjamerkintää
+      marker_text: Päiväkirjamerkinnän sijainti
+    show:
+      title: Käyttäjän %{user} päiväkirja | %{title}
+      user_title: Käyttäjän %{user} päiväkirja
+      leave_a_comment: Jätä kommentti
+      login_to_leave_a_comment: '%{login_link} kommentoidaksesi'
+      login: Lokkaa sisäle
+    no_such_entry:
+      title: Päiväkirjamerkintää ei ole
+    diary_entry:
+      posted_by: Käyttäjä %{link_user} kirjotti tämän %{created} kielellä %{language_link}
+      comment_link: Kommentoi tätä kirjoitusta
+      reply_link: Vastaa tähän kirjoitukseen viestillä
+      comment_count:
+        one: 1 kommentti
+        zero: Ei kommentteja
+        other: '%{count} kommenttia'
+      edit_link: Mookkaa päiväkirjamerkintää
+      hide_link: Piilota tämä merkintä
+      unhide_link: Ota poies merkinnän piilottaminen
+      confirm: Vahvista
+      report: Ilmianna julkaisu
+    diary_comment:
+      comment_from: Kommentti käyttäjältä %{link_user} %{comment_created_at}
+      hide_link: Piilota tämä kommentti
+      unhide_link: Ota poies kommentin piilottaminen
+      confirm: Vahvista
+      report: Ilmianna kommentti
+    location:
+      location: 'Paikka:'
+      view: Näytä
+      edit: Mookkaa
+    feed:
+      user:
+        title: Käyttäjän %{user} OpenStreetMap-päiväkirjamerkinnät
+        description: Tuoreimmat OpenStreetMapin päiväkirjamerkinnät käyttäjältä %{user}
+      language:
+        title: OpenStreetMap-päiväkirjamerkinnät kielellä %{language_name}
+        description: Viimisimmät päiväkirjamerkinnät OpenStreetMapin käyttäjiltä kielellä
+          %{language_name}
+      all:
+        title: OpenStreetMap-päiväkirjamerkinnät
+        description: Verekset OpenStreetMapin käyttäjien päiväkirjamerkinnät
+    comments:
+      has_commented_on: '%{display_name} on kommentoinut seuraavia päiväkirjamerkintöjä'
+      post: Kommentti
+      when: Taatumi
+      comment: Kommentti
+      newer_comments: Uuemmat kommentit
+      older_comments: Vanhemmat kommentit
+  geocoder:
+    search:
+      title:
+        latlon: <a href="https://openstreetmap.org/">Sisäiset</a> resyltaatit
+        ca_postcode: Resyltaatit palvelusta <a href="https://geocoder.ca/">Geocoder.CA</a>
+        osm_nominatim: Resyltaatit <a href="https://nominatim.openstreetmap.org/">OpenStreetMap
+          Nominatimista</a>
+        geonames: Resyltaatit palvelusta <a href="http://www.geonames.org/">GeoNames</a>
+        osm_nominatim_reverse: Hakuresyltaatit <a href="https://nominatim.openstreetmap.org/">OpenStreetMap
+          Nominatimista</a>
+        geonames_reverse: Hakuresyltaatit <a href="http://www.geonames.org/">GeoNamesista</a>
+    search_osm_nominatim:
+      prefix:
+        amenity:
+          cafe: Kahvila
+          hospital: Siukhuusi
+          library: Pipluteekki
+          police: Puliisi
+          post_box: Kirjeloota
+          prison: Fankila
+          restaurant: Restayrangi
+          retirement_home: Vanhuuskoti
+          sauna: Sauna
+          school: Skoulu
+          toilets: Tualetit
+        leisure:
+          sauna: Sauna
+        office:
+          company: Fööretaaki
+        place:
+          country: Maa
+          farm: Maatila
+        tourism:
+          museum: Myseymmi
+          zoo: Elläintarha
+  issues:
+    index:
+      search: Hakea
+      last_updated_time_html: <abbr title='%{title}'>%{time}</abbr>
+      states:
+        open: Avaa
+        resolved: Ratkaistu
+    show:
+      report_created_at: Ilmotettu ensimmäisen kerran %{datetime}
+      last_resolved_at: Ratkastu %{datetime}
+      last_updated_at: Viimeisin käsittelijä %{displayname} %{datetime}
+      resolve: Ratkase
+      ignore: Merkitte aiheettomaksi
+      reopen: Avaa uuelleen
+      reports_of_this_issue: Ilmianna tapahtuma
+      read_reports: Lue ilmiantoja
+      new_reports: Uuet ilmiannot
+      other_issues_against_this_user: Muut tähän käyttäjään kohistetut ilmiannot
+      no_other_issues: Ei muita tähän käyttäjään kohistuvia ilmiantoja.
+      comments_on_this_issue: Tapauksen kommentit
+    comments:
+      created_at: '%{datetime}'
+    reports:
+      updated_at: '%{datetime}'
+      reported_by_html: Käyttäjä %{user} ilmiantanut merkinnällä %{category}
+  reports:
+    new:
+      categories:
+        diary_entry:
+          other_label: Muu
+        diary_comment:
+          other_label: Muu
+        user:
+          other_label: Muu
+        note:
+          other_label: Muu
+  layouts:
+    logo:
+      alt_text: OpenStreetMap-logo
+    home: Siiry kotopaikhaan
+    logout: Lokkaa ulos
+    log_in: Lokkaa sisäle
+    log_in_tooltip: Lokkaa sisäle konttullasi
+    sign_up: Luo konttu
+    start_mapping: Liity mukhaan
+    sign_up_tooltip: Luo konttu mookataksesi
+    edit: Mookkaa
+    history: Histuuria
+    export: Eksporteeraus
+    issues: Ilmiannot
+    data: Detaljit
+    export_data: Exporteeraa tiedostona
+    gps_traces: GPS-jäljet
+    gps_traces_tooltip: Hallitse GPS-jälkiä
+    user_diaries: Päiväkirjamerkinnät
+    user_diaries_tooltip: Näytä käyttäjän päiväkirjat
+    edit_with: 'Mookkaa: %{editor}'
+    tag_line: Vapaa ja avoin maailmankartta
+    intro_header: Tervetuloa OpenStreetMaphiin!
+    intro_2_create_account: luomalla ensin käyttäjäkonttun
+    tou: Käyttöehdot
+    help: Apua
+    about: Tästä
+    community: Föreeninki
+    learn_more: Lue lissää
+    more: Lissää
+  notifier:
+    diary_comment_notification:
+      hi: Hei %{to_user},
+    message_notification:
+      hi: Hei %{to_user},
+    friend_notification:
+      hi: Hei %{to_user},
+    gpx_notification:
+      greeting: Hei!
+      your_gpx_file: Ylöslattaamasi GPX-fiili
+      with_description: ', jonka kuvvaus on'
+      failure:
+        failed_to_import: 'epäonnistui importeerata. Täsä virhe:'
+        more_info_1: Lissää tietoja GPX-importeerausongelmista ja miten niitä voi
+          välttää
+        more_info_2: 'ne löytyvät atressista:'
+      success:
+        subject: '[OpenStreetMap] GPX-importeeraus onnistui'
+    signup_confirm:
+      subject: '[OpenStreetMap] Tervetuloa OpenStreetMaphiin'
+      greeting: Hei!
+      created: Joku (toivottavasti sinä) on luonut käyttäjäkonttun atressissa %{site_url}.
+      confirm: 'Jos olet luonut tämän käyttäjäkonttun, vahvista se knapauttamalla
+        tätä länkkiä:'
+      welcome: Käyttäjäkottun vahvistamisen jälkheen haluaisimme kertoa joitain hyödyllisiä
+        asioita, jotta pääset alkuun.
+    email_confirm:
+      subject: '[OpenStreetMap] Vahvista e-postiatressi'
+    email_confirm_plain:
+      greeting: Hei,
+      hopefully_you: Joku (toivottavasti sinä) haluaa vaihtaa e-postiatressin palvelimella
+        %{server_url} atressiksi %{new_address}
+      click_the_link: Jos tämä olet sinä, knapauta länkkiä alla vahvistaaksesi muutoksen.
+    email_confirm_html:
+      greeting: Hei,
+      hopefully_you: Joku (toivottavasti sinä) tahtoo muuttaa e-postiatressinsa sivula
+        %{server_url} atressiksi %{new_address}.
+      click_the_link: Jos tämä olet sinä, knapauta länkkiä alla vahvistaaksesi muutoksen.
+    lost_password_plain:
+      greeting: Hei,
+    lost_password_html:
+      greeting: Hei,
+    note_comment_notification:
+      anonymous: Tuntematon käyttäjä
+      greeting: Hei,
+    changeset_comment_notification:
+      hi: Hei %{to_user},
+      greeting: Hei,
+  messages:
+    inbox:
+      my_inbox: Saapuneet
+      outbox: Lähetetyt
+      from: Lähättäjä
+      subject: Otsikko
+      date: Taatumi
+    message_summary:
+      unread_button: Markeeraa lukemattomaksi
+      read_button: Markeeraa luetuksi
+      reply_button: Vastaa
+      destroy_button: Ota poies
+    new:
+      title: Lähätä viesti
+      send_message_to: Lähätä viesti käyttäjälle %{name}
+      subject: Otsikko
+      body: Sisältö
+      back_to_inbox: Takashiin saapuneisiin
+    create:
+      message_sent: Viesti on lähätetty.
+    outbox:
+      my_inbox: Minun %{inbox_link}
+      date: Taatumi
+    show:
+      date: Taatumi
+      unread_button: Markeeraa lukemattomaksi
+      destroy_button: Ota poies
+      back: Takashiin
+    sent_message_summary:
+      destroy_button: Ota poies
+    mark:
+      as_read: Viesti markeerattu luetuksi.
+      as_unread: Viesti markeerattu lukemattomaksi.
+    destroy:
+      destroyed: Viesti otettu poies
+  site:
+    about:
+      next: Seuraava
+      open_data_title: Avoin taatta
+    copyright:
+      foreign:
+        title: Tietoja tästä käänöksestä
+      native:
+        title: Tästä sivusta
+        native_link: meänkielinen versuuni
+      legal_babble:
+        title_html: Tekijänoikeus ja lisensi
+        contributors_title_html: Meän tekijät
+    index:
+      permalink: Ikunen länkki
+      shortlink: Lyhylänkki
+    edit:
+      user_page_link: käyttäjätiot
+    export:
+      title: Alueen eksporteeraus
+      area_to_export: Eksporteerattava alue
+      format_to_export: Eksporteerausmuoto
+      osm_xml_data: OpenStreetMap XML-taatta
+      licence: Lisensi
+      options: Inställninkit
+      format: 'Fiilimuoto:'
+      output: Tulos
+      export_button: Eksporteeraa
+    fixthemap:
+      how_to_help:
+        join_the_community:
+          title: Liity föreeninkhiin
+    help:
+      welcome:
+        url: /welcome
+        title: Tervetuloa OpenStreetMaphiin
+      help:
+        url: https://help.openstreetmap.org/
+        title: Apufoorumi
+      forums:
+        title: Foorumi
+      irc:
+        title: IRC
+      wiki:
+        title: OpenStreetMap wiki
+    sidebar:
+      search_results: Hakuresyltaatit
+      close: Sulje
+    search:
+      search: Haku
+      submit_text: Hae
+    richtext_area:
+      edit: Mookkaa
+      preview: Etukattelu
+    markdown_help:
+      link: Länkki
+      text: Teksti
+      image: Kuva
+      url: Atressi
+    welcome:
+      title: Tervetuloa!
+      add_a_note:
+        title: Eikö mookkaaminen innosta? Ilmoita karttavirheistä!
+  traces:
+    new:
+      upload_trace: Ylöslattaa GPS-jälki
+      upload_gpx: 'Ylöslattaa GPX-fiili:'
+      description: 'Kuvvaus:'
+      help: Apua
+    edit:
+      title: Mookataan jälkeä %{name}
+      filename: 'Fiilinimi:'
+      uploaded_at: 'Ylösladattu:'
+      edit: mookkaa
+      description: 'Kuvvaus:'
+    show:
+      filename: 'Fiilinimi:'
+      download: lattaa
+      uploaded: 'Ylösladattu:'
+      map: kartalla
+      edit: mookkaa
+      owner: 'Käyttäjä:'
+      description: 'Kuvvaus:'
+      edit_trace: Mookkaa jäljen tietoja
+    trace:
+      edit: mookkaa
+      edit_map: Mookkaa karttaa
+  oauth_clients:
+    edit:
+      title: Mookkaa sovellustasi
+    show:
+      edit: Mookkaa detaljeja
+      confirm: Oletko varma?
+    form:
+      allow_read_prefs: käyttäjäinställninkien näkeminen.
+      allow_write_prefs: käyttäjäinställninkien muuttaminen.
+  users:
+    login:
+      title: Lokkaussivu
+      heading: Lokkaa
+      email or username: 'E-postiatressi tai käyttäjänimi:'
+      password: 'Salasana:'
+      lost password link: Unhouttanu sinun salasanan?
+      login_button: Lokkaa sisäle
+      register now: Luo konttu nyt
+      auth_providers:
+        google:
+          title: Lokkaa sisäle Googlella
+        facebook:
+          title: Lokkaa sisäle Feispukilla
+        wikipedia:
+          title: Lokkaa sisäle Wikipeetialla
+    logout:
+      title: Lokkaa ulos
+      heading: Lokkaa ulos OpenStreetMapista
+      logout_button: Lokkaa ulos
+    lost_password:
+      email address: 'E-postiatressi:'
+    reset_password:
+      password: 'Salasana:'
+      confirm password: 'Vahvista salasana:'
+    new:
+      title: Luo konttu
+      about:
+        header: Mookkaa vapaasti
+      email address: 'E-postiatressi:'
+      confirm email address: 'E-postiatressi uuesti:'
+      password: 'Salasana:'
+      confirm password: 'Salasana uuesti:'
+      continue: Luo konttu
+    terms:
+      continue: Jatka
+      legale_names:
+        france: Franska
+        italy: Italia
+    no_such_user:
+      deleted: otettu poies
+    show:
+      my edits: Minun mookkaukset
+      my traces: Minun jäljet
+      my notes: Minun karttailmoitukset
+      my messages: Minun viestit
+      my profile: Minun profiili
+      my settings: Minun inställninkit
+      my comments: Minun kommentit
+      oauth settings: oauth-inställninkit
+      send message: Lähätä viesti
+      edits: Mookkaukset
+      add as friend: Lissää ystäväksi
+      latest edit: 'Viimeisin muutos (%{ago}):'
+      email address: 'E-postiatressi:'
+      settings_link_text: inställninkit
+      my friends: Minun ystävät
+    popup:
+      your location: Sinun paikka
+      friend: Kaveri
+    account:
+      title: Mookkaa konttua
+      my settings: Minun inställninkit
+      current email address: 'Nykynen e-postiatressi:'
+      new email address: 'Uusi e-postiatressi:'
+      email never displayed publicly: (ei näy muille)
+      public editing:
+        heading: 'Mookkaukset julkisia:'
+        enabled: Joo. Karttatietojen mookkaus sallittu.
+        disabled link text: miksi en voi mookata?
+      public editing note:
+        heading: Julkinen mookkaus
+      preferred editor: 'Ensisijainen mookkausohjelma:'
+      new image: Lissää kuva
+      delete image: Ota poies nykynen kuva
+      home location: 'Kotopaikka:'
+      no home location: Kotopaikkaa ei ole vielä määritetty.
+      save changes button: Säästä muutokset
+      make edits public button: Tee mookkauksistani julkisia
+    confirm:
+      heading: Tarkista sinun e-posti!
+    go_public:
+      flash success: Kaikki tekemäsi mookkaukset ovat nyt julkisia.
+    make_friend:
+      button: Lissää ystäväksi
+      success: '%{name} on nyt sinun ystävä!'
+      failed: Käyttäjää %{name} ei voitu lisätä sinun ystävälistaan.
+      already_a_friend: '%{name} on jo sinun ystävä.'
+    remove_friend:
+      heading: Poistetaanko ystävä %{user}?
+      button: Poista ystävä
+      success: '%{name} otettiin poies sinun ystävistä.'
+      not_a_friend: '%{name} ei ole enää sinun ystävä.'
+    auth_failure:
+      no_authorization_code: Ei käyttöoikeuskootia
+  user_blocks:
+    not_found:
+      back: Takashiin hakemistoon
+    show:
+      edit: Mookkaa
+    block:
+      edit: Mookkaa
+    blocks:
+      next: Seuraava »
+      previous: « Eelinen
+  notes:
+    mine:
+      description: Kuvvaus
+  javascripts:
+    close: Sulje
+    share:
+      cancel: Lopeta
+      link: Länkki eli HTML-kooti
+      long_link: Länkki
+      short_link: Lyhy länkki
+      download: Lattaa
+      short_url: Lyhy atressi
+    site:
+      edit_tooltip: Mookkaa karttaa
+      edit_disabled_tooltip: Lähennä karttaa mookataksesi
+    changesets:
+      show:
+        comment: Kommentoi
+    context:
+      show_address: Näytä atressi
+  redactions:
+    edit:
+      heading: Mookkaa laitosta
+    show:
+      edit: Mookkaa tätä laitosta
+...
index e6ca77bc70e942c8e1877c1dae1c21c7aee30c69..3b538b8a253a9f210d755307724de24021849674 100644 (file)
@@ -97,7 +97,7 @@ fr:
         update: Enregistrer les modifications
       user_block:
         create: Créer un blocage
-        update: Modifier le blocage
+        update: Mettre à jpur le blocage
   activerecord:
     errors:
       messages:
index 963ba35c3a0c2f5cb130e400abb8b63ec692bde9..56e793f40c2d5a12f75bc848d3fab9cb5f4b968d 100644 (file)
@@ -1862,7 +1862,7 @@ gl:
       identifiable: Identificábel (amosado na listaxe de pistas e coma identificábel;
         puntos ordeados ca data e hora)
     new:
-      upload_trace: Subir traza GPS
+      upload_trace: Subir pista GPS
       upload_gpx: 'Subir un ficheiro GPX:'
       description: 'Descrición:'
       tags: 'Etiquetas:'
@@ -2628,7 +2628,7 @@ gl:
         header: Capas do mapa
         notes: Notas do mapa
         data: Datos do mapa
-        gps: Trazas GPS públicas
+        gps: Pistas GPS públicas
         overlays: Activar as sobreposicións para solucionar os problemas no mapa
         title: Capas
       copyright: © <a href='%{copyright_url}'>Contribuíntes do OpenStreetMap</a>
index 5813b94dde3b9dc7a31a74138deaabdb4af8b28a..930026422047f2f41da7618d072ebdf0cedce475 100644 (file)
@@ -1299,10 +1299,10 @@ he:
           שלך'
         subject_other: '[OpenStreetMap] המשתמש %{commenter} העיר על אחד מערכות השינויים
           שהתעניית בהן'
-        your_changeset: ×\94×\9eשת×\9eש %{commenter} ×\94×¢×\99ר ×¢×\9c ×\90×\97×\93 ×\9eער×\9b×\95ת ×\94ש×\99× ×\95×\99×\99×\9d ×©×\9c×\9a שיצרת
+        your_changeset: ×§×\99×\91×\9cת ×\94ער×\94 ×\9e×\94×\9eשת×\9eש %{commenter} ×\90×\97×\93 ×\9eער×\9b×\95ת ×\94ש×\99× ×\95×\99×\99×\9d שיצרת
           ב־%{time}
-        commented_changeset: ×\94×\9eשת×\9eש %{commenter} ×\94×¢×\99ר ×¢×\9c ×\90×\97×\93 ×\9eער×\9b×\95ת ×\94ש×\99× ×\95×\99×\99×\9d ×\91×\9eפ×\94
-          ×©×¢×§×\91ת ×\90×\97ר×\99×\94 ×©× ×\95צר×\94 ×¢×\9cÖ¾×\99×\93×\99 %{changeset_author} ×\91Ö¾%{time}
+        commented_changeset: ×§×\99×\91×\9cת ×\94ער×\94 ×\9e×\94×\9eשת×\9eש %{commenter} ×\91Ö¾%{time} ×¢×\9c ×\90×\97×\93 ×\9eער×\9b×\95ת
+          ×\94ש×\99× ×\95×\99×\99×\9d ×\91×\9eפ×\94 ×©×¢×§×\91ת ×\90×\97ר×\99×\94 ×\95× ×\95צר×\94 ×¢×\9cÖ¾×\99×\93×\99 %{changeset_author}
         partial_changeset_with_comment: עם ההערה '%{changeset_comment}'
         partial_changeset_without_comment: ללא הערה
       details: פרטים נוספים על ערכת השינויים אפשר למצוא בכתובת %{url}
@@ -1890,7 +1890,9 @@ he:
       newer: מסלולים חדשים יותר
     trace:
       pending: בהמתנה
-      count_points: '%{count} נקודות'
+      count_points:
+        one: נקודה
+        other: '%{count} נקודות'
       more: עוד
       trace_details: הצגת פרטי מסלול
       view_map: הצגת מפה
index a22cd73d63912a72a8aca8389338ffe04c7dc308..5174af69ad954a11cf2dfb4be3aa7df67b52f404 100644 (file)
@@ -30,6 +30,8 @@ lv:
         create: Saglabāt
       diary_entry:
         create: Publicēt
+      issue_comment:
+        create: Pievienot komentāru
       message:
         create: Sūtīt
       client_application:
@@ -45,6 +47,9 @@ lv:
         create: Veidot liegumu
         update: Atjaunot bloku
   activerecord:
+    errors:
+      messages:
+        email_address_not_routable: nav maršrutējams
     models:
       acl: Piekļuves vadības saraksts
       changeset: Izmaiņu kopa
index f13d37b6fc82b00adbd65f9cbcde304f29c20ce8..b525a170ca986508512e9fc4b71df2f9ed569846 100644 (file)
@@ -1087,7 +1087,7 @@ pl:
         towns: Miasta
         places: Miejsca
     results:
-      no_results: Nie odnaleziono wyników
+      no_results: Nic nie znaleziono
       more_results: Więcej wyników
   issues:
     index:
@@ -1456,11 +1456,11 @@ pl:
       community_driven_title: Zarządzany przez społeczność
       community_driven_html: |-
         Społeczność OpenStreetMap jest różnorodna, zaangażowana i każdego dnia coraz większa. Wśród edytujących mapę są amatorscy kartografowie, specjaliści GIS, inżynierowie odpowiadający za pracę serwerów OSM, osoby tworzące mapy obszarów dotkniętych skutkami klęski żywiołowej dla potrzeb służb ratunkowych oraz wielu innych ludzi.
-         Aby dowiedzieć się więcej na temat wspólnoty, odwiedź
+        Aby dowiedzieć się więcej na temat wspólnoty, odwiedź
         <a href='https://blog.openstreetmap.org'>Blog OpenStreetMap</a>,
         <a href='%{diary_path}'>blogi użytkowników</a>,
         <a href='https://blogs.openstreetmap.org/'>blogi społeczności</a> oraz
-        <a href='https://openstreetmap.org.pl'>stronę OSM Polska</a>.
+        <a href='http://openstreetmap.org.pl'>stronę OSM Polska</a>.
       open_data_title: Otwarte dane
       open_data_html: 'OpenStreetMap to <i>otwarte dane</i>: możesz używać ich, jak
         tylko chcesz pod warunkiem, że dodasz, że pochodzą one z  OpenStreetMap i
index e2ee7aba0b5486e46d41e5b0836a5a2882990f94..63da09a85df60ad9c8f62519e4aec3b39a050fbd 100644 (file)
@@ -29,6 +29,7 @@
 # Author: Per
 # Author: Pladask
 # Author: Poxnar
+# Author: Pyscowicz
 # Author: Rockyfelle
 # Author: Ruila
 # Author: Sannab
@@ -545,9 +546,7 @@ sv:
           ice_cream: Glass
           kindergarten: Dagis
           library: Bibliotek
-          marketplace: |2-
-
-            Marknad
+          marketplace: Marknad
           monastery: Kloster
           motorcycle_parking: Motorcykelparkering
           nightclub: Nattklubb
index 002ee58ea3347c1b730cbe8e0792b2de6f6d2d15..58c05da171e3c2628179d9ab543d7b3d42553306 100644 (file)
@@ -62,11 +62,6 @@ OpenStreetMap::Application.routes.draw do
 
     get "changes" => "api/changes#index"
 
-    get "search" => "api/search#search_all", :as => "api_search"
-    get "ways/search" => "api/search#search_ways"
-    get "relations/search" => "api/search#search_relations"
-    get "nodes/search" => "api/search#search_nodes"
-
     get "user/:id" => "api/users#show", :id => /\d+/
     get "user/details" => "api/users#details"
     get "user/gpx_files" => "api/users#gpx_files"
diff --git a/test/controllers/api/search_controller_test.rb b/test/controllers/api/search_controller_test.rb
deleted file mode 100644 (file)
index e11a3c7..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-require "test_helper"
-
-module Api
-  class SearchControllerTest < ActionController::TestCase
-    ##
-    # test all routes which lead to this controller
-    def test_routes
-      assert_routing(
-        { :path => "/api/0.6/search", :method => :get },
-        { :controller => "api/search", :action => "search_all" }
-      )
-      assert_routing(
-        { :path => "/api/0.6/nodes/search", :method => :get },
-        { :controller => "api/search", :action => "search_nodes" }
-      )
-      assert_routing(
-        { :path => "/api/0.6/ways/search", :method => :get },
-        { :controller => "api/search", :action => "search_ways" }
-      )
-      assert_routing(
-        { :path => "/api/0.6/relations/search", :method => :get },
-        { :controller => "api/search", :action => "search_relations" }
-      )
-    end
-
-    ##
-    # test searching nodes
-    def test_search_nodes
-      get :search_nodes, :params => { :type => "test" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-
-      get :search_nodes, :params => { :type => "test", :value => "yes" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-
-      get :search_nodes, :params => { :name => "Test Node" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-    end
-
-    ##
-    # test searching ways
-    def test_search_ways
-      first_way = create(:way_with_nodes, :nodes_count => 2)
-      deleted_way = create(:way_with_nodes, :deleted, :nodes_count => 2)
-      third_way = create(:way_with_nodes, :nodes_count => 2)
-
-      [first_way, deleted_way, third_way].each do |way|
-        create(:way_tag, :way => way, :k => "test", :v => "yes")
-      end
-      create(:way_tag, :way => third_way, :k => "name", :v => "Test Way")
-
-      get :search_ways, :params => { :type => "test" }
-      assert_response :service_unavailable
-      assert_equal "Searching for a key without value is currently unavailable", response.headers["Error"]
-
-      get :search_ways, :params => { :type => "test", :value => "yes" }
-      assert_response :success
-      assert_select "way", 3
-
-      get :search_ways, :params => { :name => "Test Way" }
-      assert_response :success
-      assert_select "way", 1
-    end
-
-    ##
-    # test searching relations
-    def test_search_relations
-      first_relation = create(:relation)
-      deleted_relation = create(:relation)
-      third_relation = create(:relation)
-
-      [first_relation, deleted_relation, third_relation].each do |relation|
-        create(:relation_tag, :relation => relation, :k => "test", :v => "yes")
-      end
-      create(:relation_tag, :relation => third_relation, :k => "name", :v => "Test Relation")
-
-      get :search_relations, :params => { :type => "test" }
-      assert_response :service_unavailable
-      assert_equal "Searching for a key without value is currently unavailable", response.headers["Error"]
-
-      get :search_relations, :params => { :type => "test", :value => "yes" }
-      assert_response :success
-      assert_select "relation", 3
-
-      get :search_relations, :params => { :name => "Test Relation" }
-      assert_response :success
-      assert_select "relation", 1
-    end
-
-    ##
-    # test searching nodes, ways and relations
-    def test_search_all
-      get :search_all, :params => { :type => "test" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-
-      get :search_all, :params => { :type => "test", :value => "yes" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-
-      get :search_all, :params => { :name => "Test" }
-      assert_response :service_unavailable
-      assert_equal "Searching of nodes is currently unavailable", response.headers["Error"]
-    end
-  end
-end