Compare commits
No commits in common. "master" and "2.7.0b1" have entirely different histories.
|
@ -5,7 +5,7 @@
|
|||
"es6": true
|
||||
},
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 2021,
|
||||
"ecmaVersion": 2020,
|
||||
"sourceType": "module"
|
||||
}
|
||||
}
|
||||
|
|
26
.github/workflows/release-helm.yml
vendored
|
@ -1,26 +0,0 @@
|
|||
name: Release Charts
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
release:
|
||||
# depending on default permission settings for your org (contents being read-only or read-write for workloads), you will have to add permissions
|
||||
# see: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token
|
||||
permissions:
|
||||
contents: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Publish Helm charts
|
||||
uses: stefanprodan/helm-gh-pages@v1.7.0
|
||||
with:
|
||||
charts_dir: charts
|
||||
linting: off
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
29
.github/workflows/test-docs.yml
vendored
|
@ -4,9 +4,7 @@ on:
|
|||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
path:
|
||||
- umap/*
|
||||
- pyproject.toml
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
|
@ -22,11 +20,7 @@ jobs:
|
|||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: postgres
|
||||
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
|
||||
redis:
|
||||
image: redis
|
||||
options: --health-cmd "redis-cli ping" --health-interval 10s --health-timeout 5s --health-retries 5
|
||||
ports:
|
||||
- 6379:6379
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
|
@ -54,8 +48,6 @@ jobs:
|
|||
DJANGO_SETTINGS_MODULE: 'umap.tests.settings'
|
||||
UMAP_SETTINGS: 'umap/tests/settings.py'
|
||||
PLAYWRIGHT_TIMEOUT: '20000'
|
||||
REDIS_HOST: localhost
|
||||
REDIS_PORT: 6379
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
@ -63,7 +55,7 @@ jobs:
|
|||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.12'
|
||||
python-version: '3.11'
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python3 -m pip install -e .[test,dev]
|
||||
|
@ -74,3 +66,18 @@ jobs:
|
|||
|
||||
- name: Run Docs
|
||||
run: make docs
|
||||
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python3 -m pip install -r docs/requirements.txt
|
||||
|
||||
- name: Run Docs
|
||||
run: mkdocs build
|
||||
|
|
5
.gitignore
vendored
|
@ -25,8 +25,3 @@ test-results/
|
|||
|
||||
### Transifex ###
|
||||
tx
|
||||
|
||||
# Helm
|
||||
charts/*/charts
|
||||
helmfile.yaml
|
||||
charts/*/Chart.lock
|
|
@ -1,9 +1,10 @@
|
|||
# This part installs deps needed at runtime.
|
||||
FROM python:3.12-slim AS common
|
||||
FROM python:3.11-slim AS common
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
tini \
|
||||
uwsgi \
|
||||
sqlite3 \
|
||||
libpq-dev \
|
||||
gdal-bin \
|
||||
|
@ -38,7 +39,7 @@ WORKDIR /srv/umap
|
|||
|
||||
COPY . /srv/umap
|
||||
|
||||
RUN /venv/bin/pip install .[docker,s3,sync]
|
||||
RUN /venv/bin/pip install .[docker]
|
||||
|
||||
FROM common
|
||||
|
||||
|
|
13
Makefile
|
@ -7,7 +7,7 @@ install: ## Install the dependencies
|
|||
|
||||
.PHONY: develop
|
||||
develop: ## Install the test and dev dependencies
|
||||
python3 -m pip install -e .[test,dev,sync,s3]
|
||||
python3 -m pip install -e .[test,dev]
|
||||
playwright install
|
||||
|
||||
.PHONY: format
|
||||
|
@ -46,13 +46,6 @@ docker: ## Create a new Docker image and publish it
|
|||
docker build -t umap/umap:${VERSION} .
|
||||
docker push umap/umap:${VERSION}
|
||||
|
||||
.PHONY: helm
|
||||
helm: ## Build the helm chart and publish it
|
||||
$(eval VERSION=$(shell hatch version))
|
||||
$(eval PACKAGE=$(shell helm package --dependency-update --app-version ${VERSION} ./charts/umap | grep "Successfully packaged" | awk '{print $$NF}'))
|
||||
@echo "Successfully packaged helm chart in: ${PACKAGE}"
|
||||
helm push ${PACKAGE} oci://registry-1.docker.io/umap
|
||||
|
||||
.PHONY: build
|
||||
build: ## Build the Python package before release
|
||||
@hatch build --clean
|
||||
|
@ -65,7 +58,7 @@ publish: ## Publish the Python package to Pypi
|
|||
test: testpy testjs
|
||||
|
||||
testpy:
|
||||
pytest -vv umap/tests/ --dist=loadgroup --reruns 1 --maxfail 10
|
||||
pytest -vv umap/tests/ --dist=loadgroup
|
||||
|
||||
test-integration:
|
||||
pytest -xv umap/tests/integration/ --dist=loadgroup
|
||||
|
@ -92,7 +85,7 @@ tx_pull:
|
|||
changelog:
|
||||
$(eval VERSION=$(shell hatch version))
|
||||
@# Bearer token is readonly
|
||||
@printf $(shell curl -sL -X POST -H "Authorization: Bearer ${GITHUB_TOKEN}" https://api.github.com/repos/umap-project/umap/releases/generate-notes -d '{"target_commitish":"master","previous_tag_name":"", "tag_name": "${VERSION}"}' | jq .body | sed 's/https:\/\/github.com\/umap-project\/umap\/pull\//#/g' | sed 's/`/\\`/g')
|
||||
@printf $(shell curl -sL -X POST -H "Authorization: Bearer ${GITHUB_TOKEN}" https://api.github.com/repos/umap-project/umap/releases/generate-notes -d '{"target_commitish":"master","previous_tag_name":"", "tag_name": "${VERSION}"}' | jq .body | sed 's/https:\/\/github.com\/umap-project\/umap\/pull\//#/g')
|
||||
|
||||
jsdir = umap/static/umap/js/
|
||||
filepath = "${jsdir}*.js"
|
||||
|
|
10
biome.json
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
"files": {
|
||||
"include": ["umap/static/umap/js/**"],
|
||||
"ignore": ["umap/static/umap/vendors/**"]
|
||||
},
|
||||
"formatter": {
|
||||
"enabled": true,
|
||||
"formatWithErrors": false,
|
||||
|
@ -18,11 +14,7 @@
|
|||
"rules": {
|
||||
"style": {
|
||||
"useBlockStatements": "off",
|
||||
"noShoutyConstants": "warn",
|
||||
"noParameterAssign": "off"
|
||||
},
|
||||
"complexity": {
|
||||
"noForEach": "off"
|
||||
"noShoutyConstants": "warn"
|
||||
},
|
||||
"performance": {
|
||||
"noDelete": "off"
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*.orig
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
|
@ -1,16 +0,0 @@
|
|||
apiVersion: v2
|
||||
name: umap
|
||||
description: A Helm chart to deploy umap on Kubernetes
|
||||
|
||||
type: application
|
||||
|
||||
version: 0.1.0
|
||||
|
||||
appVersion: "2.7.2"
|
||||
|
||||
dependencies:
|
||||
- name: cnpg-cluster
|
||||
version: 2.0.1
|
||||
repository: https://charts.enix.io/
|
||||
alias: cnpg
|
||||
condition: cnpg.enabled
|
|
@ -1,73 +0,0 @@
|
|||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "umap.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "umap.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "umap.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "umap.labels" -}}
|
||||
helm.sh/chart: {{ include "umap.chart" . }}
|
||||
{{ include "umap.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "umap.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "umap.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "umap.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "umap.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Get the name of the persistent volume claim
|
||||
*/}}
|
||||
{{- define "umap.pvcName" -}}
|
||||
{{- if .Values.persistence.existingClaim -}}
|
||||
{{- printf "%s" (tpl .Values.persistence.existingClaim $) -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s" (include "umap.fullname" .) -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
|
@ -1,110 +0,0 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "umap.fullname" . }}
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "umap.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
checksum/config: {{ include (print $.Template.BasePath "/secret-config.yaml") . | sha256sum }}
|
||||
checksum/env: {{ include (print $.Template.BasePath "/secret-env.yaml") . | sha256sum }}
|
||||
{{- with .Values.podAnnotations }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 8 }}
|
||||
{{- with .Values.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "umap.serviceAccountName" . }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
protocol: TCP
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /stats
|
||||
port: http
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /stats
|
||||
port: http
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /stats
|
||||
port: http
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
{{- if .Values.cnpg.enabled }}
|
||||
env:
|
||||
- name: DATABASE_URL
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ .Release.Name }}-cnpg-app
|
||||
key: uri
|
||||
- name: UMAP_SETTINGS
|
||||
value: /etc/umap/umap.conf
|
||||
{{- end }}
|
||||
envFrom:
|
||||
- secretRef:
|
||||
{{- if .Values.umap.envFromSecret }}
|
||||
name: {{ .Values.umap.envFromSecret }}
|
||||
{{- else }}
|
||||
name: {{ include "umap.fullname" . }}-env
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: config
|
||||
mountPath: /etc/umap/
|
||||
readOnly: true
|
||||
- name: statics
|
||||
mountPath: /srv/umap/static
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: data
|
||||
mountPath: /srv/umap/uploads/
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: config
|
||||
secret:
|
||||
{{- if .Values.umap.configFromSecret }}
|
||||
secretName: {{ .Values.umap.configFromSecret }}
|
||||
{{- else }}
|
||||
secretName: {{ include "umap.fullname" . }}-config
|
||||
{{- end }}
|
||||
- name: statics
|
||||
emptyDir: {}
|
||||
{{- if .Values.persistence.enabled }}
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ include "umap.pvcName" . }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
|
@ -1,31 +0,0 @@
|
|||
{{- if .Values.ingress.enabled -}}
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ include "umap.fullname" . }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
ingressClassName: {{ .Values.ingress.className }}
|
||||
tls:
|
||||
- hosts:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
secretName: {{ include "umap.fullname" . }}-tls
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . | quote }}
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: {{ include "umap.fullname" $ }}
|
||||
port:
|
||||
number: {{ $.Values.service.port }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,24 +0,0 @@
|
|||
{{- if and (.Values.persistence.enabled) (not .Values.persistence.existingClaim) }}
|
||||
kind: PersistentVolumeClaim
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
{{- if .Values.persistence.annotations }}
|
||||
annotations:
|
||||
{{- toYaml .Values.persistence.annotations | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ include "umap.pvcName" . }}
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
spec:
|
||||
accessModes:
|
||||
{{- range .Values.persistence.accessModes }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
{{- with .Values.persistence.resources }}
|
||||
resources:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.persistence.storageClassName }}
|
||||
storageClassName: {{ .Values.persistence.storageClassName | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,11 +0,0 @@
|
|||
{{ if not .Values.umap.configFromSecret }}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "umap.fullname" . }}-config
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
type: Opaque
|
||||
data:
|
||||
umap.conf: {{ .Values.umap.config | b64enc }}
|
||||
{{- end }}
|
|
@ -1,13 +0,0 @@
|
|||
{{ if not .Values.umap.envFromSecret }}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "umap.fullname" . }}-env
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
type: Opaque
|
||||
data:
|
||||
{{- range $key, $value := .Values.umap.environment }}
|
||||
{{ $key }}: "{{ $value | b64enc }}"
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,15 +0,0 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "umap.fullname" . }}
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
{{- include "umap.selectorLabels" . | nindent 4 }}
|
|
@ -1,13 +0,0 @@
|
|||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "umap.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "umap.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.automount }}
|
||||
{{- end }}
|
|
@ -1,125 +0,0 @@
|
|||
# Default values for umap.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: umap/umap
|
||||
pullPolicy: IfNotPresent
|
||||
# Overrides the image tag whose default is the chart appVersion.
|
||||
tag: ""
|
||||
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# Automatically mount a ServiceAccount's API credentials?
|
||||
automount: true
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
|
||||
podAnnotations: {}
|
||||
podLabels: {}
|
||||
|
||||
podSecurityContext:
|
||||
runAsUser: 1000
|
||||
runAsGroup: 1000
|
||||
fsGroup: 1000
|
||||
|
||||
securityContext:
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 8000
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
className: ""
|
||||
annotations: {}
|
||||
hosts:
|
||||
- example.org
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
|
||||
umap:
|
||||
# Set environment variables supported by umap here
|
||||
# see: https://docs.umap-project.org/en/stable/config/settings/
|
||||
environment:
|
||||
SECRET_KEY: CHANGE_ME
|
||||
STATIC_ROOT: /srv/umap/static
|
||||
MEDIA_ROOT: /srv/umap/uploads
|
||||
# Configure environment variables using an existing secret in the same namespace.
|
||||
# In this case the values above are not used
|
||||
envFromSecret: null
|
||||
|
||||
# You can also provide umap.conf content here:
|
||||
config: |
|
||||
from umap.settings.base import *
|
||||
|
||||
# See: https://github.com/umap-project/umap/blob/master/umap/settings/local.py.sample
|
||||
# Configure config file using an existing secret in the same namespace.
|
||||
# In this case the values above are not used
|
||||
configFromSecret: null
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
annotations: {}
|
||||
existingClaim: ""
|
||||
storageClassName: ""
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
|
||||
# Configure Cloudnative-pg operator for Postgis database
|
||||
# Alternatively, you can disable CNPG and provide your own
|
||||
# Postgis database by setting the `umap.environment.DATABASE_URL`
|
||||
cnpg:
|
||||
enabled: true
|
||||
replicaCount: 2
|
||||
image:
|
||||
repository: ghcr.io/cloudnative-pg/postgis
|
||||
tag: 14
|
||||
persistence:
|
||||
storageClass: ""
|
||||
size: 1Gi
|
||||
clusterExtraSpec:
|
||||
bootstrap:
|
||||
initdb:
|
||||
postInitTemplateSQL:
|
||||
- CREATE EXTENSION postgis;
|
||||
- CREATE EXTENSION postgis_topology;
|
||||
- CREATE EXTENSION fuzzystrmatch;
|
||||
- CREATE EXTENSION postgis_tiger_geocoder;
|
||||
|
||||
# See available values here: https://artifacthub.io/packages/helm/enix/cnpg-cluster?modal=values
|
|
@ -1,14 +1,6 @@
|
|||
services:
|
||||
version: '3'
|
||||
|
||||
# Usefull only to use the real time collaboration
|
||||
redis:
|
||||
image: redis:latest
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
||||
interval: 1s
|
||||
timeout: 3s
|
||||
retries: 5
|
||||
command: ["redis-server"]
|
||||
services:
|
||||
|
||||
db:
|
||||
healthcheck:
|
||||
|
@ -24,35 +16,18 @@ services:
|
|||
depends_on:
|
||||
db:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
image: umap/umap:3.0.2
|
||||
image: umap/umap:2.0.2
|
||||
ports:
|
||||
- "${PORT-8000}:8000"
|
||||
environment:
|
||||
- STATIC_ROOT=/srv/umap/static
|
||||
- MEDIA_ROOT=/srv/umap/uploads
|
||||
- DATABASE_URL=postgis://postgres@db/postgres
|
||||
- SECRET_KEY=some-long-and-weirdly-unrandom-secret-key
|
||||
- SITE_URL=https://umap.local/
|
||||
- UMAP_ALLOW_ANONYMOUS=True
|
||||
- DEBUG=1
|
||||
- REALTIME_ENABLED=1
|
||||
- REDIS_URL=redis://redis:6379
|
||||
volumes:
|
||||
- data:/srv/umap/uploads
|
||||
- static:/srv/umap/static
|
||||
|
||||
proxy:
|
||||
image: nginx:latest
|
||||
ports:
|
||||
- "8000:80"
|
||||
volumes:
|
||||
- ./docker/nginx.conf:/etc/nginx/nginx.conf:ro
|
||||
- static:/static:ro
|
||||
- data:/data:ro
|
||||
depends_on:
|
||||
- app
|
||||
|
||||
volumes:
|
||||
data:
|
||||
static:
|
||||
db:
|
||||
|
|
|
@ -9,5 +9,5 @@ umap collectstatic --noinput
|
|||
umap wait_for_database
|
||||
# then migrate the database
|
||||
umap migrate
|
||||
# run the server
|
||||
exec uvicorn --proxy-headers --no-access-log --host 0.0.0.0 umap.asgi:application
|
||||
# run uWSGI
|
||||
exec uwsgi --ini docker/uwsgi.ini
|
||||
|
|
|
@ -1,111 +0,0 @@
|
|||
events {
|
||||
worker_connections 1024; # Adjust this to your needs
|
||||
}
|
||||
|
||||
|
||||
|
||||
http {
|
||||
proxy_cache_path /tmp/nginx_ajax_proxy_cache levels=1:2 keys_zone=ajax_proxy:10m inactive=60m;
|
||||
proxy_cache_key "$uri$is_args$args";
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default upgrade;
|
||||
'' close;
|
||||
}
|
||||
|
||||
types {
|
||||
application/javascript mjs;
|
||||
}
|
||||
|
||||
include mime.types;
|
||||
default_type application/octet-stream;
|
||||
sendfile on;
|
||||
keepalive_timeout 65;
|
||||
|
||||
# Server block
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
|
||||
# Static file serving
|
||||
location /static/ {
|
||||
alias /static/;
|
||||
gzip on;
|
||||
gzip_vary on;
|
||||
gzip_proxied any;
|
||||
gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css;
|
||||
expires 365d;
|
||||
access_log /dev/null;
|
||||
}
|
||||
|
||||
# Geojson files
|
||||
location /uploads/ {
|
||||
alias /data/;
|
||||
expires 30d;
|
||||
}
|
||||
|
||||
location /favicon.ico {
|
||||
alias /static/favicon.ico;
|
||||
}
|
||||
|
||||
# X-Accel-Redirect
|
||||
location /internal/ {
|
||||
internal;
|
||||
gzip_vary on;
|
||||
gzip_static on;
|
||||
add_header X-DataLayer-Version $upstream_http_x_datalayer_version;
|
||||
alias /data/;
|
||||
}
|
||||
|
||||
# Ajax proxy
|
||||
location ~ ^/proxy/(.*) {
|
||||
internal;
|
||||
add_header X-Proxy-Cache $upstream_cache_status always;
|
||||
proxy_cache_background_update on;
|
||||
proxy_cache_use_stale updating;
|
||||
proxy_cache ajax_proxy;
|
||||
proxy_cache_valid 1m; # Default. Umap will override using X-Accel-Expires
|
||||
set $target_url $1;
|
||||
# URL is encoded, so we need a few hack to clean it back.
|
||||
if ( $target_url ~ (.+)%3A%2F%2F(.+) ){ # fix :// between scheme and destination
|
||||
set $target_url $1://$2;
|
||||
}
|
||||
if ( $target_url ~ (.+?)%3A(.*) ){ # fix : between destination and port
|
||||
set $target_url $1:$2;
|
||||
}
|
||||
if ( $target_url ~ (.+?)%2F(.*) ){ # fix / after port, the rest will be decoded by proxy_pass
|
||||
set $target_url $1/$2;
|
||||
}
|
||||
resolver 8.8.8.8;
|
||||
add_header X-Proxy-Target $target_url; # For debugging
|
||||
proxy_pass_request_headers off;
|
||||
proxy_set_header Content-Type $http_content_type;
|
||||
proxy_set_header Content-Encoding $http_content_encoding;
|
||||
proxy_set_header Content-Length $http_content_length;
|
||||
proxy_read_timeout 10s;
|
||||
proxy_connect_timeout 5s;
|
||||
proxy_ssl_server_name on;
|
||||
proxy_pass $target_url;
|
||||
proxy_intercept_errors on;
|
||||
error_page 301 302 307 = @handle_proxy_redirect;
|
||||
}
|
||||
location @handle_proxy_redirect {
|
||||
resolver 8.8.8.8;
|
||||
set $saved_redirect_location '$upstream_http_location';
|
||||
proxy_pass $saved_redirect_location;
|
||||
}
|
||||
|
||||
# Proxy pass to ASGI server
|
||||
location / {
|
||||
proxy_pass http://app:8000;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
proxy_redirect off;
|
||||
proxy_buffering off;
|
||||
}
|
||||
}
|
||||
}
|
26
docker/uwsgi.ini
Normal file
|
@ -0,0 +1,26 @@
|
|||
[uwsgi]
|
||||
http = :$(PORT)
|
||||
home = /venv
|
||||
module = umap.wsgi:application
|
||||
master = True
|
||||
vacuum = True
|
||||
max-requests = 5000
|
||||
processes = 4
|
||||
enable-threads = true
|
||||
static-map = /static=/srv/umap/static
|
||||
static-map = /uploads=/srv/umap/uploads
|
||||
buffer-size = 32768
|
||||
|
||||
; Run the websocket server only when the env variable
|
||||
; WEBSOCKET_ENABLED is set to True.
|
||||
; This is enough for the base docker image, but does not
|
||||
; take into account the settings as the source of truth.
|
||||
if-env = WEBSOCKET_ENABLED
|
||||
websocket_enabled = %(_)
|
||||
endif =
|
||||
|
||||
if-opt = websocket_enabled=True
|
||||
print = Starting the Websocket Server (WEBSOCKET_ENABLED=%(websocket_enabled))
|
||||
attach-daemon = umap run_websocket_server
|
||||
endif =
|
||||
lazy-apps = true
|
|
@ -1,11 +1,5 @@
|
|||
# Articles
|
||||
|
||||
## [Créer des cartes interactives personnalisées : uMap ou Leaflet ?](https://www.d-booker.fr/content/242-creer-des-cartes-interactives-personnalisees-umap-ou-leaflet) (2025-02-01)
|
||||
|
||||
> Dans ce guide, nous comparerons deux solutions libres populaires : uMap, une plateforme en ligne intuitive, et Leaflet, une bibliothèque JavaScript puissante.
|
||||
|
||||
[Article complet →](https://www.d-booker.fr/content/242-creer-des-cartes-interactives-personnalisees-umap-ou-leaflet){ .md-button }
|
||||
|
||||
## [Vers uMap 3 😱](https://www.openstreetmap.org/user/David%20Larlet/diary/404654#vers-umap-3-) (2024-07-16)
|
||||
|
||||
> La dernière version 2.4.X ouvre la voie à deux fonctionnalités majeures demandées : la collaboration en temps réel et les assistants d’import de données à distance en un clic.
|
||||
|
|
|
@ -77,7 +77,6 @@ Toute propriété de l'élément sera disponible, ainsi que:
|
|||
- `{locale}` → la langue sous la forme `fr` ou `fr_CA` quand une variante est utilisée
|
||||
- `{lang}` → la langue sous la forme `fr` ou `fr-ca` quand une variante est utilisée
|
||||
- `{measure}` → la longueur d'une ligne ou la surface d'un polygone
|
||||
- `{gain}`/`{loss}` → la dénivelée positive/négative d'une ligne (seulement si elle contient les altitudes)
|
||||
- `{rank}` → la rang d'un élément dans son calque
|
||||
- `{layer}` → le nom du calque de l'élément
|
||||
- `{zoom}` → le zoom actuel de la carte
|
||||
|
@ -92,27 +91,3 @@ Toute propriété de l'élément sera disponible, ainsi que:
|
|||
- `{zoom}` → le zoom actuel de la carte
|
||||
- `{lat}` → la latitude du centre actuel de la carte
|
||||
- `{lng}` → la longitude du centre actuel de la carte
|
||||
|
||||
|
||||
## Quels statuts peut avoir une carte ? {: #map-statuses}
|
||||
|
||||
### En accès
|
||||
|
||||
* **Brouillon (privé)**: Vous seul et votre équipe pouvez accéder à la carte.
|
||||
* **Tout le monde (public)**: Tout le monde peut accéder à la carte, qui est visible dans la recherche et la page d’accueil. La carte est indexée dans les moteurs de recherche (Google, etc.).
|
||||
* **Quiconque a le lien**: La carte est visible par toutes les personnes qui en ont le lien. Elle n’est pas indexée dans les moteurs de recherche.
|
||||
* **Éditeurs et équipe seulement**: Vous seul et votre équipe pouvez accéder à la carte.
|
||||
|
||||
Les personnes affichant une carte à laquelle elles n’ont pas accès auront une page d’erreur 403.
|
||||
|
||||
### En édition
|
||||
|
||||
* **Propriétaire uniquement**: Vous seul pouvez modifier la carte.
|
||||
* **Éditeurs et équipe seulement**: Vous seul et votre équipe pouvez modifier la carte.
|
||||
* **Tout le monde**: Tout le monde peut modifier la carte, même les comptes anonymes.
|
||||
|
||||
Pour les cartes créées sans compte :
|
||||
|
||||
* **Modifiable seulement avec le lien d’édition secret**: Seules les personnes avec un lien d’édition pourront modifier la carte.
|
||||
|
||||
Ces réglages sont aussi disponibles pour chaque calque.
|
||||
|
|
|
@ -18,7 +18,7 @@ lieux (domicile, vacances, travail, etc.). Procédons par étapes.
|
|||
!!! french-instance "Pour les agents publics"
|
||||
|
||||
Rendez-vous sur le site uMap agents publics <https://umap.incubateur.anct.gouv.fr/>
|
||||
et connectez-vous en haut à gauche. La connexion utilise ProConnect.
|
||||
et connectez-vous en haut à gauche. La connexion utilise MonComptePro.
|
||||
|
||||
<shot-scraper
|
||||
data-output="static/tutoriels/create-map.png"
|
||||
|
@ -115,7 +115,7 @@ nécessaire de conserver de lien secret.
|
|||
|
||||
S’ils ne se sont pas connectés avant de créer leur carte, le message est différent :
|
||||
|
||||

|
||||

|
||||
|
||||
Il n’est pas possible d’enregistrer les modifications apportées à une carte anonyme sur cette instance.
|
||||
|
||||
|
|
|
@ -62,15 +62,12 @@ récipiendaires ne pourront pas modifier vos cartes.
|
|||
|
||||
#### :fontawesome-solid-landmark-flag: Pour les agents publics
|
||||
|
||||
1. Se connectez à ProConnect : <https://moncomptepro.beta.gouv.fr/> <br>
|
||||
1. Se connectez à MonComptePro : <https://moncomptepro.beta.gouv.fr/> <br>
|
||||
Toute personne qui travaille pour un service public y a accès.
|
||||
2. Créez un compte, l’opération peut prendre quelques minutes.
|
||||
2. Créez un compte sur MonComptePro. L’opération prend quelques minutes.
|
||||
3. Sur [le site uMap pour les agents publics](https://umap.incubateur.anct.gouv.fr/fr/),
|
||||
cliquez sur `Me Connecter`.
|
||||
|
||||
On peut accéder à la page de création de compte ProConnect directement
|
||||
depuis [uMap pour les agents publics](https://umap.incubateur.anct.gouv.fr/fr/).
|
||||
|
||||
Le tableau de bord s’ouvre, il affiche l’ensemble des cartes que
|
||||
vous créez ainsi que les équipes auxquelles vous participez.
|
||||
|
||||
|
|
|
@ -1,221 +0,0 @@
|
|||
!!! abstract "Ce que nous allons apprendre"
|
||||
|
||||
- consulter des sources de données
|
||||
- découvrir des exemples de cartes
|
||||
- cloner une carte uMap
|
||||
- cas pratique : utiliser un jeu de données placé sur data.gouv.fr
|
||||
|
||||
## L’open data (données ouvertes)
|
||||
|
||||
Outre les données produites par ma communauté OpenStreetMap, accessibles sur [GeoDataMine](https://geodatamine.fr/) et dans [l’assistant d’import de données de uMap](6-one-click-data-import.md), les ressources d’open data sont nombreuses et variées. En effet, les collectivités de plus de 3 500 habitants et les services publics doivent placer leurs données en open data conformément à la [Loi pour une République numérique](https://www.vie-publique.fr/eclairage/20301-loi-republique-numerique-7-octobre-2016-loi-lemaire-quels-changements). Le service public de la donnée organise leur publication sur [data.gouv.fr](https://www.data.gouv.fr/fr/) qui est un portail généraliste.
|
||||
|
||||
Il existe également des bases plus adaptées à des jeux de données, par exemple les archives, des données géographiques, socio-économiques… Les collectivités mettent parfois aussi directement leurs données à disposition sur leurs portails open data. Des éditeurs de solutions proposent également des bases de données.
|
||||
|
||||
|
||||
## 1. Formats de données utilisés par uMap
|
||||
|
||||
### geojson
|
||||
|
||||
Ce format est utilisé pour des données de type point, ligne, chaîne de caractères, polygone.
|
||||
|
||||
Toutes les propriétés sont importées dans uMap.
|
||||
|
||||
❓ Usage très large dans uMap.
|
||||
|
||||
### gpx
|
||||
|
||||
Ce format ouvert permet l’échange de coordonnées géographiques issues de GPS, points de cheminement (*waypoints*), traces (*tracks*) ou itinéraires (*routes*).
|
||||
|
||||
Propriétés importées dans uMap : `name`, `desc`. (format pour des itinéraires)
|
||||
|
||||
❓ Les fichiers gpx peuvent provenir d’enregistrements personnels, par exemple de traces recueillies randonnées.
|
||||
|
||||
### kml
|
||||
|
||||
Format propriétaire qui contient des coordonnées géographiques, balisage, styles pour représenter des points, des lignes et des polygones.
|
||||
|
||||
Propriétés importées dans uMap : `name`, `description`.
|
||||
|
||||
### csv
|
||||
|
||||
C’est un format texte ouvert représentant des données tabulaires sous forme de valeurs séparées par des virgules. Pour utiliser un fichier Excel, il faut d’abord le convertir en `.csv`.
|
||||
|
||||
Propriétés importées dans uMap : virgule, tabulation ou point virgule pour séparer des valeurs. La projection SRS WGS84 est implicite. Seuls les points géométriques sont importés. L’importation se référera au titre dans les entêtes de colonnes de `lat` et `lon` au début de l’entête, et est insensible à la casse (peu importe les majuscules ou minuscules). Toutes les autres colonnes sont importées en tant que propriétés.
|
||||
|
||||
❓ Usage très large dans uMap, aussi bien pour des données en *open data* que pour ses propres données.
|
||||
|
||||
### umap
|
||||
|
||||
C’est le format d’enregistrement d’une carte, très utilisé par exemple pour cloner une carte sur l’instance OSM et l’importer sur l’instance uMap pour les agents publics. uMap importe toutes les données de la carte, y compris les calques et les propriétés. Il s’agit d’un bon moyen de sauvegarder sa carte uMap.
|
||||
|
||||
❓ Voir plus loin, comment cloner une carte uMap.
|
||||
|
||||
Ainsi qu’osm et georss.
|
||||
|
||||
## 2. S’orienter sur data.gouv.fr
|
||||
|
||||
La plateforme [data.gouv.fr](https://www.data.gouv.fr/fr/) propose des données harmonisées, précise la date de mise à jour et permet de contacter l’administrateur qui a déposé le jeu de données. Il suffit d’utiliser l’outil de recherche pour préciser sa demande puis sélectionner le résultat voulu.
|
||||
La principale difficulté : savoir quel jeu de données répondrait au besoin. Dans ce cas, il est conseillé de regarder aussi les « thématiques » et les « réutilisations » en bas de page d’accueil.
|
||||
|
||||
|
||||
## 3. Gallica ! les archives de la Bibliothèque Nationale de France
|
||||
|
||||
La [base Gallica](https://gallica.bnf.fr/accueil/fr/content/accueil-fr?mode=desktop) est particulièrement utile pour afficher dans uMap des images, des cartes postales, des fonds de cartes anciennes. Il n’est pas obligatoire de télécharger l’illustration, certaines cartes se contentent de placer le lien pour qu’elle s’affiche :
|
||||
|
||||
### Vues de villes aux XVIe et XVIIe siècles
|
||||
|
||||

|
||||
|
||||
[Lien vers la carte en ligne](https://umap.openstreetmap.fr/fr/map/vues-de-villes-aux-xvie-et-xviie-siecles_635544#7/46.241/-1.329){ .md-button }
|
||||
|
||||
Deux exemples utilisant un plan ancien comme fond, en plus des images anciennes qui s’affichent en cliquant sur un pointeur :
|
||||
|
||||
### Photographies de Marseille 1862 à 1866 par A. Terris
|
||||
|
||||
|
||||

|
||||
|
||||
[Lien vers la carte en ligne](https://umap.openstreetmap.fr/nl/map/photographies-de-marseille-1862-a-1866-par-a-terri_277962#14/43.2909/5.3815){ .md-button }
|
||||
|
||||
### Metz 1872
|
||||
|
||||

|
||||
|
||||
[Lien vers la carte en ligne](https://umap.incubateur.anct.gouv.fr/fr/map/metz-1872_50#13/49.1201/6.1419){ .md-button }
|
||||
|
||||
Dans ces deux derniers cas, le fond de carte doit être « redressé » avant d’être utilisé dans uMap comme [fond personnalisé](https://forum.openstreetmap.fr/t/integrer-un-fonds-de-carte-personnalise-sur-umap/19606).
|
||||
|
||||
## 4. Bases de données statistiques
|
||||
|
||||
uMap permet de représenter des données quantitatives par le biais de [cercles proportionnels](8-proportional-circles.md) ou de [cartes choroplèthes](10-embed-remote-data.md#produire-une-carte-de-chaleur-ou-heatmap) c’est à dire des plages de couleurs.
|
||||
|
||||
L’[INSEE](https://www.insee.fr/fr/accueil) et [Eurostat](https://ec.europa.eu/eurostat/fr/data/database) permettent de télécharger des fichiers statistiques généralistes.
|
||||
|
||||
Une fois un fichier enregistré, il faut vérifier le format des données et le modifier au besoin. Attention par exemple aux cellules fusionnées et aux espaces entre les séries de zéro.
|
||||
|
||||
## 5. Cloner une carte uMap
|
||||
|
||||
Pour utiliser les données d’une carte sur un autre fond, en faire plusieurs versions, il suffit de cloner la carte.
|
||||
|
||||
Exemple de besoin : présenter sur un site Internet la même carte plusieurs fois, en diversifiant le centrage et les fonds de cartes. La même carte initiale fournit plusieurs vues provenant de clones.
|
||||
|
||||
!!! french-instance "Pour les agents publics"
|
||||
|
||||
Cette fonctionnalité permet également d’importer sur [l’instance uMap agents publics](https://umap.incubateur.anct.gouv.fr/fr/) une carte réalisée sur une autre instance.
|
||||
|
||||
Voici les actions :
|
||||
|
||||
- sauvegardez la carte que vous souhaitez cloner
|
||||
- créez une nouvelle carte - pour cloner la carte sur une nouvelle instance : connectez-vous à la nouvelle instance puis créez cette nouvelle carte et
|
||||
- importez la carte.
|
||||
|
||||
Les deux cartes co-existent, une modification sur une carte n’impacte pas l’autre carte. Si la carte est partagée sur un site Internet, il faut veiller à **mettre à jour le lien** en cas de changement d’instance.
|
||||
|
||||
### 1. Sauvegarder la carte
|
||||
|
||||
Cliquez à gauche sur « Partager et télécharger »
|
||||
|
||||
<shot-scraper
|
||||
data-output="static/tutoriels/control-embed.png"
|
||||
data-url="https://umap.openstreetmap.fr/en/map/new/"
|
||||
data-alt="Icône du partage et de l’intégration."
|
||||
data-selector=".leaflet-control-embed"
|
||||
data-width="48"
|
||||
data-height="48"
|
||||
data-padding="5"
|
||||
>Permet de partager la carte ou d’en exporter les données.</shot-scraper>
|
||||
|
||||
puis une fois l’écran latéral affiché :
|
||||
|
||||

|
||||
|
||||
Cliquez sur « Sauvegarde complète » en bas.
|
||||
|
||||
### 2. Créer une carte et importer le fichier
|
||||
|
||||
Quitter cet écran, créer une nouvelle carte puis cliquer à droite sur « Importer des données » puis une fois l’écran latéral affiché :
|
||||
|
||||

|
||||
|
||||
|
||||
Le format de l’import reconnaît uMap et le précise.
|
||||
|
||||
Cliquez sur « Importer », puis enregistrez.
|
||||
|
||||
## 6. Cas pratique : utiliser un jeu de données placé sur data.gouv.fr
|
||||
|
||||
Pour un usage dans uMap, les fichiers doivent contenir les coordonnées géographiques des objets. Si le fichier choisi n’en contient pas, voir [ici](12-display-grist-data.md#2-geocoder-des-adresses-pour-les-agents-publics-seulement) comment les ajouter (géocodage).
|
||||
|
||||
Voici les actions pour dresser la carte des arbres remarquables à Metz : rechercher les données, les importer dans uMap et les retravailler pour améliorer le placement des étiquettes.
|
||||
|
||||
### Rechercher les données
|
||||
|
||||
La plateforme ouverte des données publiques françaises recense des milliers de jeux de données. Rechercher « Arbres Metz » dans l’outil de recherche.
|
||||
|
||||
Deux solutions pour utiliser ces données :
|
||||
|
||||
* récupérer le fichier au format json : il faudra mettre à jour la carte de temps en temps lorsque les données sources sont mises à jour. Bénéfice : une carte à jour à une date précise.
|
||||
|
||||
ou
|
||||
|
||||
* utiliser le lien vers les données : dans ce cas, la carte se mettra automatiquement à jour (suppression d’arbres coupés par exemple, ajout de nouveaux). Inconvénient : la carte est une carte au temps T, on ne conserve pas l’historique dans ce cas.
|
||||
|
||||

|
||||
|
||||
Vous avez le choix. Une fois le fichier téléchargé ou le lien copié, cliquer dans la carte sur uMap le bouton "Importer des données" dans la barre de droite puis dans le cadre au choix :
|
||||
|
||||
* Parcourir les fichiers téléchargés et choisir le fichier des arbres remarquables au format Geojson
|
||||
|
||||
ou
|
||||
|
||||
* Coller l’URL stable dansla ligne prévue
|
||||
|
||||

|
||||

|
||||
|
||||
Dans « Choisir le format des données » : sélectionner `Geojson`. Dans le cas où vous choisissez l’URL stable, vous pouvez choisir `Associer au calque comme données distantes` et dans ce cas la carte se met automatiquement à jour si le fichier est modifié.
|
||||
|
||||
Choisir `Copier dans le calque` pour que la carte reste telle quelle à une date T.
|
||||
|
||||
La carte se centre automatiquement sur Metz et tous les arbres remarquables sont placés :
|
||||
|
||||

|
||||
|
||||
Les informations présentes dans le fichier sont répercutées et accessibles dans un tableau ou en cliquant sur chaque arbre.
|
||||
|
||||
### Modifier l’apparence des pointeurs pour adapter à la charte d’un site
|
||||
|
||||
Sélectionner le calque dans la barre de droite et modifier ses réglages en cliquant sur le petit stylo :
|
||||
|
||||

|
||||
|
||||
Nom : Arbres remarquables (ou par exemple Feuillus ou Arbres de plus de 50 ans…), autant de possibilités que de calques et de couleurs. Puis cliquer sur les propriétés de la forme pour choisir la couleur et la forme du pointeur, mais aussi les options d’interaction : afficher une étiquette au survol par exemple.
|
||||
|
||||

|
||||
|
||||
### Afficher les noms des arbres au survol
|
||||
|
||||
Toutes les données affichables dans l’étiquette sont présentées dans les colonnes du tableau associé au calque. Cliquez sur l’explorateur de données à gauche puis sur le visuel "Éditer dans un tableau" (juste à gauche de la corbeille):
|
||||
|
||||
<shot-scraper
|
||||
data-output="static/tutoriels/control-browse.png"
|
||||
data-url="https://umap.openstreetmap.fr/en/map/new/"
|
||||
data-alt="Icône du sélecteur de calque(s)."
|
||||
data-selector=".umap-control-browse"
|
||||
data-width="48"
|
||||
data-height="48"
|
||||
data-padding="5"
|
||||
>Icône du sélecteur de calque(s).</shot-scraper>
|
||||
|
||||
Dans le cas du fichier des arbres remarquables de Metz, le nom des arbres est renseigné comme `nom_commun` et `nom_latin`. Or dans uMap, par défaut, les étiquettes qui s’affichent utilisent `name`. Pour que le nom commun s’affiche, il faut remplacer `name` par `nom_commun` à droite dans les « Propriétés avancées » (Panneau d’information de ce calque):
|
||||
|
||||

|
||||
|
||||
Pour que l’étiquette s’affiche seulement au survol, choisir `Caché` un peu plus bas dans « Afficher une étiquette ».
|
||||
|
||||
!!! note
|
||||
|
||||
- Pour s’entraîner, ouvrir les réglages, la carte peut être clonée ici :
|
||||
https://umap.incubateur.anct.gouv.fr/fr/map/diaporama-des-arbres-remarquables-a-metz_528
|
||||
- Pour cloner une carte, voir l’explication au point 5 plus haut.
|
||||
|
|
@ -47,7 +47,7 @@ Voici un bref passage en revu des différents imports proposés et pour finir l
|
|||
|
||||
## 1. Importer le contour d’une commune
|
||||
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis cliquez sur le lien « Assistants d’import ».
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis descendez jusqu’au cadre « Assistants d’import ».
|
||||
|
||||
Cliquez sur « Communes France » et sélectionnez la commune souhaitée dans une liste déroulante. Une fois la commune sélectionnée, le format est reconnu automatiquement (geojson) puis le type de calque (cliquer sur « ? » pour savoir quel choix opérer)
|
||||
|
||||
|
@ -64,7 +64,7 @@ Une fois cet import réalisé, tout est réglable : couleur de contour, de fond,
|
|||
|
||||
## 2. Importer les contours des départements ou des régions
|
||||
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis cliquez sur le lien « Assistants d’import ».
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis descendez jusqu’au cadre « Assistants d’import ».
|
||||
|
||||
Cliquez sur « Contours nationaux » puis soit départements, soit régions et enfin le type de calque (voir supra l’explication). Tous les départements sont importés :
|
||||
|
||||
|
@ -72,7 +72,7 @@ Cliquez sur « Contours nationaux » puis soit départements, soit régions et
|
|||
|
||||
## 3. Importer un point d’intérêt issu de GeoDataMine
|
||||
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis cliquez sur le lien « Assistants d’import ».
|
||||
Cliquez sur l’outil d’importation en bas de la barre de droite, puis descendez jusqu’au cadre « Assistants d’import ».
|
||||
|
||||
Cliquez sur « GeoDataMine (thèmes OSM) » et sélectionnez les informations souhaitées, routes, bâtiments, commerces, services publics, …
|
||||
Par exemple, en sélectionnant les points d’eau potable de la CA du Grand Avignon, puis « Copier dans un calque »
|
||||
|
|
|
@ -1,20 +1,12 @@
|
|||
# Vidéos uMap
|
||||
|
||||
## Faire la carte de son marché de Noël
|
||||
|
||||
<iframe title="Faire la carte de son marché de Noël" width="560" height="315" src="https://tube.numerique.gouv.fr/videos/embed/7d3a95ad-37dc-4af1-ac15-17992cb95869" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
|
||||
|
||||
## Atelier « Afficher des donnees Grist dans uMap »
|
||||
|
||||
<iframe title="Atelier Afficher des donnees Grist dans uMap" width="560" height="315" src="https://tube.numerique.gouv.fr/videos/embed/517beed6-ed57-430d-ad76-61e0c4784338" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
|
||||
|
||||
## Transformer un tableau Grist en carte avec uMap
|
||||
|
||||
<iframe title="Transformer une table Grist en carte avec uMap" width="560" height="315" src="https://tube.numerique.gouv.fr/videos/embed/9e5b09d5-c660-41a0-8591-cae347c88e65" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
|
||||
|
||||
## uMap incubé par l’État, ça donne quoi ?
|
||||
|
||||
<iframe title="uMap incubé par l’État, ça donne quoi ?" width="560" height="315" src="https://peertube.openstreetmap.fr/videos/embed/c564dcfd-4b0b-4796-86ac-ca8624226cd3" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
|
||||
<iframe title="24 - uMap incubé par l’État, ça donne quoi ?" width="560" height="315" src="https://peertube.openstreetmap.fr/videos/embed/c564dcfd-4b0b-4796-86ac-ca8624226cd3" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe>
|
||||
|
||||
## uMap a 10 ans, bilan et perspectives
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Force rtfd to use a recent version of mkdocs
|
||||
mkdocs==1.6.1
|
||||
pymdown-extensions==10.14.3
|
||||
mkdocs-material==9.6.12
|
||||
mkdocs-static-i18n==1.3.0
|
||||
pymdown-extensions==10.11.2
|
||||
mkdocs-material==9.5.39
|
||||
mkdocs-static-i18n==1.2.3
|
||||
|
|
Before Width: | Height: | Size: 103 KiB |
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 92 KiB |
Before Width: | Height: | Size: 1.7 MiB |
Before Width: | Height: | Size: 825 KiB |
Before Width: | Height: | Size: 1.4 MiB |
Before Width: | Height: | Size: 1,001 KiB |
Before Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 1.4 MiB |
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 734 KiB After Width: | Height: | Size: 3.4 MiB |
BIN
docs-users/static/tutoriels/moncomptepro-connexion.png
Normal file
After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 11 KiB |
|
@ -77,7 +77,6 @@ Any property of the feature will be available, plus:
|
|||
- `{locale}` → the locale in the form `en` or `en_US` when a variant is used
|
||||
- `{lang}` → the lang in the form `en` or `en-us` when a variant is used
|
||||
- `{measure}` → the length of a line or the area of a polygon
|
||||
- `{gain}`/`{loss}` → the elevation gain/loss of a line (only if it contains the altitude information)
|
||||
- `{rank}` → the rank of the feature in the layer
|
||||
- `{layer}` → the name of the feature's layer
|
||||
- `{zoom}` → the current map zoom
|
||||
|
@ -92,27 +91,3 @@ Any property of the feature will be available, plus:
|
|||
- `{zoom}` → the current map zoom
|
||||
- `{lat}` → the latitude of the current map center
|
||||
- `{lng}` → the longitude of the current map center
|
||||
|
||||
|
||||
## Which statuses can have a map? {: #map-statuses}
|
||||
|
||||
### Access statuses
|
||||
|
||||
* **Draft (private)**: Only you and your collaborators are able to see the map.
|
||||
* **Everybody (public)**: Everybody can see your map, it is listed on search results and potentially the homepage. It is indexed by search engines like Google.
|
||||
* **Anyone with link**: The map will be accessible only to people knowing the link. The map is not indexed by search engines.
|
||||
* **Editors and team only**: Only you and your collaborators will be able to see the map.
|
||||
|
||||
Providing a link of a map to unallowed people will display a `403 Forbidden` error.
|
||||
|
||||
### Edit statuses
|
||||
|
||||
* **Owner only**: only the owner of the map can edit it.
|
||||
* **Editors and team only**: the owner, editors and members of the linked team will be able to edit the map.
|
||||
* **Everyone**: Everybody can edit the map without even being logged in.
|
||||
|
||||
Only for maps created without an account:
|
||||
|
||||
* **Only editable with secret edit link**: Only people with a secret link will be able to edit the map.
|
||||
|
||||
These settings are also available for each layer.
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
!!! example "This is an ongoing work."
|
||||
|
||||
[Let us know](https://github.com/umap-project/umap/issues)
|
||||
if you are interested [to translate it from French](/fr/tutorials/4-find-data/).
|
|
@ -1,352 +1,15 @@
|
|||
# Changelog
|
||||
|
||||
## 3.0.5 - 2025-04-25
|
||||
|
||||
* allow to save a remote data with unloaded data by @yohanboniface in #2657
|
||||
* allow to save/undo/sync drag'n'drop of datalayers by @yohanboniface in #2677
|
||||
* setting center and zoom manually should set dirty status by @yohanboniface in #2676
|
||||
* fix error when saving and deleting heatmap layer by @yohanboniface in #2681
|
||||
* make rules reordering syncable, savable and undoable by @yohanboniface in #2672
|
||||
* loading remote data should not make the map dirty by @yohanboniface in #2679
|
||||
* implement a design system for UI consistency by @davidbgk in #2654
|
||||
* pass CSRF_TRUSTED_ORIGINS env to settings by @lippoliv in #2656
|
||||
* do not display "saved" message if some request failed by @yohanboniface in #2669
|
||||
* show an error message if saving layer failed by @yohanboniface in #2670
|
||||
* naive support for GeometryCollection as Feature geometry by @yohanboniface in #2658
|
||||
* add a back button in rules form by @yohanboniface in #2673
|
||||
|
||||
## New Contributors
|
||||
* @lippoliv made their first contribution in #2656
|
||||
|
||||
## 3.0.4 - 2025-04-14
|
||||
|
||||
* do not show "back to home" button in iframes by @yohanboniface in #2644
|
||||
* remove "hide home button" shown twice in map settings by @yohanboniface in #2645
|
||||
* adapt Helm chart to match La Suite's expectations by @ohemelaar in #2646
|
||||
* update colors by @yohanboniface in #2647
|
||||
|
||||
|
||||
## 3.0.3 - 2025-04-11
|
||||
|
||||
* do not try to remove a feature not yet added by @yohanboniface in #2637
|
||||
* document that nginx needs to be added in Docker stack to serve statics by @yohanboniface in #2636
|
||||
* display back help button in switch fields by @yohanboniface in #2634
|
||||
* use Last-Modified header from remote data when available by @yohanboniface in #2624
|
||||
* fix text overflow on search results by @yohanboniface in #2628
|
||||
* redirect to user dashboard after map delete by @yohanboniface in #2626
|
||||
* add missing margin-bottom in importers by @yohanboniface in #2627
|
||||
* fix pictogram categories always hidden by @yohanboniface in #2630
|
||||
* display search category on list page by @davidbgk in #2635
|
||||
* allow to hide the layer switcher from bottom bar by @davidbgk in #2639
|
||||
* hidden download button in browser when embedControl=false by @yohanboniface in #2640
|
||||
* allow to hide the back to home button by @davidbgk in #2638
|
||||
|
||||
|
||||
## 3.0.2 - 2025-04-08
|
||||
|
||||
* fix copiable input CSS by @yohanboniface in #2616
|
||||
* fix categorized layer crashing with null value by @yohanboniface in #2621
|
||||
* properly call endEdit for markers by @yohanboniface in #2617
|
||||
* fix result tools buttons background color by @yohanboniface in #2620
|
||||
* fix min-height of select in caption bar by @yohanboniface in #2622
|
||||
* give priority to small usernames on autocomplete by @yohanboniface in #2604
|
||||
|
||||
## 3.0.1 - 2025-04-07
|
||||
|
||||
* fix showLabel wrongly using MultiChoices by @yohanboniface in #2609
|
||||
|
||||
|
||||
## 3.0.0 - 2025-04-07
|
||||
|
||||
This is the first release to officially support colaborative real-time map editing.
|
||||
It introduces ASGI deployement, to support websockets, and adds Redis in the stack.
|
||||
But it's still possible to continue deploying in WSGI for now, and Redis is only
|
||||
mandatory when using the real-time feature.
|
||||
|
||||
How to use the real-time editing feature in your instance:
|
||||
- you need to deploy with ASGI, see https://docs.umap-project.org/en/stable/deploy/asgi/
|
||||
- you need to set `REALTIME_ENABLED=True` in your settings
|
||||
|
||||
Other notable changes:
|
||||
- a first version of a real undo/redo
|
||||
- map categories; those are defined through the `UMAP_TAGS` settings
|
||||
|
||||
Note: you may want to update your search index to include the category search,
|
||||
see https://docs.umap-project.org/en/stable/config/settings/#umap_search_configuration
|
||||
|
||||
|
||||
### Breaking change
|
||||
|
||||
* The Docker image will not serve assets and data files anymore, an Nginx container must
|
||||
be configured. See [docker-compose.yml](https://github.com/umap-project/umap/blob/master/docker-compose.yml)
|
||||
for an example.
|
||||
|
||||
### New features
|
||||
* add collaborative real-time map editing
|
||||
* add atomic undo redo by @yohanboniface in #2570
|
||||
* expose active sessions in stats endpoint by @yohanboniface in #2544
|
||||
* add more users counts in /stats/ by @yohanboniface in #2555
|
||||
* add new "Back to home" icon by @yohanboniface in #2551
|
||||
* add experimental BAN importer by @yohanboniface in #2565
|
||||
* add titles in the text formatting dialog by @yohanboniface in #2584
|
||||
* layers selector in bottom bar by @yohanboniface in #2579
|
||||
* display maps list as a grid now by @yohanboniface in #2590
|
||||
* add Map.tags and allow to edit from client by @yohanboniface in #2530
|
||||
* add minimal "raw" icon shape by @yohanboniface in #2597
|
||||
|
||||
### Bug fixes
|
||||
* cast value to string before calling trim by @yohanboniface in #2567
|
||||
* import iconUrl as absolute when possible by @yohanboniface in #2563
|
||||
* iconUrl field was broken on older browsers by @yohanboniface in #2575
|
||||
* do not fail when trying to read metadata of a missing geojson by @yohanboniface in #2592
|
||||
* remote data loading on import from umap backup by @davidbgk in #2598
|
||||
* do not export layer ids in umap backup by @davidbgk in #2600
|
||||
* use the multichoices for ttl in remote data form by @davidbgk in #2599
|
||||
|
||||
### Internal changes
|
||||
* refactor search UX by @yohanboniface in #2545
|
||||
* new icon, colors and title for search buttons by @yohanboniface in #2556
|
||||
* use real redraw for datalayer, instead of hide/show by @yohanboniface in #2568
|
||||
* order importers by name instead of id by @yohanboniface in #2578
|
||||
* update the Dockerfile to expose websockets by @almet in #2576
|
||||
* remove confirm delete for features and datalayers by @yohanboniface in #2603
|
||||
|
||||
### Accessibility
|
||||
* a11y: turn embeded maps into inert elements by @davidbgk in #2533
|
||||
|
||||
### Changed templates
|
||||
- auth/user_detail.html
|
||||
- auth/user_stars.html
|
||||
- umap/content.html
|
||||
- umap/home.html
|
||||
- umap/map_fragment.html
|
||||
- umap/map_list.html
|
||||
- umap/search.html
|
||||
- umap/search_bar.html
|
||||
- umap/team_detail.html
|
||||
|
||||
|
||||
## 2.9.3 - 2025-03-07
|
||||
|
||||
* be explicit in the message that logout is needed after adding a new oauth provider
|
||||
|
||||
|
||||
## 2.9.2 - 2025-03-04
|
||||
|
||||
* measure/drawing tooltip was misplaced by @yohanboniface in #2541
|
||||
* be defensive when getting the backend name from the session by @yohanboniface in #2540
|
||||
|
||||
|
||||
## 2.9.1 - 2025-03-03
|
||||
|
||||
* be more persuasive in deprecating twitter login backend by @yohanboniface in #2538
|
||||
|
||||
|
||||
## 2.9.0 - 2025-03-03
|
||||
|
||||
This release is mainly about making the sync feature deployable and more stable (but still
|
||||
not yet activated by default).
|
||||
|
||||
### New features
|
||||
* display map's "created at" and "modified at" in the caption by @yohanboniface in #2424
|
||||
* allow to define sortKey at layer level by @yohanboniface in #2449
|
||||
* move star button to caption by @yohanboniface in #2442
|
||||
* add a debounce for Input and Textarea fields by @yohanboniface in #2445
|
||||
* soft delete datalayers by @yohanboniface in #2459
|
||||
* add DEPRECATED_AUTHENTICATION_PROVIDERS setting by @yohanboniface in #2461
|
||||
* expose teams in users’ CSV export by @davidbgk in #2484
|
||||
* add title attribute to layers in browser by @yohanboniface in #2489
|
||||
* make the tooltip sticky in hover mode for paths by @yohanboniface in #2507
|
||||
* make vertex icons bigger (and round) by @yohanboniface in #2506
|
||||
* add a quick link to layer's permalink by @yohanboniface in #2529
|
||||
|
||||
### Bug fixes
|
||||
* display a more usefull message when error in remote data by @yohanboniface in #2443
|
||||
* fix circle icon no longer hihlighted by @yohanboniface in #2440
|
||||
* keep layer visibility after clicking on toggle all by @yohanboniface in #2439
|
||||
* update map.modified_at when saving a datalayer by @yohanboniface in #2423
|
||||
* do not consume ctrl-Z in textarea or input by @yohanboniface in #2441
|
||||
* Fix categorized layers colors palette not updating by @yohanboniface in #2447
|
||||
* reference secret-env by fullname instead release-name by @swarnat in #2406
|
||||
* correctly parse http link including another http link in the path by @yohanboniface in #2460
|
||||
* display current configured oauth as icon instead of text by @yohanboniface in #2375
|
||||
* better buttons positionning for the homepage by @davidbgk in #2463
|
||||
* catch cluster error at zoom in certain situation by @yohanboniface in #2464
|
||||
* display a more descriptive alert on invalid geojson error by @yohanboniface in #2466
|
||||
* do not try to backup an undefined geojson by @yohanboniface in #2468
|
||||
* do not error when escape during marker creation by @davidbgk in #2483
|
||||
* do not import empty features by @yohanboniface in #2485
|
||||
* do not display an error for an empty CSV by @yohanboniface in #2505
|
||||
* try to reconnect after network error when getting token by @yohanboniface in #2502
|
||||
* wait for websocket full connection by @yohanboniface in #2503
|
||||
* feature edit status not disabled on hide by @yohanboniface in #2534
|
||||
|
||||
### Internal changes
|
||||
* deactivate cancel and hide button when sync is active by @yohanboniface in #2413
|
||||
* do not try to reconnect after end edit by @yohanboniface in #2412
|
||||
* handle sync of datalayer delete by @yohanboniface in #2416
|
||||
* internalize FormBuilder by @yohanboniface in #2420
|
||||
* POC of using Redis for pubsub by @yohanboniface in #2426
|
||||
* include site description within page titles by @davidbgk in #2455
|
||||
* Sync show usernames by @yohanboniface in #2444
|
||||
* only allow to set a map as sync when it is already saved by @yohanboniface in #2465
|
||||
* move DrawToolbar and SettingsToolbar to bar.js module by @yohanboniface in #2482
|
||||
* add very minimal documentation for deploying uMap with ASGI by @yohanboniface in #2480
|
||||
* use default value from schema for non inheritable fields by @yohanboniface in #2513
|
||||
* sync save state by @yohanboniface in #2487
|
||||
* use our contexmenu class for inplace toolbar by @yohanboniface in #2510
|
||||
* make sure we sync a line when hitting esc while drawing by @yohanboniface in #2526
|
||||
* make datalayer upsert idempotent by @yohanboniface in #2528
|
||||
|
||||
### Accessibility
|
||||
* set an aria-label for unlabelled search input by @davidbgk in #2531
|
||||
* switch to better contrasted links by @davidbgk in #2532
|
||||
|
||||
### New Contributors
|
||||
* @swarnat made their first contribution in #2406
|
||||
|
||||
|
||||
## 2.8.2 - 2024-12-26
|
||||
|
||||
### Bug fixes
|
||||
* fix create marker from search result by @yohanboniface in #2404
|
||||
* fix startMarker/Polyline/Polygon on right click by @yohanboniface in #2403
|
||||
|
||||
## 2.8.1 - 2024-12-24
|
||||
|
||||
### Bug fixes
|
||||
|
||||
* honour carriage returns in layer description (in caption panel) by @yohanboniface in #2386
|
||||
* update star icon on star/unstar by @yohanboniface in #2387
|
||||
* reconnect websocket on disconnection by @almet in #2389
|
||||
* fix duplicated content during sync by @yohanboniface in #2388
|
||||
* main help button was broken by @yohanboniface in #2393
|
||||
* split zoomTo to accept bounds by @davidbgk in #2394
|
||||
* zoom to droped file once loaded by @davidbgk in #2401
|
||||
* do not load all datalayers at once by @yohanboniface in #2402
|
||||
* add a 403.html template by @yohanboniface in #2396
|
||||
|
||||
|
||||
## 2.8.0 - 2024-12-18
|
||||
|
||||
### What's Changed
|
||||
|
||||
This release is mainly about being able to deploy uMap on helm/k8s, with a S3-compatible storage. Doing so,
|
||||
we introduce two new map statuses:
|
||||
|
||||
- "draft" (which is now the default, unless you change the UMAP_DEFAULT_SHARE_STATUS setting), which
|
||||
makes the maps private by default
|
||||
- "deleted", which make that now a delete will be a soft delete (and the command `umap empty_trash`
|
||||
could be run to do the real delete).
|
||||
|
||||
Also pursuing the code cleaning (more modules and spliting uMap core code from Leaflet rendering one).
|
||||
|
||||
Finally, this is now the javascript who create the datalayer uuid, and then push it to the back. This
|
||||
is for preparing for the synchronisation between clients.
|
||||
|
||||
### Breaking change
|
||||
|
||||
* if you use `X-Accel-Redirect` with Nginx, you **must** make sure that the `X-DataLayer-Version` header
|
||||
is forwarded to the client. This is the line you usually need to add in your Nginx `/internal/` config:
|
||||
|
||||
add_header X-DataLayer-Version $upstream_http_x_datalayer_version;
|
||||
|
||||
See the [documentation](deploy/nginx.md) for more informations.
|
||||
|
||||
### New features
|
||||
* add umap helm chart for Kubernetes deployment by @NaPs in #2286
|
||||
* support storing layer data in S3 like servers by @yohanboniface in #2304
|
||||
* introduce Map.share_status=DRAFT and DELETED by @yohanboniface in #2357
|
||||
* highlight importer URL field when it is fulfilled by @yohanboniface in #2323
|
||||
* swap import and settings buttons in edit toolbar by @yohanboniface in #2329
|
||||
* make expression persistent in the overpass importer by @yohanboniface in #2339
|
||||
* add basic autocompletion on inputs expecting a field name by @yohanboniface in #2281
|
||||
* allow to configure the default label keys per instance by @yohanboniface in #2291
|
||||
* display an image from Panoramax in OSM template when tag is defined by @yohanboniface in #2338
|
||||
* add a disabled/active mode to the submit button of import panel by @yohanboniface in #2341
|
||||
* open importers in a dialog instead of in the form by @yohanboniface in #2327
|
||||
* display wikipedia link in OSM popup template when possible by @yohanboniface in #2358
|
||||
* move labelKey field on the top datalayer form by @yohanboniface in #2350
|
||||
* add elevation gain and loss in extended properties by @yohanboniface in #2343
|
||||
* add a back button to importers dialog by @yohanboniface in #2364
|
||||
* load all datalayers in parallel by @yohanboniface in #2370
|
||||
* parse files in parallel at import when multiple by @yohanboniface in #2372
|
||||
* allow to edit datalayer name in datalayers list by @yohanboniface in #2349
|
||||
* experimental popup template for wikipedia by @yohanboniface in #2365
|
||||
|
||||
### Bug fixes
|
||||
* honour custom labelKey in default popup template by @yohanboniface in #2271
|
||||
* honour `rules` and `slideshow` when importing a umap file by @yohanboniface in #2270
|
||||
* use our fork of csv2geojson to be able to parse lat/lon with commas by @yohanboniface in #2263
|
||||
* allow spaces in iframe query strings in HTML formatting by @yohanboniface in #2292
|
||||
* do not fail when navigating with popup arrows in cluster mode by @yohanboniface in #2307
|
||||
* better login page styles and incentive by @davidbgk in #2293
|
||||
* compute length of all shapes for MultiLineString (not only first) by @yohanboniface in #2310
|
||||
* avoid map-panning on mobile using two fingers navigation by @fttriquet in #2340
|
||||
* do not try to restore a newly created layer on reset by @yohanboniface in #2381
|
||||
* do not unset map dirty status if it has not yet been saved once by @yohanboniface in #2382
|
||||
* refactor importer feedback by @yohanboniface in #2363
|
||||
* make sure we set X-DataLayer-Version even when using X-Accel-Redirect by @yohanboniface in #2361
|
||||
* bring marker to front on highlight by @yohanboniface in #2377
|
||||
* show private/draft maps in team maps for members by @yohanboniface in #2373
|
||||
|
||||
### Internal changes
|
||||
* introduce SaveManager class by @yohanboniface in #2240
|
||||
* split umap.js in two modules by @yohanboniface in #2257
|
||||
* make the client create the DataLayer.id by @yohanboniface in #2259
|
||||
* move editToolBar and captionBar to modules by @yohanboniface in #2272
|
||||
* update browserslist to be more explicit by @davidbgk in #2277
|
||||
* explicitely set postgis as db engine by @yohanboniface in #2285
|
||||
* add logo for social_core.backends.keycloak.KeycloakOAuth2 by @tomamplius in #2258
|
||||
|
||||
### Changed templates
|
||||
* umap/css.html:
|
||||
* added `umap/css/bar.css`
|
||||
* added `umap/css/popup.css`
|
||||
* umap/js.html:
|
||||
* added `umap/css/bar.js`
|
||||
* umap/templates/registration/login.html
|
||||
* umap/templates/umap/map_init.html
|
||||
* changed the way we instanciate `Umap` (instead of `U.Map`)
|
||||
* umap/templates/umap/user_dashboard.html
|
||||
* changed the way we instanciate `Umap` (instead of `U.Map`)
|
||||
|
||||
### New Contributors
|
||||
* @NaPs made their first contribution in #2286
|
||||
* @tomamplius made their first contribution in #2258
|
||||
* @fttriquet made their first contribution in #2340
|
||||
|
||||
|
||||
## 2.7.1 - 2024-10-25
|
||||
|
||||
### Bug fixes
|
||||
* use shutil.move instead of Path.rename to move to purgatory by @yohanboniface in #2236
|
||||
* always unset editedFeature on editPanel close by @yohanboniface in #2237
|
||||
|
||||
## 2.7.0 - 2024-10-24
|
||||
## 2.7.0b1 - 2024-10-04
|
||||
|
||||
### New features
|
||||
* delete datalayer's files on delete by @yohanboniface in #2158
|
||||
- deleted files will be moved to `UMAP_PURGATORY_ROOT`, so set this setting to
|
||||
somewhere meaningful for your instance (default is `/tmp/umappurgatory`)
|
||||
* very minimal CSV export of users and maps in admin by @yohanboniface in #2131
|
||||
* add a setting to prevent users from editing their profile by @davidbgk in #2133
|
||||
* allow to search by code INSEE in communes importer by @yohanboniface in #2188
|
||||
* add a profile drop-down menu by @yohanboniface in #2194
|
||||
* only add visible markers (and tooltips) to DOM by @yohanboniface in #2204
|
||||
* add a global toolbox in browser by @yohanboniface in #2160
|
||||
* add importer for French cadastre by @yohanboniface in #2223
|
||||
* display the number of connected peers in the interface. by @almet in #2177
|
||||
* allow to run umap with asgi by @yohanboniface in #2209
|
||||
|
||||
### Bug fixes
|
||||
* make sure maps of demo instances of uMap are no indexed by @yohanboniface in #2203
|
||||
* fix contextmenu positionning when map is not full screen by @yohanboniface in #2198
|
||||
* honour carriage returns in permanent credits by @yohanboniface in #2206
|
||||
* do not show browser counter when layer is empty or not loaded by @yohanboniface in #2217
|
||||
* fix dispeared icons from panel titles by @yohanboniface in #2222
|
||||
* use correct icon for layer download advanced action by @yohanboniface in #2224
|
||||
* do not try to create legend for non loaded classified layer by @yohanboniface in #2234
|
||||
* icon alignement in browser, and user icon-xxx class by @yohanboniface in #2132
|
||||
* editing coordinates manually would not be saved by @yohanboniface in #2147
|
||||
* remoteData helpEntries were not on the right format by @yohanboniface in #2183
|
||||
|
@ -355,10 +18,6 @@ is for preparing for the synchronisation between clients.
|
|||
* make sure anonymous is owner at create by @yohanboniface in #2189
|
||||
|
||||
### Internal changes
|
||||
* deactivate contextmenu and shortcuts in map preview by @yohanboniface in #2199
|
||||
* use pytest-rerunfailed by @yohanboniface in #2205
|
||||
* simplify contextmenu items by @yohanboniface in #2216
|
||||
* Docker: `version` is obsolete. by @Luen in #2220
|
||||
* get Github release notes from command line by @yohanboniface in #2130
|
||||
* rework permissions panel by @yohanboniface in #2121
|
||||
* new tutorial and improvements by @C-Sophie by @davidbgk in #2156 #2167
|
||||
|
@ -371,17 +30,8 @@ is for preparing for the synchronisation between clients.
|
|||
* remove zoom in and out from contextmenu by @yohanboniface in #2195
|
||||
|
||||
### Changed templates
|
||||
* umap/css.html:
|
||||
- removed `umap/vendors/contextmenu/leaflet.contextmenu.min.css`
|
||||
- added `umap/css/contextmenu.css`
|
||||
* umap/js.html:
|
||||
- removed `umap/vendors/contextmenu/leaflet.contextmenu.min.js`
|
||||
* umap/templates/umap/map_detail.html:
|
||||
- changed robot directive
|
||||
* umap/templates/umap/dashboard_menu.html
|
||||
- use of `UMAP_ALLOW_EDIT_PROFILE`
|
||||
|
||||
Thanks @Luen for their first contribution!
|
||||
* umap/css.html (removed `umap/vendors/contextmenu/leaflet.contextmenu.min.css`)
|
||||
* umap/js.html (removed `umap/vendors/contextmenu/leaflet.contextmenu.min.js`)
|
||||
|
||||
## 2.6.3 - 2024-09-11
|
||||
|
||||
|
|
|
@ -28,14 +28,6 @@ Can be set through env var too: `ALLOWED_HOSTS=umap.mydomain.org,u.mydomain.org`
|
|||
|
||||
Set it to `True` for easier debugging in case of error.
|
||||
|
||||
#### DEPRECATED_AUTHENTICATION_BACKENDS
|
||||
|
||||
List of auth backends to deprecate. Defining this will display a message to
|
||||
all users using this provider, to encourage them to configure another provider to
|
||||
their account.
|
||||
|
||||
DEPRECATED_AUTHENTICATION_BACKENDS = ["social_core.backends.twitter_oauth2.TwitterOAuth2"]
|
||||
|
||||
#### EMAIL_BACKEND
|
||||
|
||||
Must be configured if you want uMap to send emails to anonymous users.
|
||||
|
@ -88,19 +80,6 @@ Nginx configuration.
|
|||
|
||||
See [Django documentation for MEDIA_ROOT](https://docs.djangoproject.com/en/4.2/ref/settings/#media-root)
|
||||
|
||||
#### REALTIME_ENABLED
|
||||
|
||||
Setting `REALTIME_ENABLED` to `True` will allow users to enable real-time collaboration.
|
||||
A switch will be available for them in the "advanced properties" of the map.
|
||||
|
||||
See [the documentation about ASGI deployment](../deploy/asgi.md) for more information.
|
||||
|
||||
#### REDIS_URL
|
||||
|
||||
Connection URL to the Redis server. Only need for the real-time editing.
|
||||
|
||||
Default: `redis://localhost:6379`
|
||||
|
||||
#### SECRET_KEY
|
||||
|
||||
Must be defined to something unique and secret.
|
||||
|
@ -110,6 +89,13 @@ Running uMap / Django with a known SECRET_KEY defeats many of Django’s securit
|
|||
See [Django documentation for SECRET_KEY](https://docs.djangoproject.com/en/4.2/ref/settings/#secret-key)
|
||||
|
||||
|
||||
#### SITE_URL
|
||||
|
||||
The final URL of you instance, including the protocol:
|
||||
|
||||
`SITE_URL=http://umap.org`
|
||||
|
||||
|
||||
#### SHORT_SITE_URL
|
||||
|
||||
If you have a short domain for sharing links.
|
||||
|
@ -119,26 +105,7 @@ Eg.: `SHORT_SITE_URL=https://u.umap.org`
|
|||
|
||||
#### SITE_NAME
|
||||
|
||||
The name of the site, to be used in header.
|
||||
|
||||
|
||||
#### SITE_DESCRIPTION
|
||||
|
||||
The description of the site, to be used in HTML title.
|
||||
|
||||
|
||||
#### SITE_URL
|
||||
|
||||
The final URL of you instance, including the protocol:
|
||||
|
||||
`SITE_URL=http://umap.org`
|
||||
|
||||
|
||||
#### SOCIAL_AUTH_OPENSTREETMAP_OAUTH2_KEY, SOCIAL_AUTH_OPENSTREETMAP_OAUTH2_SECRET
|
||||
|
||||
If you use OpenStreetMap as OAuth 2 provider, you can use those settings.
|
||||
|
||||
Otherwise, use any valid [python-social-auth configuration](https://python-social-auth.readthedocs.io/en/latest/configuration/django.html).
|
||||
The name of the site, to be used in header and HTML title.
|
||||
|
||||
|
||||
#### STATIC_ROOT
|
||||
|
@ -148,12 +115,6 @@ Nginx configuration.
|
|||
|
||||
See [Django documentation for STATIC_ROOT](https://docs.djangoproject.com/en/4.2/ref/settings/#static-root)
|
||||
|
||||
|
||||
#### STORAGES
|
||||
|
||||
See [storage](storage.md).
|
||||
|
||||
|
||||
#### USE_I18N
|
||||
|
||||
Default is True. Set it to False if you don't want uMap to localize the app.
|
||||
|
@ -214,6 +175,11 @@ UMAP_EXTRA_URLS = {
|
|||
}
|
||||
```
|
||||
|
||||
#### UMAP_KEEP_VERSIONS
|
||||
|
||||
How many datalayer versions to keep. 10 by default.
|
||||
|
||||
|
||||
#### UMAP_DEFAULT_EDIT_STATUS
|
||||
|
||||
Define the map default edit status.
|
||||
|
@ -304,16 +270,6 @@ Available importers:
|
|||
- `communesfr`: download French communes boundaries, from https://geo.api.gouv.fr/
|
||||
- `datasets`: define URLs you want to promote to users, with a `name` and a `format`
|
||||
|
||||
#### UMAP_KEEP_VERSIONS
|
||||
|
||||
How many datalayer versions to keep. 10 by default.
|
||||
|
||||
#### UMAP_LABEL_KEYS
|
||||
|
||||
List of properties to consider as "Feature label" (to show in popup or in browser).
|
||||
|
||||
UMAP_LABEL_KEYS = ["name", "title"]
|
||||
|
||||
#### UMAP_MAPS_PER_PAGE
|
||||
|
||||
How many maps to show in maps list, like search or home page.
|
||||
|
@ -326,6 +282,12 @@ How many total maps to return in the search.
|
|||
|
||||
How many maps to show in the user "my maps" page.
|
||||
|
||||
#### UMAP_PURGATORY_ROOT
|
||||
|
||||
Path where files are moved when a datalayer is deleted. They will stay there until
|
||||
`umap purge_purgatory` is run. May be useful in case a user deletes by mistake
|
||||
a datalayer, or even a map.
|
||||
|
||||
#### UMAP_SEARCH_CONFIGURATION
|
||||
|
||||
Use it if you take control over the search configuration.
|
||||
|
@ -343,10 +305,7 @@ CREATE EXTENSION btree_gin;
|
|||
ALTER TEXT SEARCH CONFIGURATION umapdict ALTER MAPPING FOR hword, hword_part, word WITH unaccent, simple;
|
||||
|
||||
# Now create the index
|
||||
CREATE INDEX IF NOT EXISTS search_idx ON umap_map USING GIN(to_tsvector('umapdict', COALESCE(name, ''::character varying)::text), share_status, tags);
|
||||
|
||||
# You should also create an index for tag filtering:
|
||||
CREATE INDEX IF NOT EXISTS tags_idx ON umap_map USING GIN(share_status, tags);
|
||||
CREATE INDEX IF NOT EXISTS search_idx ON umap_map USING GIN(to_tsvector('umapdict', COALESCE(name, ''::character varying)::text), share_status);
|
||||
```
|
||||
|
||||
Then set:
|
||||
|
@ -368,3 +327,61 @@ Should uMap gzip datalayers geojson.
|
|||
Can be set to `X-Accel-Redirect` to enable the [NGINX X-Accel](https://www.nginx.com/resources/wiki/start/topics/examples/xsendfile/) feature.
|
||||
|
||||
See the NGINX documentation in addition.
|
||||
|
||||
#### SOCIAL_AUTH_OPENSTREETMAP_OAUTH2_KEY, SOCIAL_AUTH_OPENSTREETMAP_OAUTH2_SECRET
|
||||
|
||||
If you use OpenStreetMap as OAuth 2 provider, you can use those settings.
|
||||
|
||||
Otherwise, use any valid [python-social-auth configuration](https://python-social-auth.readthedocs.io/en/latest/configuration/django.html).
|
||||
|
||||
#### WEBSOCKET_ENABLED
|
||||
|
||||
A WebSocket server is packaged with uMap, and can be turned-on to activate
|
||||
"real-time collaboration". In practice, in order to enable it, a few settings
|
||||
are exposed.
|
||||
|
||||
Setting `WEBSOCKET_ENABLED` to `True` will **not** enable real-time
|
||||
collaboration on all the maps served by the server. Instead, a switch will be
|
||||
available in the "advanced properties" of the map.
|
||||
|
||||
The websocket server can be started with the following command:
|
||||
|
||||
```bash
|
||||
umap run_websocket_server
|
||||
```
|
||||
|
||||
And can take optional settings `--host` and `--port` (default values are defined in
|
||||
the settings).
|
||||
|
||||
Configuration example:
|
||||
|
||||
```python
|
||||
WEBSOCKET_ENABLED = True
|
||||
WEBSOCKET_BACK_HOST = "localhost"
|
||||
WEBSOCKET_BACK_PORT = 8002
|
||||
WEBSOCKET_FRONT_URI = "ws://localhost:8002"
|
||||
```
|
||||
|
||||
These settings can also be set with the (same names) environment variables.
|
||||
|
||||
#### WEBSOCKET_BACK_HOST
|
||||
#### WEBSOCKET_BACK_PORT
|
||||
|
||||
The internal host and port the websocket server will connect to.
|
||||
|
||||
#### WEBSOCKET_FRONT_URI
|
||||
|
||||
The connection string that will be used by the client to connect to the
|
||||
websocket server. In practice, as it's useful to put the WebSocket server behind
|
||||
TLS encryption, the values defined by `WEBSOCKET_FRONT_URI` are different than
|
||||
the values defined by `WEBSOCKET_BACK_PORT` and `WEBSOCKET_BACK_HOST`.
|
||||
|
||||
This value is comprised of three parts:
|
||||
|
||||
```
|
||||
protocol://host:port
|
||||
```
|
||||
|
||||
- `protocol`: can either be `ws` for plain unencrypted WebSockets, or `wss` when using TLS encryption.
|
||||
- `host`: is the address where the connection will be sent. It should be public facing.
|
||||
- `port`: is the port that is open on the host.
|
||||
|
|
|
@ -1,81 +0,0 @@
|
|||
# Storage
|
||||
|
||||
uMap stores metadata (such as owner, permissions…) in PostgreSQL, and the data itself (the content of a layer)
|
||||
in geojson format, by default on the local file system, but optionally in a S3 like server.
|
||||
|
||||
This can be configured through the `STORAGES` settings. uMap will use three keys:
|
||||
|
||||
- `default`, used only for the pictogram files, it can use whatever storage suits your needs
|
||||
- `staticfiles`, used to store the static files, it can use whatever storage suits your needs,
|
||||
but by default uses a custom storage that will add hash to the filenames, to be sure they
|
||||
are not kept in any cache after a release
|
||||
- `data`, used to store the layers data. This one should follow the uMap needs, and currently
|
||||
uMap provides only two options: `umap.storage.fs.FSDataStorage` and `umap.storage.s3.S3DataStorage`
|
||||
|
||||
## Default settings:
|
||||
|
||||
This will use the file system for everything, including the data.
|
||||
|
||||
```
|
||||
STORAGES = {
|
||||
"default": {
|
||||
"BACKEND": "django.core.files.storage.FileSystemStorage",
|
||||
},
|
||||
"data": {
|
||||
"BACKEND": "umap.storage.fs.FSDataStorage",
|
||||
},
|
||||
"staticfiles": {
|
||||
"BACKEND": "umap.storage.staticfiles.UmapManifestStaticFilesStorage",
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
## Using S3
|
||||
|
||||
To use an S3 like server for the layers data, the first thing is to install
|
||||
the needed dependencies: `pip install umap-project[s3]`.
|
||||
|
||||
Then, change the `STORAGES` settings with something like this:
|
||||
|
||||
```
|
||||
STORAGES = {
|
||||
"default": {
|
||||
"BACKEND": "storages.backends.s3.S3Storage",
|
||||
"OPTIONS": {
|
||||
"access_key": "xxx",
|
||||
"secret_key": "yyy",
|
||||
"bucket_name": "umap-pictograms",
|
||||
"endpoint_url": "http://127.0.0.1:9000",
|
||||
"default_acl": "public-read",
|
||||
},
|
||||
},
|
||||
"data": {
|
||||
# Whatch out, this is a dedicated uMap class!
|
||||
"BACKEND": "umap.storage.s3.S3DataStorage",
|
||||
"OPTIONS": {
|
||||
"access_key": "xxx",
|
||||
"secret_key": "yyy",
|
||||
"bucket_name": "umap-data",
|
||||
"endpoint_url": "http://127.0.0.1:9000",
|
||||
},
|
||||
},
|
||||
"staticfiles": {
|
||||
"BACKEND": "storages.backends.s3.S3Storage",
|
||||
"OPTIONS": {
|
||||
"access_key": "xxx",
|
||||
"secret_key": "yyy",
|
||||
"bucket_name": "umapstatics",
|
||||
"endpoint_url": "http://127.0.0.1:9000",
|
||||
"default_acl": "public-read",
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
As you can see in this example, both `staticfiles` and `default` use the storage class provided
|
||||
by `django-storages` (`storages.backends.s3.S3Storage`), but the `data` one uses a specific class
|
||||
(`umap.storage.s3.S3DataStorage`).
|
||||
|
||||
In order to store old versions of a layer, the versioning should be activated in the bucket.
|
||||
|
||||
See more about the configuration on the [django-storages documentation](https://django-storages.readthedocs.io/en/latest/backends/amazon-S3.html).
|
|
@ -1,92 +0,0 @@
|
|||
# ASGI
|
||||
|
||||
While uMap has been historically deployed using the WSGI specification,
|
||||
there is now an **experimental** ASGI endpoint. This will be the way to
|
||||
deploy uMap to use the live collaborative editing feature, which needs
|
||||
websockets.
|
||||
|
||||
## Nginx
|
||||
|
||||
When using ASGI, the [nginx](nginx.md), the `/` entrypoint should be:
|
||||
|
||||
```
|
||||
location / {
|
||||
proxy_set_header Host $http_host;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection $connection_upgrade;
|
||||
proxy_redirect off;
|
||||
proxy_buffering off;
|
||||
proxy_pass http://umap/;
|
||||
}
|
||||
```
|
||||
|
||||
Also add this mapping for the `$connection_upgrade` variable:
|
||||
|
||||
```
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default upgrade;
|
||||
'' close;
|
||||
}
|
||||
```
|
||||
|
||||
## Uvicorn
|
||||
|
||||
Uvicorn must be installed in the umap virtualenv:
|
||||
|
||||
/path/to/umap/venv/bin/pip install uvicorn
|
||||
|
||||
And could then be run like this:
|
||||
|
||||
/path/to/umap/venv/bin/uvicorn \
|
||||
--proxy-headers \
|
||||
--uds /srv/umap/umap.sock \
|
||||
--no-access-log \
|
||||
umap.asgi:application
|
||||
|
||||
## Systemd
|
||||
|
||||
Here is an example service to manage uvicorn with systemd:
|
||||
|
||||
```
|
||||
[Unit]
|
||||
Description=umap
|
||||
After=network.target
|
||||
Requires=postgresql.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=umap
|
||||
|
||||
WorkingDirectory=/srv/umap/
|
||||
PrivateTmp=true
|
||||
|
||||
EnvironmentFile=/srv/umap/env
|
||||
|
||||
ExecStart=/srv/umap/venv/bin/uvicorn \
|
||||
--proxy-headers \
|
||||
--uds /srv/umap/uvicorn.sock \
|
||||
--no-access-log \
|
||||
umap.asgi:application
|
||||
ExecReload=/bin/kill -HUP ${MAINPID}
|
||||
RestartSec=1
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
Then to install it and enable it, copy it to `/etc/systemd/system/umap.service`
|
||||
and run:
|
||||
|
||||
sudo systemctl enable umap.service
|
||||
|
||||
## Env
|
||||
|
||||
Uvicorn can be [configured](https://www.uvicorn.org/deployment/) from env vars,
|
||||
for example to define the number of workers:
|
||||
|
||||
```env title="/srv/umap/env"
|
||||
UVICORN_WORKERS=4
|
||||
```
|
|
@ -3,6 +3,7 @@
|
|||
An official uMap docker image is [available on the docker hub](https://hub.docker.com/r/umap/umap). But, if you prefer to run it with docker compose, here is the configuration file:
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
version: '3'
|
||||
services:
|
||||
db:
|
||||
# check https://hub.docker.com/r/postgis/postgis to see available versions
|
||||
|
@ -14,7 +15,7 @@ services:
|
|||
|
||||
app:
|
||||
# Check https://hub.docker.com/r/umap/umap/tags to find the latest version
|
||||
image: umap/umap:2.9.3
|
||||
image: umap/umap:2.0.2
|
||||
ports:
|
||||
# modify the external port (8001, on the left) if desired, but make sure it matches SITE_URL, below
|
||||
- "8001:8000"
|
||||
|
@ -48,45 +49,3 @@ User accounts can be managed via the Django admin page ({SITE_URL}/admin). The r
|
|||
```bash
|
||||
umap createsuperuser
|
||||
```
|
||||
|
||||
## Developping with Docker
|
||||
|
||||
If you want to develop with podman or docker, here are commands that might be useful, given that you have a postgreSQL server running locally and that your settings are located at `umap.conf`:
|
||||
|
||||
You can build the docker image with:
|
||||
|
||||
```bash
|
||||
podman build -t umap .
|
||||
```
|
||||
|
||||
And run it with:
|
||||
|
||||
```bash
|
||||
podman run -v ./umap.conf:/tmp/umap.conf -e UMAP_SETTINGS=/tmp/umap.conf -it --network host umap
|
||||
```
|
||||
|
||||
## Real time collaboration
|
||||
|
||||
To enable real time collaboration when using Docker, a Redis service must be added. Something like this in `docker-compose.py` world:
|
||||
|
||||
```yaml title="docker-compose.yml"
|
||||
services
|
||||
redis:
|
||||
image: redis:latest
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
||||
…
|
||||
command: ["redis-server"]
|
||||
…
|
||||
app:
|
||||
depends_on:
|
||||
…
|
||||
redis:
|
||||
condition: service_healthy
|
||||
…
|
||||
environment:
|
||||
- REALTIME_ENABLED=1
|
||||
- REDIS_URL=redis://redis:6379
|
||||
…
|
||||
|
||||
```
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
# Helm
|
||||
|
||||
To deploy using helm:
|
||||
|
||||
helm install <my-release> oci://registry-1.docker.io/umap/umap
|
||||
|
||||
Helm chart is pushed here: https://hub.docker.com/repository/docker/umap/umap/tags
|
|
@ -1,10 +1,84 @@
|
|||
# Configuring Nginx
|
||||
|
||||
See [WSGI](wsgi.md) or [ASGI](asgi.md) for a basic setup.
|
||||
Here are some configuration files to use umap with nginx and [uWSGI](https://uwsgi-docs.readthedocs.io/en/latest/), a server for python, which will handle your processes for you.
|
||||
|
||||
Then consider adding this configuration
|
||||
```nginx title="nginx.conf"
|
||||
upstream umap {
|
||||
server unix:///srv/umap/uwsgi.sock;
|
||||
}
|
||||
|
||||
## Static files and geojson
|
||||
server {
|
||||
# the port your site will be served on
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
listen 443 ssl;
|
||||
listen [::]:443 ssl;
|
||||
# the domain name it will serve for
|
||||
server_name your-domain.org;
|
||||
charset utf-8;
|
||||
|
||||
# max upload size
|
||||
client_max_body_size 5M; # adjust to taste
|
||||
|
||||
# Finally, send all non-media requests to the Django server.
|
||||
location / {
|
||||
uwsgi_pass umap;
|
||||
include /srv/umap/uwsgi_params;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## uWSGI
|
||||
|
||||
|
||||
```nginx title="uwsgi_params"
|
||||
uwsgi_param QUERY_STRING $query_string;
|
||||
uwsgi_param REQUEST_METHOD $request_method;
|
||||
uwsgi_param CONTENT_TYPE $content_type;
|
||||
uwsgi_param CONTENT_LENGTH $content_length;
|
||||
|
||||
uwsgi_param REQUEST_URI $request_uri;
|
||||
uwsgi_param PATH_INFO $document_uri;
|
||||
uwsgi_param DOCUMENT_ROOT $document_root;
|
||||
uwsgi_param SERVER_PROTOCOL $server_protocol;
|
||||
uwsgi_param REQUEST_SCHEME $scheme;
|
||||
uwsgi_param HTTPS $https if_not_empty;
|
||||
|
||||
uwsgi_param REMOTE_ADDR $remote_addr;
|
||||
uwsgi_param REMOTE_PORT $remote_port;
|
||||
uwsgi_param SERVER_PORT $server_port;
|
||||
uwsgi_param SERVER_NAME $server_name;
|
||||
```
|
||||
|
||||
|
||||
```ini title="uwsgi.ini"
|
||||
[uwsgi]
|
||||
uid = umap
|
||||
gid = users
|
||||
# Python related settings
|
||||
# the base directory (full path)
|
||||
chdir = /srv/umap/
|
||||
# umap's wsgi module
|
||||
module = umap.wsgi
|
||||
# the virtualenv (full path)
|
||||
home = /srv/umap/venv
|
||||
|
||||
# process-related settings
|
||||
# master
|
||||
master = true
|
||||
# maximum number of worker processes
|
||||
processes = 4
|
||||
# the socket (use the full path to be safe)
|
||||
socket = /srv/umap/uwsgi.sock
|
||||
# ... with appropriate permissions - may be needed
|
||||
chmod-socket = 666
|
||||
stats = /srv/umap/stats.sock
|
||||
# clear environment on exit
|
||||
vacuum = true
|
||||
plugins = python3
|
||||
```
|
||||
|
||||
## Static files
|
||||
|
||||
```nginx title="nginx.conf"
|
||||
location /static {
|
||||
|
@ -42,53 +116,6 @@ UMAP_XSENDFILE_HEADER = 'X-Accel-Redirect'
|
|||
internal;
|
||||
gzip_vary on;
|
||||
gzip_static on;
|
||||
# Next line is very important!
|
||||
add_header X-DataLayer-Version $upstream_http_x_datalayer_version;
|
||||
alias /path/to/umap/var/data/;
|
||||
}
|
||||
```
|
||||
|
||||
## Ajax proxy
|
||||
|
||||
In order for users to load CORS protected data within a map, Nginx can act as a proxy.
|
||||
Here is an example configuration for this:
|
||||
|
||||
```
|
||||
|
||||
location ~ ^/proxy/(.*) {
|
||||
internal;
|
||||
add_header X-Proxy-Cache $upstream_cache_status always;
|
||||
proxy_cache_background_update on;
|
||||
proxy_cache_use_stale updating;
|
||||
proxy_cache ajax_proxy;
|
||||
proxy_cache_valid 1m; # Default. Umap will override using X-Accel-Expires
|
||||
set $target_url $1;
|
||||
# URL is encoded, so we need a few hack to clean it back.
|
||||
if ( $target_url ~ (.+)%3A%2F%2F(.+) ){ # fix :// between scheme and destination
|
||||
set $target_url $1://$2;
|
||||
}
|
||||
if ( $target_url ~ (.+?)%3A(.*) ){ # fix : between destination and port
|
||||
set $target_url $1:$2;
|
||||
}
|
||||
if ( $target_url ~ (.+?)%2F(.*) ){ # fix / after port, the rest will be decoded by proxy_pass
|
||||
set $target_url $1/$2;
|
||||
}
|
||||
resolver 8.8.8.8;
|
||||
add_header X-Proxy-Target $target_url; # For debugging
|
||||
proxy_pass_request_headers off;
|
||||
proxy_set_header Content-Type $http_content_type;
|
||||
proxy_set_header Content-Encoding $http_content_encoding;
|
||||
proxy_set_header Content-Length $http_content_length;
|
||||
proxy_read_timeout 10s;
|
||||
proxy_connect_timeout 5s;
|
||||
proxy_ssl_server_name on;
|
||||
proxy_pass $target_url;
|
||||
proxy_intercept_errors on;
|
||||
error_page 301 302 307 = @handle_proxy_redirect;
|
||||
}
|
||||
location @handle_proxy_redirect {
|
||||
resolver 8.8.8.8;
|
||||
set $saved_redirect_location '$upstream_http_location';
|
||||
proxy_pass $saved_redirect_location;
|
||||
}
|
||||
```
|
||||
|
|
|
@ -1,37 +0,0 @@
|
|||
# Deploying uMap
|
||||
|
||||
uMap is a python package, running [Django](https://docs.djangoproject.com/en/5.2/howto/deployment/),
|
||||
so anyone experimented with this stack will find it familiar, but there are some speficic details
|
||||
to know about.
|
||||
|
||||
## Data
|
||||
One important design point of uMap is that while metadata are stored in a PostgreSQL database, the
|
||||
data itself is stored in the file system, as geojson files. This design choice has been made
|
||||
to make uMap scale better, as there are much more reads than writes, and when some
|
||||
map is shared a lot (like on a national media) we want to be able to serve it without needing an
|
||||
overcomplex and costly stack.
|
||||
|
||||
So when a request for data is made (that is on a *DataLayer*), the flow is that uMap will read
|
||||
the request headers to check for permissions, and then it will forward the request to Nginx,
|
||||
that will properly serve the data (a geojson file), without consuming a python worker, and with
|
||||
much more efficiency than python.
|
||||
|
||||
In DEBUG mode, uMap will serve the geojson itself, but this is not recommended in production,
|
||||
unless you have a very small audience.
|
||||
|
||||
Data can also be stored in a [S3 like storage](../config/storage/#using-s3).
|
||||
|
||||
## Assets (JS, CSS…)
|
||||
As any web app, uMap also needs static files to be served. In DEBUG mode, Django will do this
|
||||
kindly, but not in production. See [Nginx configuration](nginx.md) for this.
|
||||
|
||||
Assets can also be stored in a [S3 like storage](../config/storage/#using-s3).
|
||||
|
||||
## python app (metadata, permissions…)
|
||||
|
||||
uMap needs a python server, which can either be of [WSGI](wsgi.md) or [ASGI](asgi.md) (this later
|
||||
is needed in order to use the collaborative live editing).
|
||||
|
||||
## Redis
|
||||
|
||||
Still when using the collaborative live editing, uMap needs a [Redis](../config/settings.md#redis_url) server, to act as pubsub.
|
|
@ -1,87 +0,0 @@
|
|||
# WSGI
|
||||
|
||||
WSGI is the historical standard to serve python in general, and uMap in this case.
|
||||
From recently, uMap also supports [ASGI](asgi.md), which is required to use the
|
||||
collaborative editing feature.
|
||||
|
||||
## uWSGI
|
||||
|
||||
In Nginx host, use:
|
||||
|
||||
```nginx title="nginx.conf"
|
||||
upstream umap {
|
||||
server unix:///srv/umap/umap.sock;
|
||||
}
|
||||
|
||||
server {
|
||||
# the port your site will be served on
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
listen 443 ssl;
|
||||
listen [::]:443 ssl;
|
||||
# the domain name it will serve for
|
||||
server_name your-domain.org;
|
||||
charset utf-8;
|
||||
|
||||
# max upload size
|
||||
client_max_body_size 5M; # adjust to taste
|
||||
|
||||
# Finally, send all non-media requests to the Django server.
|
||||
location / {
|
||||
uwsgi_pass umap;
|
||||
include /srv/umap/uwsgi_params;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
|
||||
```nginx title="uwsgi_params"
|
||||
uwsgi_param QUERY_STRING $query_string;
|
||||
uwsgi_param REQUEST_METHOD $request_method;
|
||||
uwsgi_param CONTENT_TYPE $content_type;
|
||||
uwsgi_param CONTENT_LENGTH $content_length;
|
||||
|
||||
uwsgi_param REQUEST_URI $request_uri;
|
||||
uwsgi_param PATH_INFO $document_uri;
|
||||
uwsgi_param DOCUMENT_ROOT $document_root;
|
||||
uwsgi_param SERVER_PROTOCOL $server_protocol;
|
||||
uwsgi_param REQUEST_SCHEME $scheme;
|
||||
uwsgi_param HTTPS $https if_not_empty;
|
||||
|
||||
uwsgi_param REMOTE_ADDR $remote_addr;
|
||||
uwsgi_param REMOTE_PORT $remote_port;
|
||||
uwsgi_param SERVER_PORT $server_port;
|
||||
uwsgi_param SERVER_NAME $server_name;
|
||||
```
|
||||
|
||||
|
||||
```ini title="uwsgi.ini"
|
||||
[uwsgi]
|
||||
uid = umap
|
||||
gid = users
|
||||
# Python related settings
|
||||
# the base directory (full path)
|
||||
chdir = /srv/umap/
|
||||
# umap's wsgi module
|
||||
module = umap.wsgi
|
||||
# the virtualenv (full path)
|
||||
home = /srv/umap/venv
|
||||
|
||||
# process-related settings
|
||||
# master
|
||||
master = true
|
||||
# maximum number of worker processes
|
||||
processes = 4
|
||||
# the socket (use the full path to be safe)
|
||||
socket = /srv/umap/umap.sock
|
||||
# ... with appropriate permissions - may be needed
|
||||
chmod-socket = 666
|
||||
stats = /srv/umap/stats.sock
|
||||
# clear environment on exit
|
||||
vacuum = true
|
||||
plugins = python3
|
||||
```
|
||||
|
||||
|
||||
See also [Django documentation](https://docs.djangoproject.com/en/5.2/howto/deployment/wsgi/).
|
|
@ -63,3 +63,15 @@ When the data layers are initialized, they can have two states:
|
|||
To mark what needs to be synced with the server, uMap currently mark objects as "dirty". Something marked as "dirty" has changed on the client, but is not yet saved on the server.
|
||||
|
||||
Each map, datalayer and permission objects can be marked as "dirty". When a change is made on an object, it will mark its parent as "dirty" as well, so it can be updated accordingly.
|
||||
|
||||
### Saving data to the server with `umap.save()`
|
||||
|
||||
Here is what's being done when you call `map.save()`:
|
||||
|
||||
1. `map.saveSelf()`, posting `name`, `center` and `settings` to the server, and then
|
||||
2. calls `permission.save()`, which will post the permissions to the server, and then call back
|
||||
3. `map.continueSaving()`, which will take the first dirtyLayer and call
|
||||
4. `datalayer.save()` on it. It does the following:
|
||||
1. Post the data (`name`, `displayOnLoad`, `rank`, `settings`, and `geojson`)
|
||||
2. Calls `permission.save()`, posting `edit_status` to the server, and then calling `map.continue_saving()` and remove the datalayer from `dirtyDatalayers`.
|
||||
5. When the `dirtyDatalayers` list is empty, we are done.
|
||||
|
|
|
@ -27,9 +27,10 @@
|
|||
4. `git tag 2.X.Y`
|
||||
5. `git push && git push --tag`
|
||||
6. Go to [Github release page](https://github.com/umap-project/umap/releases/new) and paste release notes
|
||||
7. `make build`
|
||||
8. `make publish`
|
||||
9. `make docker`
|
||||
7. Commit the changelog `git commit -am "changelog"`
|
||||
8. `make build`
|
||||
9. `make publish`
|
||||
10. `make docker`
|
||||
|
||||
### Deploying instances
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Force rtfd to use a recent version of mkdocs
|
||||
mkdocs==1.6.1
|
||||
pymdown-extensions==10.14.3
|
||||
mkdocs-material==9.6.12
|
||||
mkdocs-static-i18n==1.3.0
|
||||
pymdown-extensions==10.11.2
|
||||
mkdocs-material==9.5.39
|
||||
mkdocs-static-i18n==1.2.3
|
||||
|
|
|
@ -15,15 +15,10 @@ nav:
|
|||
- Configuration:
|
||||
- Settings: config/settings.md
|
||||
- Customize: config/customize.md
|
||||
- Storage: config/storage.md
|
||||
- Icon packs: config/icons.md
|
||||
- Deployment:
|
||||
- Overview: deploy/overview.md
|
||||
- Docker: deploy/docker.md
|
||||
- Helm: deploy/helm.md
|
||||
- Nginx: deploy/nginx.md
|
||||
- ASGI: deploy/asgi.md
|
||||
- WSGI: deploy/wsgi.md
|
||||
- Changelog: changelog.md
|
||||
theme:
|
||||
name: material
|
||||
|
|
24
package.json
|
@ -14,7 +14,8 @@
|
|||
"fetch-mock": "^9.11.0",
|
||||
"happen": "~0.1.3",
|
||||
"lebab": "^3.2.1",
|
||||
"mocha": "10.7.3",
|
||||
"mocha": "^10.3.0",
|
||||
"optimist": "~0.4.0",
|
||||
"sinon": "^15.1.0",
|
||||
"uglify-js": "~3.17.4"
|
||||
},
|
||||
|
@ -37,16 +38,17 @@
|
|||
"homepage": "http://wiki.openstreetmap.org/wiki/UMap",
|
||||
"dependencies": {
|
||||
"@dwayneparton/geojson-to-gpx": "^0.2.0",
|
||||
"@placemarkio/tokml": "0.3.4",
|
||||
"@tmcw/togeojson": "^7.1.0",
|
||||
"colorbrewer": "1.5.7",
|
||||
"csv2geojson": "github:umap-project/csv2geojson#patched",
|
||||
"dompurify": "3.2.4",
|
||||
"@placemarkio/tokml": "^0.3.3",
|
||||
"@tmcw/togeojson": "^5.8.0",
|
||||
"colorbrewer": "^1.5.6",
|
||||
"csv2geojson": "5.1.2",
|
||||
"dompurify": "^3.0.11",
|
||||
"georsstogeojson": "^0.2.0",
|
||||
"jsdom": "^24.0.0",
|
||||
"leaflet": "1.9.4",
|
||||
"leaflet-editable": "^1.3.1",
|
||||
"leaflet-editable": "^1.3.0",
|
||||
"leaflet-editinosm": "0.2.3",
|
||||
"leaflet-formbuilder": "0.2.10",
|
||||
"leaflet-fullscreen": "1.0.2",
|
||||
"leaflet-hash": "0.2.1",
|
||||
"leaflet-i18n": "0.3.5",
|
||||
|
@ -56,14 +58,14 @@
|
|||
"leaflet-minimap": "^3.6.1",
|
||||
"leaflet-toolbar": "umap-project/Leaflet.toolbar",
|
||||
"leaflet.heat": "0.2.0",
|
||||
"leaflet.locatecontrol": "0.81.1",
|
||||
"leaflet.locatecontrol": "^0.79.0",
|
||||
"leaflet.markercluster": "^1.5.3",
|
||||
"leaflet.path.drag": "0.0.6",
|
||||
"leaflet.photon": "0.9.2",
|
||||
"leaflet.photon": "0.9.1",
|
||||
"osmtogeojson": "^3.0.0-beta.5",
|
||||
"simple-statistics": "7.8.5"
|
||||
"simple-statistics": "^7.8.3"
|
||||
},
|
||||
"browserslist": [
|
||||
"defaults and fully supports es6-module"
|
||||
"> 0.5%, last 2 versions, Firefox ESR, not dead, not op_mini all"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -28,52 +28,43 @@ classifiers = [
|
|||
"Programming Language :: Python :: 3.12",
|
||||
]
|
||||
dependencies = [
|
||||
"Django==5.1.8",
|
||||
"Django==5.1.1",
|
||||
"django-agnocomplete==2.2.0",
|
||||
"django-environ==0.12.0",
|
||||
"django-environ==0.11.2",
|
||||
"django-probes==1.7.0",
|
||||
"Pillow==11.2.1",
|
||||
"psycopg==3.2.6",
|
||||
"Pillow==10.4.0",
|
||||
"psycopg==3.2.3",
|
||||
"pydantic==2.9.2",
|
||||
"requests==2.32.3",
|
||||
"rcssmin==1.2.1",
|
||||
"rjsmin==1.2.4",
|
||||
"social-auth-core==4.5.6",
|
||||
"social-auth-app-django==5.4.3",
|
||||
"rcssmin==1.1.2",
|
||||
"rjsmin==1.2.2",
|
||||
"social-auth-core==4.5.4",
|
||||
"social-auth-app-django==5.4.2",
|
||||
"websockets==13.1",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
dev = [
|
||||
"hatch==1.14.1",
|
||||
"ruff==0.11.6",
|
||||
"djlint==1.36.4",
|
||||
"hatch==1.12.0",
|
||||
"ruff==0.6.8",
|
||||
"djlint==1.35.2",
|
||||
"mkdocs==1.6.1",
|
||||
"mkdocs-material==9.6.12",
|
||||
"mkdocs-static-i18n==1.3.0",
|
||||
"mkdocs-material==9.5.39",
|
||||
"mkdocs-static-i18n==1.2.3",
|
||||
"vermin==1.6.0",
|
||||
"pymdown-extensions==10.14.3",
|
||||
"isort==6.0.1",
|
||||
"pymdown-extensions==10.11.2",
|
||||
"isort==5.13.2",
|
||||
]
|
||||
test = [
|
||||
"daphne==4.1.2",
|
||||
"factory-boy==3.3.3",
|
||||
"factory-boy==3.3.1",
|
||||
"playwright>=1.39",
|
||||
"pytest==8.3.5",
|
||||
"pytest-django==4.11.1",
|
||||
"pytest-playwright==0.7.0",
|
||||
"pytest-rerunfailures==15.0",
|
||||
"pytest==8.3.3",
|
||||
"pytest-django==4.9.0",
|
||||
"pytest-playwright==0.5.2",
|
||||
"pytest-xdist>=3.5.0,<4",
|
||||
"moto[s3]==5.1.4"
|
||||
]
|
||||
docker = [
|
||||
"uvicorn==0.34.2",
|
||||
]
|
||||
s3 = [
|
||||
"django-storages[s3]==1.14.6",
|
||||
]
|
||||
sync = [
|
||||
"pydantic==2.11.3",
|
||||
"redis==5.2.1",
|
||||
"websockets==15.0.1",
|
||||
"uwsgi==2.0.27",
|
||||
]
|
||||
|
||||
[project.scripts]
|
||||
|
@ -104,6 +95,3 @@ format_css=true
|
|||
blank_line_after_tag="load,extends"
|
||||
line_break_after_multiline_tag=true
|
||||
|
||||
[lint]
|
||||
# Disable autoremove of unused import.
|
||||
unfixable = ["F401"]
|
||||
|
|
|
@ -16,6 +16,8 @@ mkdir -p umap/static/umap/vendors/markercluster/ && cp -r node_modules/leaflet.m
|
|||
mkdir -p umap/static/umap/vendors/markercluster/ && cp -r node_modules/leaflet.markercluster/dist/MarkerCluster.* umap/static/umap/vendors/markercluster/
|
||||
mkdir -p umap/static/umap/vendors/heat/ && cp -r node_modules/leaflet.heat/dist/leaflet-heat.js umap/static/umap/vendors/heat/
|
||||
mkdir -p umap/static/umap/vendors/fullscreen/ && cp -r node_modules/leaflet-fullscreen/dist/** umap/static/umap/vendors/fullscreen/
|
||||
mkdir -p umap/static/umap/vendors/toolbar/ && cp -r node_modules/leaflet-toolbar/dist/leaflet.toolbar.* umap/static/umap/vendors/toolbar/
|
||||
mkdir -p umap/static/umap/vendors/formbuilder/ && cp -r node_modules/leaflet-formbuilder/Leaflet.FormBuilder.js umap/static/umap/vendors/formbuilder/
|
||||
mkdir -p umap/static/umap/vendors/measurable/ && cp -r node_modules/leaflet-measurable/Leaflet.Measurable.* umap/static/umap/vendors/measurable/
|
||||
mkdir -p umap/static/umap/vendors/photon/ && cp -r node_modules/leaflet.photon/leaflet.photon.js umap/static/umap/vendors/photon/
|
||||
mkdir -p umap/static/umap/vendors/csv2geojson/ && cp -r node_modules/csv2geojson/csv2geojson.js umap/static/umap/vendors/csv2geojson/
|
||||
|
@ -28,7 +30,7 @@ mkdir -p umap/static/umap/vendors/georsstogeojson/ && cp -r node_modules/georsst
|
|||
mkdir -p umap/static/umap/vendors/locatecontrol/ && cp -r node_modules/leaflet.locatecontrol/dist/L.Control.Locate.min.* umap/static/umap/vendors/locatecontrol/
|
||||
mkdir -p umap/static/umap/vendors/dompurify/ && cp -r node_modules/dompurify/dist/purify.es.mjs umap/static/umap/vendors/dompurify/purify.es.js
|
||||
mkdir -p umap/static/umap/vendors/dompurify/ && cp -r node_modules/dompurify/dist/purify.es.mjs.map umap/static/umap/vendors/dompurify/purify.es.mjs.map
|
||||
mkdir -p umap/static/umap/vendors/colorbrewer/ && cp node_modules/colorbrewer/index.es.js umap/static/umap/vendors/colorbrewer/colorbrewer.js
|
||||
mkdir -p umap/static/umap/vendors/colorbrewer/ && cp node_modules/colorbrewer/index.js umap/static/umap/vendors/colorbrewer/colorbrewer.js
|
||||
mkdir -p umap/static/umap/vendors/simple-statistics/ && cp node_modules/simple-statistics/dist/simple-statistics.min.* umap/static/umap/vendors/simple-statistics/
|
||||
mkdir -p umap/static/umap/vendors/iconlayers/ && cp node_modules/leaflet-iconlayers/dist/* umap/static/umap/vendors/iconlayers/
|
||||
mkdir -p umap/static/umap/vendors/geojson-to-gpx/ && cp node_modules/@dwayneparton/geojson-to-gpx/dist/index.js umap/static/umap/vendors/geojson-to-gpx/
|
||||
|
|
|
@ -1 +1 @@
|
|||
VERSION = "3.0.5"
|
||||
VERSION = "2.7.0b1"
|
||||
|
|
|
@ -69,18 +69,9 @@ class PictogramAdmin(admin.ModelAdmin):
|
|||
list_filter = ("category",)
|
||||
|
||||
|
||||
class TeamAdmin(CSVExportMixin, admin.ModelAdmin):
|
||||
csv_fields = [
|
||||
"pk",
|
||||
"name",
|
||||
"users_count",
|
||||
]
|
||||
list_display = list(admin.ModelAdmin.list_display) + ["users_count"]
|
||||
class TeamAdmin(admin.ModelAdmin):
|
||||
filter_horizontal = ("users",)
|
||||
|
||||
def users_count(self, obj):
|
||||
return obj.users.count()
|
||||
|
||||
|
||||
class UserAdmin(CSVExportMixin, UserAdminBase):
|
||||
csv_fields = [
|
||||
|
@ -92,17 +83,13 @@ class UserAdmin(CSVExportMixin, UserAdminBase):
|
|||
"last_login",
|
||||
"date_joined",
|
||||
"maps_count",
|
||||
"user_teams",
|
||||
]
|
||||
list_display = list(UserAdminBase.list_display) + ["maps_count", "user_teams"]
|
||||
list_display = list(UserAdminBase.list_display) + ["maps_count"]
|
||||
|
||||
def maps_count(self, obj):
|
||||
# owner maps + maps as editor
|
||||
return obj.owned_maps.count() + obj.map_set.count()
|
||||
|
||||
def user_teams(self, obj):
|
||||
return " ; ".join(obj.teams.values_list("name", flat=True))
|
||||
|
||||
|
||||
admin.site.register(Map, MapAdmin)
|
||||
admin.site.register(DataLayer)
|
||||
|
|
20
umap/asgi.py
|
@ -1,20 +0,0 @@
|
|||
import os
|
||||
|
||||
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "umap.settings")
|
||||
|
||||
from django.core.asgi import get_asgi_application
|
||||
|
||||
from .sync.app import application as ws_application
|
||||
|
||||
# Initialize Django ASGI application early to ensure the AppRegistry
|
||||
# is populated before importing code that may import ORM models.
|
||||
django_asgi_app = get_asgi_application()
|
||||
|
||||
|
||||
async def application(scope, receive, send):
|
||||
if scope["type"] == "http":
|
||||
await django_asgi_app(scope, receive, send)
|
||||
elif scope["type"] == "websocket":
|
||||
await ws_application(scope, receive, send)
|
||||
else:
|
||||
raise NotImplementedError(f"Unknown scope type {scope['type']}")
|
|
@ -2,7 +2,6 @@ from agnocomplete.core import AgnocompleteModel
|
|||
from agnocomplete.register import register
|
||||
from django.conf import settings
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.db.models.functions import Length
|
||||
|
||||
|
||||
@register
|
||||
|
@ -14,11 +13,3 @@ class AutocompleteUser(AgnocompleteModel):
|
|||
data = super().item(current_item)
|
||||
data["url"] = current_item.get_url()
|
||||
return data
|
||||
|
||||
def build_extra_filtered_queryset(self, queryset, **kwargs):
|
||||
order_by = []
|
||||
for field_name in self.fields:
|
||||
if not field_name[0].isalnum():
|
||||
field_name = field_name[1:]
|
||||
order_by.append(Length(field_name).asc())
|
||||
return queryset.order_by(*order_by)
|
||||
|
|
|
@ -7,14 +7,12 @@ def settings(request):
|
|||
return {
|
||||
"UMAP_HELP_URL": djsettings.UMAP_HELP_URL,
|
||||
"SITE_NAME": djsettings.SITE_NAME,
|
||||
"SITE_DESCRIPTION": djsettings.SITE_DESCRIPTION,
|
||||
"SITE_URL": djsettings.SITE_URL,
|
||||
"ENABLE_ACCOUNT_LOGIN": djsettings.ENABLE_ACCOUNT_LOGIN,
|
||||
"UMAP_READONLY": djsettings.UMAP_READONLY,
|
||||
"UMAP_DEMO_SITE": djsettings.UMAP_DEMO_SITE,
|
||||
"UMAP_HOST_INFOS": djsettings.UMAP_HOST_INFOS,
|
||||
"UMAP_ALLOW_EDIT_PROFILE": djsettings.UMAP_ALLOW_EDIT_PROFILE,
|
||||
"UMAP_TAGS": djsettings.UMAP_TAGS,
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
from functools import wraps
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.exceptions import PermissionDenied
|
||||
from django.http import HttpResponseForbidden
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import gettext as _
|
||||
|
||||
from .models import Map, Team
|
||||
from .views import simple_json_response
|
||||
|
@ -57,7 +55,7 @@ def can_view_map(view_func):
|
|||
map_inst = get_object_or_404(Map, pk=kwargs["map_id"])
|
||||
kwargs["map_inst"] = map_inst # Avoid rerequesting the map in the view
|
||||
if not map_inst.can_view(request):
|
||||
raise PermissionDenied(_("This map is not publicly available"))
|
||||
return HttpResponseForbidden()
|
||||
return view_func(request, *args, **kwargs)
|
||||
|
||||
return wrapper
|
||||
|
|
|
@ -4,6 +4,7 @@ from django.contrib.auth import get_user_model
|
|||
from django.contrib.gis.geos import Point
|
||||
from django.forms.utils import ErrorList
|
||||
from django.template.defaultfilters import slugify
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from .models import DataLayer, Map, Team
|
||||
|
||||
|
@ -39,12 +40,16 @@ class UpdateMapPermissionsForm(forms.ModelForm):
|
|||
|
||||
|
||||
class AnonymousMapPermissionsForm(forms.ModelForm):
|
||||
edit_status = forms.ChoiceField(choices=Map.ANONYMOUS_EDIT_STATUS)
|
||||
share_status = forms.ChoiceField(choices=Map.ANONYMOUS_SHARE_STATUS)
|
||||
STATUS = (
|
||||
(Map.OWNER, _("Only editable with secret edit link")),
|
||||
(Map.ANONYMOUS, _("Everyone can edit")),
|
||||
)
|
||||
|
||||
edit_status = forms.ChoiceField(choices=STATUS)
|
||||
|
||||
class Meta:
|
||||
model = Map
|
||||
fields = ("edit_status", "share_status")
|
||||
fields = ("edit_status",)
|
||||
|
||||
|
||||
class DataLayerForm(forms.ModelForm):
|
||||
|
@ -60,7 +65,13 @@ class DataLayerPermissionsForm(forms.ModelForm):
|
|||
|
||||
|
||||
class AnonymousDataLayerPermissionsForm(forms.ModelForm):
|
||||
edit_status = forms.ChoiceField(choices=DataLayer.ANONYMOUS_EDIT_STATUS)
|
||||
STATUS = (
|
||||
(DataLayer.INHERIT, _("Inherit")),
|
||||
(DataLayer.OWNER, _("Only editable with secret edit link")),
|
||||
(DataLayer.ANONYMOUS, _("Everyone can edit")),
|
||||
)
|
||||
|
||||
edit_status = forms.ChoiceField(choices=STATUS)
|
||||
|
||||
class Meta:
|
||||
model = DataLayer
|
||||
|
@ -91,7 +102,7 @@ class MapSettingsForm(forms.ModelForm):
|
|||
return self.cleaned_data["center"]
|
||||
|
||||
class Meta:
|
||||
fields = ("settings", "name", "center", "slug", "tags")
|
||||
fields = ("settings", "name", "center", "slug")
|
||||
model = Map
|
||||
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-11 17:05+0000\n"
|
||||
"POT-Creation-Date: 2024-02-15 13:53+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Alazar Tekle <al3may3hu@gmail.com>, 2015\n"
|
||||
"Language-Team: Amharic (Ethiopia) (http://app.transifex.com/openstreetmap/umap/language/am_ET/)\n"
|
||||
|
@ -18,316 +18,258 @@ msgstr ""
|
|||
"Language: am_ET\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "በሚስጥር የመረሚያ መስመሩ ብቻ የሚታረም"
|
||||
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "ሁሉም ማረም ይችላል"
|
||||
|
||||
#: forms.py:69 models.py:371
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:50
|
||||
msgid "name"
|
||||
msgstr "ስም"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
msgid "description"
|
||||
msgstr "መገለጫ"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:81
|
||||
msgid "details"
|
||||
msgstr "ዝርዝሮች"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:82
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "ፈቃዱ በዝርዝር ከተቀመጠ ገፅ ጛር አገናኝ"
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:92
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "የድረ-ገፅ አድራሻ ተምሳሌ በኦ.ኤስ.ኤም. የታይል ፎርማት"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:98
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "በማረሚያ ሳጥኑ ውስጥ የታይል ሌየሮቹ ቅደም ተከተል"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "በሚስጥር የመረሚያ መስመሩ ብቻ የሚታረም"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "ሁሉም ማረም ይችላል"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:144 models.py:372
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
msgid "Editors and team only"
|
||||
#: models.py:145 models.py:151 models.py:373
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:146 models.py:374
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:149
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:150
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:152
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
#: models.py:155 models.py:378
|
||||
msgid "description"
|
||||
msgstr "መገለጫ"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:156
|
||||
msgid "center"
|
||||
msgstr "መሀከል"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:157
|
||||
msgid "zoom"
|
||||
msgstr "ዙም"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "locate"
|
||||
msgstr "ጠቁም"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "Locate user on load?"
|
||||
msgstr "በመጫን ላይ ያለውን ተጠቃሚ ጠቁም?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:163
|
||||
msgid "Choose the map licence."
|
||||
msgstr "የካርታውን ፈቃድ ከልስ"
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:164
|
||||
msgid "licence"
|
||||
msgstr "ፈቃድ"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:175
|
||||
msgid "owner"
|
||||
msgstr "ባለቤት"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:179
|
||||
msgid "editors"
|
||||
msgstr "አራሚዎች"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:184 models.py:392
|
||||
msgid "edit status"
|
||||
msgstr "ያለበትን ሁኔታ አርም"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:189
|
||||
msgid "share status"
|
||||
msgstr "ያለበትን ሁኔታ አጋራ"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:192 models.py:387
|
||||
msgid "settings"
|
||||
msgstr "ሁኔታዎች"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:320
|
||||
msgid "Clone of"
|
||||
msgstr "ድቃይ"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:382
|
||||
msgid "display on load"
|
||||
msgstr "በመጫን ላይ አሳይ"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:383
|
||||
msgid "Display this layer on load."
|
||||
msgstr "ሌየሩ በመጫን ላይ አሳይ"
|
||||
|
||||
#: templates/404.html:8
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "የ %(current_user)s'ን ካርታ አስስ"
|
||||
|
||||
#: templates/auth/user_detail.html:17
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:7
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:20
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:27
|
||||
#: templates/auth/user_form.html:25
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:39
|
||||
#: templates/auth/user_form.html:31
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:42
|
||||
#: templates/auth/user_form.html:33
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:8
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:17
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
#: templates/registration/login.html:16
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:28
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:31
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
#: templates/registration/login.html:32
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/registration/login.html:37
|
||||
msgid "Please choose a provider"
|
||||
msgstr "እባክዎ አቅራቢ ይምረጡ"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "የካርታዎን ሌየሮች ይምረጡ"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "ፒ.ኦ.አይ. ይጨምሩ፡ ማርከሮች፣ መስመሮች፣ ፖሊጎኖች ..."
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "የፒ.ኦ.አይ. ከለሮችን እና ጠቋሚዎችን ያስተዳድሩ"
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "የካርታ አማራጮችን ያስተዳድሩ። ትንሽ ካርታ አሳይ፣ ተጠቃሚውን በመጫን ላይ አሳይ ..."
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "ጂዖስትራክቸርድ የሆነ መረጃ በጅምላ አምጣ (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "ለመረጃዎ ፈቃድ ይምረጡ"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr "ካርታዎን ያካትቱ እና ይጋሩ"
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "እንዲሁም <a href=\"%(repo_url)s\">ነፃ እና ክፍት ነው</a> !"
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "Create a map"
|
||||
msgstr "ካርታ ፍጠር"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr "በማሳያው ተለማመድ"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:22
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -336,339 +278,270 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "ይህ ለሙከራ እና ፕሪ-ሮሊግ ሪሊዞች የሚያገለግል ማሳያ ነው። ቋሚ የሆነ ማሳያ ከፈለጉ እባክዎ <a href=\"%(stable_url)s\">%(stable_url)s</a> ይጠቀሙ። እንዲሁም የራስዎን ማስቀመጥ ይችላሉ፣ <a href=\"%(repo_url)s\">ነፃ እና ክፍት</a> ነው!"
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "የዩማፖች ካርታ"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "ካርታዎችን ተመልከት፣ ስሜትህን አነቃቃ!"
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "ገብተዋል። በመቀጠል ላይ ..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
#: templates/umap/map_list.html:9 views.py:341
|
||||
msgid "by"
|
||||
msgstr "በ"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17
|
||||
msgid "More"
|
||||
msgstr "ተጨማሪ"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
#: templates/umap/map_table.html:12
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
#: templates/umap/map_table.html:25 templates/umap/map_table.html:27
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:46 templates/umap/map_table.html:48
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
#: templates/umap/map_table.html:51 templates/umap/map_table.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:56 templates/umap/map_table.html:58
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
#: templates/umap/map_table.html:63 templates/umap/map_table.html:65
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
#: templates/umap/map_table.html:73 templates/umap/map_table.html:75
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
#: templates/umap/map_table.html:88
|
||||
msgid "first"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
#: templates/umap/map_table.html:89
|
||||
msgid "previous"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#: templates/umap/map_table.html:98
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
#: templates/umap/map_table.html:104
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
#: templates/umap/map_table.html:105
|
||||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#: templates/umap/map_table.html:113
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#: templates/umap/map_table.html:118
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
#: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:13
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Log in"
|
||||
msgstr "ግባ"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Sign in"
|
||||
msgstr "ግባ"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
#: templates/umap/navigation.html:21
|
||||
msgid "About"
|
||||
msgstr "ስለ"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:24
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:29
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:33
|
||||
msgid "Log out"
|
||||
msgstr "ውጣ"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:10
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:17
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:22
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:27
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:10
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:15
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:24
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:29
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "ካርታዎች መሀከል ፈልግ"
|
||||
|
||||
#: templates/umap/search_bar.html:15
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "ፈልግ"
|
||||
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
|
||||
msgid "Search my maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
#: templates/umap/user_dashboard.html:11
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:13
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
|
||||
msgid "Map’s title"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#: templates/umap/user_dashboard.html:32
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:438
|
||||
#: views.py:346
|
||||
msgid "View the map"
|
||||
msgstr "ካርታውን አሳይ"
|
||||
|
||||
#: views.py:820
|
||||
#: views.py:704
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:963
|
||||
#: views.py:803
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "የካርታ አራሚዎች በትክክል ታድሰዋል!"
|
||||
|
||||
#: views.py:999
|
||||
#: views.py:841
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1002
|
||||
#: views.py:844
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1009
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1012
|
||||
#: views.py:850
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1023
|
||||
#: views.py:861
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "ካርታውን የሚሰርዘው ባለቤቱ ብቻ ነው።"
|
||||
|
||||
#: views.py:1026
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1052
|
||||
#: views.py:889
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "ካርታዎ ተዳቅሏል! ይህንን ካርታ ከሌላ ኮምፒውተር ላይ ሆነው ለማረም ከፈለጉ የሚከተለውን አድራሻ ይጠቀሙ %(anonymous_url)s"
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:894
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "እንኳን ደስ አለዎ ካርታዎ ተዳቅሏል!"
|
||||
|
||||
#: views.py:1308
|
||||
#: views.py:1130
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "ሌየሩ በትክክል ተሰርዟ"
|
||||
|
||||
#: views.py:1330
|
||||
#: views.py:1152
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -10,7 +10,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-24 08:39+0000\n"
|
||||
"POT-Creation-Date: 2023-08-25 08:16+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Med Limem Smida <medlimem200@gmail.com>, 2018\n"
|
||||
"Language-Team: Arabic (http://app.transifex.com/openstreetmap/umap/language/ar/)\n"
|
||||
|
@ -20,331 +20,260 @@ msgstr ""
|
|||
"Language: ar\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr ""
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "الموقع مفتوح للقراءة فقط لغاية الصيانة"
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
msgid "name"
|
||||
msgstr "الإسم"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
msgid "description"
|
||||
msgstr "تقديم"
|
||||
|
||||
#: models.py:110
|
||||
msgid "details"
|
||||
msgstr "تفاصيل"
|
||||
|
||||
#: models.py:111
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:121
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:127
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "قابل للتعديل فقط مع رابط تعديلٍ سري"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
#: forms.py:47
|
||||
msgid "Everyone can edit"
|
||||
msgstr "يمكن للجميع التعدبل"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "قابل للتعديل فقط مع رابط تعديلٍ سري"
|
||||
|
||||
#: middleware.py:14
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "الموقع مفتوح للقراءة فقط لغاية الصيانة"
|
||||
|
||||
#: models.py:48
|
||||
msgid "name"
|
||||
msgstr "الإسم"
|
||||
|
||||
#: models.py:79
|
||||
msgid "details"
|
||||
msgstr "تفاصيل"
|
||||
|
||||
#: models.py:80
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:90
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:96
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:142
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
msgid "Editors and team only"
|
||||
#: models.py:143 models.py:149
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:144
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:147
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:148
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:150
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
#: models.py:153 models.py:307
|
||||
msgid "description"
|
||||
msgstr "تقديم"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:154
|
||||
msgid "center"
|
||||
msgstr "وسط"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:155
|
||||
msgid "zoom"
|
||||
msgstr "تكبير"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:157
|
||||
msgid "locate"
|
||||
msgstr "تموقع"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:157
|
||||
msgid "Locate user on load?"
|
||||
msgstr "حدد موقع المستعمل عند التحميل ؟"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:161
|
||||
msgid "Choose the map licence."
|
||||
msgstr "إختر رخصة الخريطة."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:162
|
||||
msgid "licence"
|
||||
msgstr "الترخيص"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:172
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:176
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:181
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:186
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:189 models.py:316
|
||||
msgid "settings"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:262
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:311
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:312
|
||||
msgid "Display this layer on load."
|
||||
msgstr "عرض هذه الطبقة عند التحميل"
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr "الرجوع إلى الصفحة الرئيسية"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr ""
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "تصفح خرائط %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:17
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)sلا يملك أي خريطة. "
|
||||
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
#: templates/auth/user_form.html:6 templates/umap/navigation.html:12
|
||||
#: templates/umap/user_dashboard.html:4 templates/umap/user_dashboard.html:10
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:19
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:27
|
||||
#: templates/auth/user_form.html:24
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:39
|
||||
#: templates/auth/user_form.html:30
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:42
|
||||
#: templates/auth/user_form.html:32
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:8
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:17
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
msgstr "تسجيل الدخول"
|
||||
#: templates/registration/login.html:3
|
||||
msgid "Please log in with your account"
|
||||
msgstr "الرجاء الدخول بحسابك"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:15
|
||||
msgid "Username"
|
||||
msgstr "إسم المستخدم"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Password"
|
||||
msgstr "كلمة السر"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
#: templates/registration/login.html:19
|
||||
msgid "Login"
|
||||
msgstr "تسجيل الدخول"
|
||||
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please choose a provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "إختر الطبقات على خريطتك"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "إختر رخصة بياناتك"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:42
|
||||
#: templates/umap/user_dashboard.html:20
|
||||
msgid "Create a map"
|
||||
msgstr "أنشئ خريطةً"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:23
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:31
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -353,210 +282,125 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
#: templates/umap/home.html:13
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:9 views.py:300
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17 templates/umap/map_table.html:39
|
||||
msgid "More"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Preview"
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see / edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:28
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
#: templates/umap/map_table.html:29
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:30
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
msgid "first"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
msgid "previous"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:15
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:19
|
||||
msgid "Log in"
|
||||
msgstr "دخول"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:19
|
||||
msgid "Sign in"
|
||||
msgstr "تسجيل"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
#: templates/umap/navigation.html:23
|
||||
msgid "About"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:26
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:31
|
||||
msgid "Change password"
|
||||
msgstr "غير كلمة السر"
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:35
|
||||
msgid "Log out"
|
||||
msgstr "تسجيل خروج"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:10
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "الرجاء إدخال كلمة السر القديمة، لغرض الحماية، ثم إدخال كلمة السر الجديدة مرتين للتثبت من حسن رقنها. "
|
||||
|
||||
#: templates/umap/password_change.html:17
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr "كلمة السر القديمة"
|
||||
|
||||
#: templates/umap/password_change.html:22
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr "كلمة السر الجديدة"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr "تأكيد كلمة السر الجديدة"
|
||||
|
||||
#: templates/umap/password_change.html:27
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr "تغيير ناجح لكلمة السر"
|
||||
|
||||
#: templates/umap/password_change_done.html:10
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:15
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
|
@ -567,129 +411,76 @@ msgstr[3] ""
|
|||
msgstr[4] ""
|
||||
msgstr[5] ""
|
||||
|
||||
#: templates/umap/search.html:24
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:29
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "البحث عن خرائط"
|
||||
|
||||
#: templates/umap/search_bar.html:15
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "ابحث"
|
||||
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7
|
||||
msgid "Search my maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
msgid "Map’s title"
|
||||
#: templates/umap/user_dashboard.html:10
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:20
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:305
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:825
|
||||
msgid "See full screen"
|
||||
#: views.py:628
|
||||
msgid "Map has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:968
|
||||
#: views.py:653
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1004
|
||||
#: views.py:691
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1007
|
||||
#: views.py:694
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1014
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:700
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1028
|
||||
#: views.py:711
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "لا يمكن إلا لصاحب الخريطة حذفها."
|
||||
|
||||
#: views.py:1031
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:734
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1062
|
||||
#: views.py:739
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1313
|
||||
#: views.py:922
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "تم حذف الطبقة بنجاح."
|
||||
|
||||
#: views.py:1335
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-11 17:05+0000\n"
|
||||
"POT-Creation-Date: 2024-02-15 13:53+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Пламен, 2021\n"
|
||||
"Language-Team: Bulgarian (http://app.transifex.com/openstreetmap/umap/language/bg/)\n"
|
||||
|
@ -21,316 +21,258 @@ msgstr ""
|
|||
"Language: bg\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Само може да се редактира с тайно редактиран линк"
|
||||
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Всеки може да редактира"
|
||||
|
||||
#: forms.py:69 models.py:371
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:50
|
||||
msgid "name"
|
||||
msgstr "име"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
msgid "description"
|
||||
msgstr "описание"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:81
|
||||
msgid "details"
|
||||
msgstr "детайли"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:82
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Линк към страницата с подробно описание за лиценза."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:92
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL шаблон, използван формат OSM плочи"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:98
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Поръчка на tilelayers в полето за редактиране"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Само може да се редактира с тайно редактиран линк"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Всеки може да редактира"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:144 models.py:372
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
msgid "Editors and team only"
|
||||
#: models.py:145 models.py:151 models.py:373
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:146 models.py:374
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:149
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:150
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:152
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
#: models.py:155 models.py:378
|
||||
msgid "description"
|
||||
msgstr "описание"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:156
|
||||
msgid "center"
|
||||
msgstr "център"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:157
|
||||
msgid "zoom"
|
||||
msgstr "мащаб"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "locate"
|
||||
msgstr "локализирай"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Локализирай потребител при зареждане?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:163
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Избери лиценз за картата."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:164
|
||||
msgid "licence"
|
||||
msgstr "лиценз"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:175
|
||||
msgid "owner"
|
||||
msgstr "притежател"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:179
|
||||
msgid "editors"
|
||||
msgstr "редактори"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:184 models.py:392
|
||||
msgid "edit status"
|
||||
msgstr "статус на редактиране"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:189
|
||||
msgid "share status"
|
||||
msgstr "сподели статус"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:192 models.py:387
|
||||
msgid "settings"
|
||||
msgstr "настройки"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:320
|
||||
msgid "Clone of"
|
||||
msgstr "Клониране на"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:382
|
||||
msgid "display on load"
|
||||
msgstr "покажи при зареждане"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:383
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Покажи този слой при зареждане"
|
||||
|
||||
#: templates/404.html:8
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Разгледай картите на %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:17
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:7
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:20
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:27
|
||||
#: templates/auth/user_form.html:25
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:39
|
||||
#: templates/auth/user_form.html:31
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:42
|
||||
#: templates/auth/user_form.html:33
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:8
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:17
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
msgstr "Вход"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
#: templates/registration/login.html:16
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:28
|
||||
msgid "Username"
|
||||
msgstr "Потр. име"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:31
|
||||
msgid "Password"
|
||||
msgstr "Парола"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:32
|
||||
msgid "Login"
|
||||
msgstr "Вход"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/registration/login.html:37
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Моля изберете провайдер"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Изберете слоевете на своята карта"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Добави POIs: маркери, линии, полигони ..."
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Промени POIs цветове и икони"
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Играй с опциите на картата: покажи миникарта, локализирай потребителя при зареждане ..."
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Внасяне на географски данни (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Избери лиценз за своите данни"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Вгради и сподели картата"
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "И това е <a href=\"%(repo_url)s\">отворен код</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "Create a map"
|
||||
msgstr "Създай карта"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr "Играй си с демото"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:22
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -339,339 +281,270 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Това е само демо пример, използван за тестове и предварителни издания. Ако имате нужда от стабилна версия, моля използвайте <a href=\"%(stable_url)s\">%(stable_url)s</ A>. Можете също така да бъде хост на вашата собствена версия, това е <a href=\"%(repo_url)s\"> отворен код </ A>!"
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Карта от картите на uMaps"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Вдъхнови се, разгледай други карти "
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "В процес на включване. Продължение..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
#: templates/umap/map_list.html:9 views.py:341
|
||||
msgid "by"
|
||||
msgstr "от"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17
|
||||
msgid "More"
|
||||
msgstr "Още"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
#: templates/umap/map_table.html:12
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
#: templates/umap/map_table.html:25 templates/umap/map_table.html:27
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:46 templates/umap/map_table.html:48
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
#: templates/umap/map_table.html:51 templates/umap/map_table.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:56 templates/umap/map_table.html:58
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
#: templates/umap/map_table.html:63 templates/umap/map_table.html:65
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
#: templates/umap/map_table.html:73 templates/umap/map_table.html:75
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
#: templates/umap/map_table.html:88
|
||||
msgid "first"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
#: templates/umap/map_table.html:89
|
||||
msgid "previous"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#: templates/umap/map_table.html:98
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
#: templates/umap/map_table.html:104
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
#: templates/umap/map_table.html:105
|
||||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#: templates/umap/map_table.html:113
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#: templates/umap/map_table.html:118
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
#: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:13
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Log in"
|
||||
msgstr "Влизане"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Sign in"
|
||||
msgstr "Регистрация"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
#: templates/umap/navigation.html:21
|
||||
msgid "About"
|
||||
msgstr "Относно"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:24
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:29
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:33
|
||||
msgid "Log out"
|
||||
msgstr "Излизане"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:10
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:17
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:22
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:27
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:10
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:15
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:24
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:29
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "Търсене на карти"
|
||||
|
||||
#: templates/umap/search_bar.html:15
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "Търсене"
|
||||
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
|
||||
msgid "Search my maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
#: templates/umap/user_dashboard.html:11
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:13
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
|
||||
msgid "Map’s title"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#: templates/umap/user_dashboard.html:32
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:438
|
||||
#: views.py:346
|
||||
msgid "View the map"
|
||||
msgstr "Виж картата"
|
||||
|
||||
#: views.py:820
|
||||
#: views.py:704
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:963
|
||||
#: views.py:803
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Редакторите на картата актуализират с успех!"
|
||||
|
||||
#: views.py:999
|
||||
#: views.py:841
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1002
|
||||
#: views.py:844
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1009
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1012
|
||||
#: views.py:850
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1023
|
||||
#: views.py:861
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Само собственикът може да изтрие картата."
|
||||
|
||||
#: views.py:1026
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1052
|
||||
#: views.py:889
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Вашата карта е клонирана! Ако искате да редактирате тази карта от друг компютър, моля използвайте този линк: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:894
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Поздравления, вашата карта е клонирана!"
|
||||
|
||||
#: views.py:1308
|
||||
#: views.py:1130
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Слоят е изтрит успешно."
|
||||
|
||||
#: views.py:1330
|
||||
#: views.py:1152
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -3,16 +3,16 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Dren ar Frankig <hadrienlouque@gmail.com>, 2023-2025
|
||||
# Dren ar Frankig <hadrienlouque@gmail.com>, 2023-2024
|
||||
# Dren ar Frankig <hadrienlouque@gmail.com>, 2023
|
||||
# Dren ar Frankig <hadrienlouque@gmail.com>, 2023
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-03-03 14:11+0000\n"
|
||||
"POT-Creation-Date: 2024-08-30 18:23+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Dren ar Frankig <hadrienlouque@gmail.com>, 2023-2025\n"
|
||||
"Last-Translator: Dren ar Frankig <hadrienlouque@gmail.com>, 2023-2024\n"
|
||||
"Language-Team: Breton (http://app.transifex.com/openstreetmap/umap/language/br/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -20,209 +20,168 @@ msgstr ""
|
|||
"Language: br\n"
|
||||
"Plural-Forms: nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "Ezporzhiadur CSV"
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "N'haller he c'hemmañ nemet gant ul liamm aozañ kuzh"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "Ar gartenn-mañ n'eo ket publik"
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "An holl a c'hall kemmañ"
|
||||
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr "Dre ziouer"
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Al lec'hienn zo da lenn hepken rak emeur ouzh he c'hempenn"
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "anv"
|
||||
|
||||
#: models.py:62 models.py:485
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "deskrivadur"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "munudoù"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Liamm war-zu ur bajenn a zispleg an aotre-implijout."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Patrom URL a implij furmad teol OSM"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:175 models.py:479
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "N'haller he c'hemmañ nemet gant ul liamm aozañ kuzh"
|
||||
|
||||
#: models.py:176 models.py:480
|
||||
msgid "Everyone can edit"
|
||||
msgstr "An holl a c'hall kemmañ"
|
||||
|
||||
#: models.py:179 models.py:473
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "An holl"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:474
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr "An aozerien hag ar skipailh hepken"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:475
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "Ar perc'henner hepken"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr "Brouilhed (prevez)"
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "An holl (publik)"
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "Piv bennak en deus ul liamm"
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr "Stanket"
|
||||
|
||||
#: models.py:191 models.py:469
|
||||
msgid "Deleted"
|
||||
msgstr "Dilemel"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "kreizañ"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "zoumañ"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "lec'hiañ"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Lec'hiañ an implijer en ur gargañ?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Dibabit aotre-implijout ar gartenn."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "aotre"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "perc'henner"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "aozerien"
|
||||
|
||||
#: models.py:223
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr "skipailh"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:501
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "statud aozañ"
|
||||
|
||||
#: models.py:234 models.py:506
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "digor da biv?"
|
||||
|
||||
#: models.py:237 models.py:496
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "arventennoù"
|
||||
|
||||
#: models.py:407
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "Eilenn eus"
|
||||
|
||||
#: models.py:468 models.py:472 models.py:478
|
||||
msgid "Inherit"
|
||||
msgstr "Dre ziouer"
|
||||
|
||||
#: models.py:491
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "diskwel pa vez karget"
|
||||
|
||||
#: models.py:492
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Diskwel ar gwiskad-mañ pa vez karget"
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Distreiñ d'ar bajenn degemer"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Distreiñ d'ar bajenn degemer"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 N'eo ket bet kavet ar bajenn"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr "Kartennoù eus %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Merdeiñ e kartennoù %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)s n'en/he deus kartenn ebet."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr "Ma frofil"
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr "Enrollañ"
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr "Ho pourchaserien a-vremañ"
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr "Kennaskañ ouzh ur pourchaser all"
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr "Kartennoù muiañ karet eus %(current_user)s"
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr "Merdeiñ e kartennoù spilhennet %(current_user)s"
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr "%(current_user)s n'en/he deus kartenn spilhennet ebet."
|
||||
|
@ -233,33 +192,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "uMap a ro tro deoc'h da grouiñ kartennoù en ur serr-lagad gant foñsoù OpenStreetMap ha d'o enframmañ e-barzh ho lec'hienn."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Kevreañ"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Evit enrollañ ha kavout ho kartennoù en doare aes, kennaskit mar plij."
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Kevreit gant ho kont mar plij"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr "Kennaskit gant ho kont mar plij:"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Anv implijer"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Ger-tremen"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr "Dibabit ur pourchaser mar plij:"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Diwar-benn"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Dibabit ur pourchaser mar plij"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -310,13 +261,13 @@ msgstr "Krouiñ ur gartenn"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Amprouiñ an tañva!"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "Serriñ"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -324,35 +275,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "Eilañ al liamm"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "Postel"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "Kas al liamm din"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "Derc'hel ho kemmoù hag argas o re"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "Derc'hel o c'hemmoù hag argas ho re"
|
||||
|
||||
|
@ -373,19 +324,19 @@ msgstr ""
|
|||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr "Ur raktres OpenStreetMap"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr "stumm"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr "Herberc'hiet gant"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr "Darempred"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
|
@ -400,13 +351,13 @@ msgstr "Ma c'hartennoù (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "Ma c'hartennoù"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "Ma frofil"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr "Ma skipailhoù"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -420,15 +371,15 @@ msgstr "Bezit awenet en ur furchal kartennoù"
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Kevreet oc'h. Gortozit ur pennadig..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:10 views.py:433
|
||||
msgid "by"
|
||||
msgstr "gant"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:18
|
||||
msgid "More"
|
||||
msgstr "Muioc'h"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr "Anv"
|
||||
|
||||
|
@ -452,7 +403,7 @@ msgstr "Enrollet da ziwezhañ"
|
|||
msgid "Owner"
|
||||
msgstr "Perc'henner"
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr "Oberoù"
|
||||
|
||||
|
@ -465,7 +416,7 @@ msgid "Share"
|
|||
msgstr "Rannañ"
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr "Aozañ"
|
||||
|
||||
|
@ -528,6 +479,10 @@ msgstr "Kevreañ"
|
|||
msgid "Sign in"
|
||||
msgstr "Krouiñ ur gont"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Diwar-benn"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr "Cheñch ar ger-tremen"
|
||||
|
@ -536,47 +491,41 @@ msgstr "Cheñch ar ger-tremen"
|
|||
msgid "Log out"
|
||||
msgstr "Digevreañ"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr "Cheñch ar ger-tremen"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Enankit ho ker-tremen kozh ha div wezh ho ker-tremen nevez war-lerc'h mar plij."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr "Ger-tremen kozh"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr "Ger-tremen nevez"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr "Kadarnaat ar ger-tremen nevez"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr "Cheñch ar ger-tremen"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr "Cheñchet eo bet ar ger-tremen gant berzh"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr "Cheñchet eo bet ho ker-tremen."
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr "Ergerzhout ar gartennoù"
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
|
@ -586,11 +535,11 @@ msgstr[2] "%(count)s c'hartenn kavet :"
|
|||
msgstr[3] "%(count)s kartenn kavet :"
|
||||
msgstr[4] "%(count)s kartenn kavet :"
|
||||
|
||||
#: templates/umap/search.html:28
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr "Kartenn ebet kavet."
|
||||
|
||||
#: templates/umap/search.html:33
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr "Kartennoù krouet da ziwezhañ"
|
||||
|
||||
|
@ -598,40 +547,27 @@ msgstr "Kartennoù krouet da ziwezhañ"
|
|||
msgid "Search maps"
|
||||
msgstr "Klask kartennoù"
|
||||
|
||||
#: templates/umap/search_bar.html:16
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr "Klask"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr "O tilemel ar gartenn"
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr "Kartennoù eus %(current_team)s"
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr "Merdeiñ e kartennoù %(current_team)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr "%(current_team)s n'en deus kartenn publik ebet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr "Krouiñ pe kemmañ ur skipailh"
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr "Dilemel ar skipailh-mañ"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr "Ouzhpennañ un implijer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
msgid "Search my maps"
|
||||
|
@ -650,89 +586,78 @@ msgstr "Pellgargañ %(count)s a gartennoù"
|
|||
msgid "You have no map yet."
|
||||
msgstr "N'ho peus kartenn ebet c'hoazh."
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Ma skipailhoù"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr "Implijerien"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr "Skipailh nevez"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "Dilamet eo bet ar skipailh “%(name)s”"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Diskouez ar gartenn"
|
||||
|
||||
#: views.py:838
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr "Gwelet er mod skramm a-bezh"
|
||||
|
||||
#: views.py:981
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Aozerien ar gartenn bet hizivaet gant berzh!"
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Al liamm uMap evit aozañ ho kartenn: %(map_name)s"
|
||||
|
||||
#: views.py:1020
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Setu ho liamm aozañ kuzh: %(link)s"
|
||||
|
||||
#: views.py:1027
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "N'haller ket kas ur postel da %(email)s"
|
||||
|
||||
#: views.py:1030
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "Postel kaset da %(email)s"
|
||||
|
||||
#: views.py:1041
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "N'eus nemet perc'henner ar gartenn a c'hall he dilemel."
|
||||
|
||||
#: views.py:1044
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Kartenn dilamet gant berzh."
|
||||
|
||||
#: views.py:1070
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Doublet eo bet ho kartenn! M'ho peus c'hoant d'he c'hemmañ diwar un urzhiataer all, implijit al liamm-mañ: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1075
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Doublet eo bet ho kartenn gant berzh!"
|
||||
|
||||
#: views.py:1329
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Gwiskad dilamet gant berzh."
|
||||
|
||||
#: views.py:1351
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "Aotreoù hizivaet gant berzh!"
|
||||
|
||||
#: views.py:1430
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated. Please configure another "
|
||||
"provider in your profile page."
|
||||
msgstr ""
|
||||
|
|
|
@ -4,16 +4,15 @@
|
|||
#
|
||||
# Translators:
|
||||
# jmontane, 2014
|
||||
# Joan Montané, 2014,2019,2023
|
||||
# Joan Montané, 2014,2019
|
||||
# Joan Montané, 2014,2019
|
||||
# Joan Montané, 2023
|
||||
# lenny libre, 2024
|
||||
# lenny libre, 2024
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-24 08:39+0000\n"
|
||||
"POT-Creation-Date: 2024-08-30 18:23+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: lenny libre, 2024\n"
|
||||
"Language-Team: Catalan (http://app.transifex.com/openstreetmap/umap/language/ca/)\n"
|
||||
|
@ -23,160 +22,133 @@ msgstr ""
|
|||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr ""
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Només es pot editar amb l'enllaç d'edició secret"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Tothom pot editar"
|
||||
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "El lloc és en mode lectura per manteniment"
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "nom"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "descripció"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "detalls"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Enllaç a una pàgina on es detalla la llicència."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "La plantilla de l'URL usa el format de tesel·les de l'OSM"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Ordre de les capes de tessel·les al quadre d'edició"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Només es pot editar amb l'enllaç d'edició secret"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Tothom pot editar"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "Tothom"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr "Només editors i equip"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "Només el propietari"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Tothom (públic)"
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "Qualsevol persona amb enllaç"
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "centre"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "escala"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "ubica"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Voleu ubicar l'usuari en carregar?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Trieu la llicència del mapa."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "llicència"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "propietari"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "editors"
|
||||
|
||||
#: models.py:223
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "edita l'estat"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "comparteix l'estat"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "paràmetres"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "Clon de"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "mostra en carregar"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Mostra aquesta capa en carregar."
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr ""
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr ""
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Vés a la pàgina d'inici"
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
|
@ -222,29 +194,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "uMap us permet crear mapes amb capes d'OpenStreetMap en un minut i incrustar-los en el vostre lloc web."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Inicia sessió"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Inicieu sessió amb el vostre compte"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Nom d'usuari"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Contrasenya"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Trieu un proveïdor"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -295,13 +263,13 @@ msgstr "Crea un mapa"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Jugueu amb la demostració"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -309,35 +277,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
|
@ -362,7 +330,7 @@ msgstr ""
|
|||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr "versió"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
|
@ -385,11 +353,11 @@ msgstr "Els meus Mapes (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "Els meus mapes"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "El meu perfil"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
|
@ -405,11 +373,11 @@ msgstr "Inspireu-vos, exploreu mapes"
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Heu iniciat sessió. S'està continuant..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:10 views.py:433
|
||||
msgid "by"
|
||||
msgstr "per"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:18
|
||||
msgid "More"
|
||||
msgstr "Més"
|
||||
|
||||
|
@ -625,70 +593,70 @@ msgstr ""
|
|||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Mostra el mapa"
|
||||
|
||||
#: views.py:825
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:968
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "S'han actualitzat els editors del mapa correctament!"
|
||||
|
||||
#: views.py:1004
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "L'enllaç d'edició d'uMap per al vostre mapa: %(map_name)s"
|
||||
|
||||
#: views.py:1007
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Aquí teniu l'enllaç secret d'edició: %(link)s"
|
||||
|
||||
#: views.py:1014
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "S'ha enviat un correu a %(email)s"
|
||||
|
||||
#: views.py:1028
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Només el propietari pot suprimir el mapa."
|
||||
|
||||
#: views.py:1031
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "S'ha clonat el vostre mapa! Si voleu editar aquest mapa en un altre ordinador, useu aquest enllaç: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1062
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Enhorabona, s'ha clonat el vostre mapa!"
|
||||
|
||||
#: views.py:1313
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "S'ha suprimit la capa correctament."
|
||||
|
||||
#: views.py:1335
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Aleš Fiala <f.ales1@seznam.cz>, 2023-2024
|
||||
# Aleš Fiala <f.ales1@seznam.cz>, 2023
|
||||
# Jakub A. Tesinsky, 2014
|
||||
# Jakub A. Tesinsky, 2014
|
||||
# Jiří Podhorecký, 2018-2019
|
||||
# Jiří Podhorecký <jirka.p@volny.cz>, 2018-2019,2023-2025
|
||||
# Jiří Podhorecký <jirka.p@volny.cz>, 2023-2024
|
||||
# Jiří Podhorecký <jirka.p@volny.cz>, 2019
|
||||
# Jiří Podhorecký <jirka.p@volny.cz>, 2018
|
||||
# Jiří Podhorecký <jirka.p@volny.cz>, 2018
|
||||
|
@ -16,9 +16,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-03-03 17:36+0000\n"
|
||||
"POT-Creation-Date: 2024-10-04 16:35+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Jiří Podhorecký <jirka.p@volny.cz>, 2018-2019,2023-2025\n"
|
||||
"Last-Translator: Jiří Podhorecký <jirka.p@volny.cz>, 2023-2024\n"
|
||||
"Language-Team: Czech (Czech Republic) (http://app.transifex.com/openstreetmap/umap/language/cs_CZ/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -28,215 +28,170 @@ msgstr ""
|
|||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "CSV Export"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "Tato mapa není veřejně dostupná"
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Stránka je jen ke čtení kvůli údržbě"
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account"
|
||||
" and maps."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
msgid "name"
|
||||
msgstr "název"
|
||||
|
||||
#: models.py:62 models.py:485
|
||||
msgid "description"
|
||||
msgstr "popis"
|
||||
|
||||
#: models.py:110
|
||||
msgid "details"
|
||||
msgstr "podrobnosti"
|
||||
|
||||
#: models.py:111
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Odkaz na stránku s podrobnějším popisem licence."
|
||||
|
||||
#: models.py:121
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Vzor URL ve formátu pro dlaždice OSM "
|
||||
|
||||
#: models.py:127
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Pořadí vrstev při editaci"
|
||||
|
||||
#: models.py:175 models.py:479
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Lze upravovat jen pomocí tajného odkazu"
|
||||
|
||||
#: models.py:176 models.py:480
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Kdokoli může editovat"
|
||||
|
||||
#: models.py:179 models.py:473
|
||||
msgid "Everyone"
|
||||
msgstr "Kdokoli"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:474
|
||||
msgid "Editors and team only"
|
||||
msgstr "Pouze pro editory a tým"
|
||||
|
||||
#: models.py:181 models.py:475
|
||||
msgid "Owner only"
|
||||
msgstr "Jen vlastník"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr "Koncept (soukromý)"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Kdokoli (veřejná)"
|
||||
|
||||
#: models.py:188
|
||||
msgid "Anyone with link"
|
||||
msgstr "Kdokoli kdo má odkaz"
|
||||
|
||||
#: models.py:190
|
||||
msgid "Blocked"
|
||||
msgstr "Blokováno"
|
||||
|
||||
#: models.py:191 models.py:469
|
||||
msgid "Deleted"
|
||||
msgstr "Smazáno"
|
||||
|
||||
#: models.py:194
|
||||
msgid "center"
|
||||
msgstr "střed"
|
||||
|
||||
#: models.py:195
|
||||
msgid "zoom"
|
||||
msgstr "přiblížení"
|
||||
|
||||
#: models.py:197
|
||||
msgid "locate"
|
||||
msgstr "lokalizuj"
|
||||
|
||||
#: models.py:197
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Najdi poluhu uživatele na startu?"
|
||||
|
||||
#: models.py:201
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vyberte si licenci mapy."
|
||||
|
||||
#: models.py:202
|
||||
msgid "licence"
|
||||
msgstr "licence"
|
||||
|
||||
#: models.py:213
|
||||
msgid "owner"
|
||||
msgstr "vlastník"
|
||||
|
||||
#: models.py:217
|
||||
msgid "editors"
|
||||
msgstr "přispěvovatelé"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr "tým"
|
||||
|
||||
#: models.py:229 models.py:501
|
||||
msgid "edit status"
|
||||
msgstr "kdo může provádět úpravy"
|
||||
|
||||
#: models.py:234 models.py:506
|
||||
msgid "share status"
|
||||
msgstr "nastavení sdílení"
|
||||
|
||||
#: models.py:237 models.py:496
|
||||
msgid "settings"
|
||||
msgstr "nastavení"
|
||||
|
||||
#: models.py:407
|
||||
msgid "Clone of"
|
||||
msgstr "Kopie"
|
||||
|
||||
#: models.py:468 models.py:472 models.py:478
|
||||
#: forms.py:69 models.py:441
|
||||
msgid "Inherit"
|
||||
msgstr "Zdědit"
|
||||
|
||||
#: models.py:491
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Stránka je jen ke čtení kvůli údržbě"
|
||||
|
||||
#: models.py:55 models.py:74
|
||||
msgid "name"
|
||||
msgstr "název"
|
||||
|
||||
#: models.py:57 models.py:451
|
||||
msgid "description"
|
||||
msgstr "popis"
|
||||
|
||||
#: models.py:105
|
||||
msgid "details"
|
||||
msgstr "podrobnosti"
|
||||
|
||||
#: models.py:106
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Odkaz na stránku s podrobnějším popisem licence."
|
||||
|
||||
#: models.py:116
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Vzor URL ve formátu pro dlaždice OSM "
|
||||
|
||||
#: models.py:122
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Pořadí vrstev při editaci"
|
||||
|
||||
#: models.py:168 models.py:442
|
||||
msgid "Everyone"
|
||||
msgstr "Kdokoli"
|
||||
|
||||
#: models.py:169 models.py:175 models.py:443
|
||||
msgid "Editors and team only"
|
||||
msgstr "Pouze pro editory a tým"
|
||||
|
||||
#: models.py:170 models.py:444
|
||||
msgid "Owner only"
|
||||
msgstr "Jen vlastník"
|
||||
|
||||
#: models.py:173
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Kdokoli (veřejná)"
|
||||
|
||||
#: models.py:174
|
||||
msgid "Anyone with link"
|
||||
msgstr "Kdokoli kdo má odkaz"
|
||||
|
||||
#: models.py:176
|
||||
msgid "Blocked"
|
||||
msgstr "Blokováno"
|
||||
|
||||
#: models.py:179
|
||||
msgid "center"
|
||||
msgstr "střed"
|
||||
|
||||
#: models.py:180
|
||||
msgid "zoom"
|
||||
msgstr "přiblížení"
|
||||
|
||||
#: models.py:182
|
||||
msgid "locate"
|
||||
msgstr "lokalizuj"
|
||||
|
||||
#: models.py:182
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Najdi poluhu uživatele na startu?"
|
||||
|
||||
#: models.py:186
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vyberte si licenci mapy."
|
||||
|
||||
#: models.py:187
|
||||
msgid "licence"
|
||||
msgstr "licence"
|
||||
|
||||
#: models.py:198
|
||||
msgid "owner"
|
||||
msgstr "vlastník"
|
||||
|
||||
#: models.py:202
|
||||
msgid "editors"
|
||||
msgstr "přispěvovatelé"
|
||||
|
||||
#: models.py:208
|
||||
msgid "team"
|
||||
msgstr "tým"
|
||||
|
||||
#: models.py:214 models.py:465
|
||||
msgid "edit status"
|
||||
msgstr "kdo může provádět úpravy"
|
||||
|
||||
#: models.py:219
|
||||
msgid "share status"
|
||||
msgstr "nastavení sdílení"
|
||||
|
||||
#: models.py:222 models.py:460
|
||||
msgid "settings"
|
||||
msgstr "nastavení"
|
||||
|
||||
#: models.py:382
|
||||
msgid "Clone of"
|
||||
msgstr "Kopie"
|
||||
|
||||
#: models.py:455
|
||||
msgid "display on load"
|
||||
msgstr "zobrazit při startu"
|
||||
|
||||
#: models.py:492
|
||||
#: models.py:456
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Zobrazit tuto vrstvu na startu."
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr "<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" target=\"_blank\">Zde naleznete dokumentaci</a> ke správě oprávnění mapy."
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Vezměte mě na domovskou stránku"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Přejít na domovskou stránku"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 Stránka nenalezena"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr "mapy %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Prohlížej si mapy uživatele %(current_user)s'"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)s nemá mapy."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr "Můj profil"
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr "Uložit"
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr "Vaši současní poskytovatelé"
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr "Připojit se k jinému poskytovateli"
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr "Je dobrým zvykem připojit svůj účet k více poskytovatelům pro případ, že by jeden z nich byl dočasně nebo dokonce trvale nedostupný."
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr "mapy s hvězdičkami %(current_user)s"
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr "Prohlížet mapy označené hvězdičkou uživatele %(current_user)s"
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr "%(current_user)s nemá zatím žádné mapy označené hvězdičkou."
|
||||
|
@ -247,33 +202,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "uMap umožňuje vytvářet mapy s vrstvami OpenStreetMap za okamžik a vložit je do svých stránek."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Přihlásit se"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Chcete-li své mapy uložit a snadno je najít, identifikujte se."
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Přihlaste se prosím k účtu"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr "Přihlaste se prosím k účtu:"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Uživatelské jméno"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Heslo"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr "Vyberte poskytovatele mapy:"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "O uMap"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Vyberte poskytovatele mapy"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -324,13 +271,13 @@ msgstr "Vytvořit mapu"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Vyzkoušejte si to hned"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "Zavřít"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -338,35 +285,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr "Tip pro uživatele: Chcete-li snadno najít zpět své mapy, <a href=\"%(login_url)s\" target=\"_blank\">vytvořte si účet</a> nebo se <a href=\"%(login_url)s\" target=\"_blank\">přihlaste</a>."
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "Zde je váš tajný odkaz pro úpravu mapy, prosím, mějte ho v bezpečí:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "Zkopírovat odkaz"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "Zadejte svou e-mailovou adresu, abyste obdrželi tajný odkaz:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "E-mail"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "Pošlete mi odkaz"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr "Zobrazit jejich úpravy na jiné kartě"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "Ponechte si své změny a opusťte cizí"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "Ponechte si jejich změny a opusťte své"
|
||||
|
||||
|
@ -434,7 +381,7 @@ msgstr "Inspirujte se, koukněte na mapy jiných"
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Jste přihlášeni. Jedeme dál ..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
msgid "by"
|
||||
msgstr ", autor:"
|
||||
|
||||
|
@ -442,7 +389,7 @@ msgstr ", autor:"
|
|||
msgid "More"
|
||||
msgstr "Více"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr "Název"
|
||||
|
||||
|
@ -466,7 +413,7 @@ msgstr "Poslední uložení"
|
|||
msgid "Owner"
|
||||
msgstr "Vlastník"
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr "Akce"
|
||||
|
||||
|
@ -479,7 +426,7 @@ msgid "Share"
|
|||
msgstr "Sdílet"
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr "Upravit"
|
||||
|
||||
|
@ -542,6 +489,10 @@ msgstr "Přihlásit se"
|
|||
msgid "Sign in"
|
||||
msgstr "Registrovat"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "O uMap"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr "Změnit heslo"
|
||||
|
@ -550,47 +501,41 @@ msgstr "Změnit heslo"
|
|||
msgid "Log out"
|
||||
msgstr "Odhlásit se"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr "Změna hesla"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Z bezpečnostních důvodů zadejte své staré heslo a dvakrát zadejte nové heslo, abychom mohli ověřit, že jste jej zadali správně."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr "Staré heslo"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr "Nové heslo"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr "Potvrzení nového hesla"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr "Změnit moje heslo"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr "Změna hesla byla úspěšná"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr "Vaše heslo bylo změněno."
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr "Prozkoumat mapy"
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
|
@ -599,11 +544,11 @@ msgstr[1] "%(count)s nalezené mapy:"
|
|||
msgstr[2] "%(count)s nalezené mapy:"
|
||||
msgstr[3] "%(count)s nalezených map:"
|
||||
|
||||
#: templates/umap/search.html:28
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr "Mapa nenalezena."
|
||||
|
||||
#: templates/umap/search.html:33
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr "Nedávno vytvořené mapy"
|
||||
|
||||
|
@ -611,38 +556,25 @@ msgstr "Nedávno vytvořené mapy"
|
|||
msgid "Search maps"
|
||||
msgstr "Prohledávejte mapy"
|
||||
|
||||
#: templates/umap/search_bar.html:16
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr "Hledej"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr "Smazání týmu"
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr "mapy %(current_team)s"
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr "Prohlížet mapy týmu %(current_team)s"
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr "%(current_team)s nemá veřejné mapy."
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr "Vytvořit nebo upravit tým"
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr "Smazat tento tým"
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr "Přidat uživatele"
|
||||
|
||||
|
@ -663,82 +595,78 @@ msgstr "Stáhnout %(count)s map"
|
|||
msgid "You have no map yet."
|
||||
msgstr "Zatím nemáte žádnou mapu."
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Moje Týmy"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr "Uživatelé"
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr "Nový tým"
|
||||
|
||||
#: views.py:234
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr "Nelze smazat tým s více než jedním členem"
|
||||
|
||||
#: views.py:238
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "Tým \"%(name)s\" byl smazán"
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Prohlídnout si tuto mapu"
|
||||
|
||||
#: views.py:838
|
||||
#: views.py:818
|
||||
msgid "See full screen"
|
||||
msgstr "Zobrazit celou obrazovku"
|
||||
|
||||
#: views.py:981
|
||||
#: views.py:950
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Seznam přispěvovatelů byl úspěšně upraven!"
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:986
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Odkaz na úpravu uMap pro vaši mapu: %(map_name)s"
|
||||
|
||||
#: views.py:1020
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Zde je váš tajný odkaz na úpravu: %(link)s"
|
||||
|
||||
#: views.py:1027
|
||||
#: views.py:996
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "Nelze odeslat e-mail na %(email)s"
|
||||
|
||||
#: views.py:1030
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "E-mail odeslán na %(email)s"
|
||||
|
||||
#: views.py:1041
|
||||
#: views.py:1010
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Jen vlastník může vymzat tuto mapu."
|
||||
|
||||
#: views.py:1044
|
||||
#: views.py:1013
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Mapa byla úspěšně smazána."
|
||||
|
||||
#: views.py:1070
|
||||
#: views.py:1039
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Byla vytvořena kopie mapy! Pokud chcete upravovat tuto mapu z jiného počítače, použijte tento odkaz: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1075
|
||||
#: views.py:1044
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Gratulujeme, byla vytvořena kopie mapy!"
|
||||
|
||||
#: views.py:1329
|
||||
#: views.py:1277
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Vrstva úspěšně vymazána."
|
||||
|
||||
#: views.py:1351
|
||||
#: views.py:1299
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "Oprávnění úspěšně aktualizována!"
|
||||
|
|
|
@ -11,7 +11,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-24 08:39+0000\n"
|
||||
"POT-Creation-Date: 2024-02-15 13:53+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Mikkel Kirkgaard Nielsen <memb_transifex@mikini.dk>, 2018\n"
|
||||
"Language-Team: Danish (http://app.transifex.com/openstreetmap/umap/language/da/)\n"
|
||||
|
@ -21,331 +21,258 @@ msgstr ""
|
|||
"Language: da\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr ""
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Er kun redigerbart med et hemmeligt link"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Alle kan redigere"
|
||||
|
||||
#: forms.py:69 models.py:371
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Webstedet er skrivebeskyttet pga. vedligeholdelse"
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:50
|
||||
msgid "name"
|
||||
msgstr "navn"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
msgid "description"
|
||||
msgstr "beskrivelse"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:81
|
||||
msgid "details"
|
||||
msgstr "detaljer"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:82
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link til en side hvor der er flere oplysninger om licensen."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:92
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL-skabelon i OSM flise-format"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:98
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Rækkefølge af flise-lag i redigeringsboksen"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Er kun redigerbart med et hemmeligt link"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Alle kan redigere"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:144 models.py:372
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
msgid "Editors and team only"
|
||||
#: models.py:145 models.py:151 models.py:373
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:146 models.py:374
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:149
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:150
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:152
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
#: models.py:155 models.py:378
|
||||
msgid "description"
|
||||
msgstr "beskrivelse"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:156
|
||||
msgid "center"
|
||||
msgstr "center"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:157
|
||||
msgid "zoom"
|
||||
msgstr "zoom"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "locate"
|
||||
msgstr "lokaliser"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Lokaliser brugeren ved indlæsning?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:163
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vælg kortlicensen."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:164
|
||||
msgid "licence"
|
||||
msgstr "licens"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:175
|
||||
msgid "owner"
|
||||
msgstr "ejer"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:179
|
||||
msgid "editors"
|
||||
msgstr "redaktører"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:184 models.py:392
|
||||
msgid "edit status"
|
||||
msgstr "redigeringsstatus"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:189
|
||||
msgid "share status"
|
||||
msgstr "delingsstatus"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:192 models.py:387
|
||||
msgid "settings"
|
||||
msgstr "indstillinger"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:320
|
||||
msgid "Clone of"
|
||||
msgstr "Kloning af"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:382
|
||||
msgid "display on load"
|
||||
msgstr "vis ved indlæsning"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:383
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Vis dette lag ved indlæsning."
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Før mig til hjemmesiden"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr ""
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Gennemse %(current_user)ss kort"
|
||||
|
||||
#: templates/auth/user_detail.html:17
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)s har ingen kort."
|
||||
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:7
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:20
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:27
|
||||
#: templates/auth/user_form.html:25
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:39
|
||||
#: templates/auth/user_form.html:31
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:42
|
||||
#: templates/auth/user_form.html:33
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:8
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:17
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
msgstr "Log ind"
|
||||
#: templates/registration/login.html:16
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Log på din konto"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:28
|
||||
msgid "Username"
|
||||
msgstr "Brugernavn"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:31
|
||||
msgid "Password"
|
||||
msgstr "Adgangskode"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:32
|
||||
msgid "Login"
|
||||
msgstr "Log ind"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/registration/login.html:37
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Vælg en udbyder"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr "uMap gør det muligt at oprette kort med <a href=\"%(osm_url)s\" />OpenStreetMap</a>-lag på et øjeblik, og indlejre dem på dit websted."
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Vælg lag til dit kort"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Tilføj POI'er: markører, linjer, polygoner..."
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Håndter farver og ikoner for POI'er"
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Håndter kortindstillinger: vis et miniaturekort, lokaliser brugeren ved indlæsning..."
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Batchimport af geostrukturerede data (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Vælg en licens til dine geodata"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Indlejr og del dit kort"
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Og det er <a href=\"%(repo_url)s\">open source</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "Create a map"
|
||||
msgstr "Lav et kort"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr "Leg med demoen"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:22
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -354,339 +281,270 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Dette er en demo-instans som bruges til test og at forhåndsudrulle frigivelser. Hvis du har brug for en mere stabil instans, så brug <a href=\"%(stable_url)s\">%(stable_url)s</a>. Du kan også drive din helt egen instans, det er <a href=\"%(repo_url)s\">open source</a>!"
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Kort over uMaps"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Bliv inspireret, gennemse kort"
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Du er logget ind. Fortsætter..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:9 views.py:341
|
||||
msgid "by"
|
||||
msgstr "af"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17
|
||||
msgid "More"
|
||||
msgstr "Mere"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
#: templates/umap/map_table.html:12
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
#: templates/umap/map_table.html:25 templates/umap/map_table.html:27
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:46 templates/umap/map_table.html:48
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
#: templates/umap/map_table.html:51 templates/umap/map_table.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:56 templates/umap/map_table.html:58
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
#: templates/umap/map_table.html:63 templates/umap/map_table.html:65
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
#: templates/umap/map_table.html:73 templates/umap/map_table.html:75
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
#: templates/umap/map_table.html:88
|
||||
msgid "first"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
#: templates/umap/map_table.html:89
|
||||
msgid "previous"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#: templates/umap/map_table.html:98
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
#: templates/umap/map_table.html:104
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
#: templates/umap/map_table.html:105
|
||||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#: templates/umap/map_table.html:113
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#: templates/umap/map_table.html:118
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
#: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:13
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Log in"
|
||||
msgstr "Log ind"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Sign in"
|
||||
msgstr "Opret konto"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
#: templates/umap/navigation.html:21
|
||||
msgid "About"
|
||||
msgstr "Om"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:24
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:29
|
||||
msgid "Change password"
|
||||
msgstr "Skift adgangskode"
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:33
|
||||
msgid "Log out"
|
||||
msgstr "Log ud"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr "Ændring af adgangskode"
|
||||
|
||||
#: templates/umap/password_change.html:10
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Af sikkerhedshensyn skal du indtaste din gamle adgangskode, dernæst indtastes den nye adgangskode to gange, så vi kan være sikre på, at du har skrevet den korrekt."
|
||||
|
||||
#: templates/umap/password_change.html:17
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr "Gammel adgangskode"
|
||||
|
||||
#: templates/umap/password_change.html:22
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr "Ny adgangskode"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr "Bekræft ny adgangskode"
|
||||
|
||||
#: templates/umap/password_change.html:27
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr "Ændr min adgangskode"
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr "Adgangskode ændret"
|
||||
|
||||
#: templates/umap/password_change_done.html:10
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr "Din adgangskode blev ændret."
|
||||
|
||||
#: templates/umap/search.html:15
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:24
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:29
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "Søg i kortene"
|
||||
|
||||
#: templates/umap/search_bar.html:15
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "Søg"
|
||||
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
|
||||
msgid "Search my maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
#: templates/umap/user_dashboard.html:11
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:13
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
|
||||
msgid "Map’s title"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#: templates/umap/user_dashboard.html:32
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:346
|
||||
msgid "View the map"
|
||||
msgstr "Vis kortet"
|
||||
|
||||
#: views.py:825
|
||||
#: views.py:704
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:968
|
||||
#: views.py:803
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Kortredaktører blev opdateret!"
|
||||
|
||||
#: views.py:1004
|
||||
#: views.py:841
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1007
|
||||
#: views.py:844
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1014
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:850
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1028
|
||||
#: views.py:861
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Kun ejeren kan slette kortet."
|
||||
|
||||
#: views.py:1031
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:889
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Dit kort er klonet! Hvis du ønsker at redigere kortet fra en anden computer, så brug følgende link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1062
|
||||
#: views.py:894
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Tillykke, dit kort er klonet!"
|
||||
|
||||
#: views.py:1313
|
||||
#: views.py:1130
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Lag blev slettet."
|
||||
|
||||
#: views.py:1335
|
||||
#: views.py:1152
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -11,7 +11,6 @@
|
|||
# hno2 <hno2@gmx.net>, 2013-2014
|
||||
# Jannis Leidel <jannis@leidel.info>, 2016
|
||||
# gislars, 2024
|
||||
# Metzor Metzingen, 2025
|
||||
# pgeo, 2023
|
||||
# Klumbumbus, 2013-2014,2018-2019
|
||||
# YOHAN BONIFACE <yb@enix.org>, 2012
|
||||
|
@ -19,9 +18,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-04-04 16:49+0000\n"
|
||||
"POT-Creation-Date: 2024-09-04 14:02+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Metzor Metzingen, 2025\n"
|
||||
"Last-Translator: jakl, 2024\n"
|
||||
"Language-Team: German (http://app.transifex.com/openstreetmap/umap/language/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -29,285 +28,168 @@ msgstr ""
|
|||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "CSV-Export"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "Diese Karte ist nicht öffentlich einsehbar"
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Die Seite ist wegen Wartungsarbeiten im Nur-Lesen-Modus."
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account"
|
||||
" and maps. Then, please logout and login again with the new provider."
|
||||
msgstr "Anmelden mittels “%(name)s” ist veraltet und wird bald nicht mehr möglich sein. Bitte stelle einen anderen Anbieter ein, um den Zugang zum Benutzerkonto und den Karten nicht zu verlieren. Bitte melde dich dann ab und nutze den neuen Anbieter um dich wieder anzumelden."
|
||||
|
||||
#: models.py:61 models.py:80
|
||||
msgid "name"
|
||||
msgstr "Name"
|
||||
|
||||
#: models.py:63 models.py:493
|
||||
msgid "description"
|
||||
msgstr "Beschreibung"
|
||||
|
||||
#: models.py:111
|
||||
msgid "details"
|
||||
msgstr "Details"
|
||||
|
||||
#: models.py:112
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Verlinke auf eine Seite mit der Lizenz."
|
||||
|
||||
#: models.py:122
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Das URL-Template nutzt das OSM Tile Format"
|
||||
|
||||
#: models.py:128
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Reihenfolge der Karten-Ebenen in der Bearbeiten-Box"
|
||||
|
||||
#: models.py:176 models.py:487
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Nur mit geheimem Bearbeitungslink zu bearbeiten"
|
||||
|
||||
#: models.py:177 models.py:488
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Jeder kann bearbeiten"
|
||||
|
||||
#: models.py:180 models.py:481
|
||||
msgid "Everyone"
|
||||
msgstr "Jeder"
|
||||
|
||||
#: models.py:181 models.py:190 models.py:482
|
||||
msgid "Editors and team only"
|
||||
msgstr "Nur Bearbeiter und Team"
|
||||
|
||||
#: models.py:182 models.py:483
|
||||
msgid "Owner only"
|
||||
msgstr "Nur Ersteller"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Draft (private)"
|
||||
msgstr "Entwurf (privat)"
|
||||
|
||||
#: models.py:186
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Jeder (Öffentlich)"
|
||||
|
||||
#: models.py:189
|
||||
msgid "Anyone with link"
|
||||
msgstr "Jeder mit Link"
|
||||
|
||||
#: models.py:191
|
||||
msgid "Blocked"
|
||||
msgstr "blockiert"
|
||||
|
||||
#: models.py:192 models.py:477
|
||||
msgid "Deleted"
|
||||
msgstr "Gelöscht"
|
||||
|
||||
#: models.py:195
|
||||
msgid "center"
|
||||
msgstr "Mittelpunkt"
|
||||
|
||||
#: models.py:196
|
||||
msgid "zoom"
|
||||
msgstr "Zoom"
|
||||
|
||||
#: models.py:198
|
||||
msgid "locate"
|
||||
msgstr "lokalisiere"
|
||||
|
||||
#: models.py:198
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Standort des Benutzers beim Seitenaufruf bestimmen?"
|
||||
|
||||
#: models.py:202
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Kartenlizenz auswählen"
|
||||
|
||||
#: models.py:203
|
||||
msgid "licence"
|
||||
msgstr "Lizenz"
|
||||
|
||||
#: models.py:214
|
||||
msgid "owner"
|
||||
msgstr "Ersteller"
|
||||
|
||||
#: models.py:218
|
||||
msgid "editors"
|
||||
msgstr "Bearbeiter"
|
||||
|
||||
#: models.py:224
|
||||
msgid "team"
|
||||
msgstr "Team"
|
||||
|
||||
#: models.py:230 models.py:509
|
||||
msgid "edit status"
|
||||
msgstr "Bearbeitungsstatus"
|
||||
|
||||
#: models.py:235 models.py:514
|
||||
msgid "share status"
|
||||
msgstr "Teilen-Status"
|
||||
|
||||
#: models.py:238 models.py:504
|
||||
msgid "settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: models.py:410
|
||||
msgid "Clone of"
|
||||
msgstr "Duplikat von"
|
||||
|
||||
#: models.py:476 models.py:480 models.py:486
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr "erben"
|
||||
|
||||
#: models.py:499
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Die Seite ist wegen Wartungsarbeiten im Nur-Lesen-Modus."
|
||||
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "Name"
|
||||
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "Beschreibung"
|
||||
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "Details"
|
||||
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Verlinke auf eine Seite mit der Lizenz."
|
||||
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Das URL-Template nutzt das OSM Tile Format"
|
||||
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Reihenfolge der Karten-Ebenen in der Bearbeiten-Box"
|
||||
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "Jeder"
|
||||
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr "Nur Bearbeiter und Team"
|
||||
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "Nur Ersteller"
|
||||
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Jeder (Öffentlich)"
|
||||
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "Jeder mit Link"
|
||||
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr "blockiert"
|
||||
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "Mittelpunkt"
|
||||
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "Zoom"
|
||||
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "lokalisiere"
|
||||
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Standort des Benutzers beim Seitenaufruf bestimmen?"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Kartenlizenz auswählen"
|
||||
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "Lizenz"
|
||||
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "Ersteller"
|
||||
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "Bearbeiter"
|
||||
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr "Team"
|
||||
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "Bearbeitungsstatus"
|
||||
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "Teilen-Status"
|
||||
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "Duplikat von"
|
||||
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "Beim Seitenaufruf einblenden"
|
||||
|
||||
#: models.py:500
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Diese Ebene beim Seitenaufruf einblenden."
|
||||
|
||||
#: settings/base.py:295
|
||||
msgid "Art and Culture"
|
||||
msgstr ""
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Zur Startseite zurückkehren"
|
||||
|
||||
#: settings/base.py:296
|
||||
msgid "Cycling"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:297
|
||||
msgid "Business"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:298
|
||||
msgid "Environment"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:299
|
||||
msgid "Education"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:300
|
||||
msgid "Food and Agriculture"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:301
|
||||
msgid "Geopolitics"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:302
|
||||
msgid "Health"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:303
|
||||
msgid "Hiking"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:304
|
||||
msgid "History"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:305
|
||||
msgid "Public sector"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:306
|
||||
msgid "Science"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:307
|
||||
msgid "Shopping"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:308
|
||||
msgid "Sport and Leisure"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:309
|
||||
msgid "Travel"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:310
|
||||
msgid "Transports"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:311
|
||||
msgid "Tourism"
|
||||
msgstr ""
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr "<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" target=\"_blank\">Finde hier die Dokumentation</a>wie Berechtigungen der Karte verwaltet werden können."
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Gehe zur Homepage"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 Seite nicht gefunden"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr "Karten von %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Schaue dir %(current_user)s's Karten an"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)s hat keine Karten."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr "Mein Profil"
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr "Deine aktuellen Anbieter"
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr "Füge einen weiteren Anbieter hinzu"
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr "Es ist eine gute Praxis, das Konto mit mehr als einem Anbieter zu verbinden, für den Fall, dass ein Anbieter vorübergehend oder sogar dauerhaft nicht mehr verfügbar ist."
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr "Schaue dir die favorisierten Karten von %(current_user)s an"
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr "Schaue dir %(current_user)s's favorisierten Karten an"
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr "%(current_user)s hat keine favorisierten Karten."
|
||||
|
@ -318,34 +200,26 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "Mit uMap kannst du Karten mit OpenStreetMap-Ebenen in einer Minute erstellen und in deine Seite einbinden."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Anmeldung"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Um deine Karten einfach zu speichern und wieder zu finden, merke dich an."
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Bitte melden Sie sich mit Ihrem Konto an"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Benutzername"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Passwort"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Bitte wähle einen Anbieter"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Über"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
msgid ""
|
||||
|
@ -395,13 +269,13 @@ msgstr "Erstelle eine Karte"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Spiele mit der Demo"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "Schließen"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -409,35 +283,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr "Um auf Deine Karten schnell zugreifen zu können: <a href=\"%(login_url)s\" target=\"_blank\">erstelle ein Konto</a> oder <a href=\"%(login_url)s\" target=\"_blank\">melde dich an</a>."
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "Hier ist der geheime Link zum Bearbeiten der Karte, bitte bewahre ihn sicher auf:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "Link kopieren"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "Gib Deine E-Mail-Adresse ein, um den geheimen Link zu gesendet zu bekommen:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "Link verschicken"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr "Die Bearbeitungen in einem anderen Browser-Tab öffnen"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "Behalte Deine Änderungen und verwirf die anderen"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "Behalte die anderen Änderungen und verwirf Deine"
|
||||
|
||||
|
@ -485,11 +359,11 @@ msgstr "Meine Karten (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "Meine Karten"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "Mein Profil"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr "Meine Teams"
|
||||
|
||||
|
@ -497,7 +371,7 @@ msgstr "Meine Teams"
|
|||
msgid "Map of the uMaps"
|
||||
msgstr "Karte aller „uMap“-Karten"
|
||||
|
||||
#: templates/umap/home.html:25
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Lass dich inspirieren, schau dir diese Karten an."
|
||||
|
||||
|
@ -505,19 +379,15 @@ msgstr "Lass dich inspirieren, schau dir diese Karten an."
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Du bist eingeloggt. Weiterleitung..."
|
||||
|
||||
#: templates/umap/map_list.html:18 views.py:444
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
msgid "by"
|
||||
msgstr "von"
|
||||
|
||||
#: templates/umap/map_list.html:22
|
||||
msgid "See the map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:28
|
||||
#: templates/umap/map_list.html:20
|
||||
msgid "More"
|
||||
msgstr "Mehr"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
|
@ -541,7 +411,7 @@ msgstr "zuletzt gespeichert"
|
|||
msgid "Owner"
|
||||
msgstr "Ersteller"
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr "Aktionen"
|
||||
|
||||
|
@ -554,7 +424,7 @@ msgid "Share"
|
|||
msgstr "Teilen"
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr "Bearbeiten"
|
||||
|
||||
|
@ -617,6 +487,10 @@ msgstr "Einloggen"
|
|||
msgid "Sign in"
|
||||
msgstr "Anmelden"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Über"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr "Passwort ändern"
|
||||
|
@ -625,58 +499,52 @@ msgstr "Passwort ändern"
|
|||
msgid "Log out"
|
||||
msgstr "Ausloggen"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr "Passwortänderung"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Bitte gib aus Sicherheitsgründen dein altes Passwort ein und dann zweimal dein neues, um sicherzustellen, dass du es korrekt eingegeben hast."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr "Altes Passwort"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr "Neues Passwort"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr "Neues Passwort bestätigen"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr "Mein Passwort ändern"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr "Passwortänderung erfolgreich"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr "Ihr Passwort wurde geändert."
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr "Karten erkunden"
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] "%(count)s Karte gefunden:"
|
||||
msgstr[1] "%(count)s Karten gefunden:"
|
||||
|
||||
#: templates/umap/search.html:30
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr "Keine Karte gefunden."
|
||||
|
||||
#: templates/umap/search.html:35
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr "Zuletzt erstellte Karten"
|
||||
|
||||
|
@ -684,42 +552,25 @@ msgstr "Zuletzt erstellte Karten"
|
|||
msgid "Search maps"
|
||||
msgstr "Karten suchen"
|
||||
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Any category"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:19
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr "Suchen"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr "Team löschen"
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr "Karten von %(current_team)s"
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr "Schaue dir %(current_team)s's Karten an"
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr "%(current_team)s hat keine öffentlichen Karten.."
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr "Team erstellen oder bearbeiten"
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr "Dieses Team löschen"
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr "Benutzer hinzufügen"
|
||||
|
||||
|
@ -740,15 +591,11 @@ msgstr "Herunterladen von %(count)s Karten"
|
|||
msgid "You have no map yet."
|
||||
msgstr "Du hast noch keine Karte."
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Meine Teams"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr "Benutzer"
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr "Neues Team"
|
||||
|
||||
|
@ -761,61 +608,61 @@ msgstr "Teams mit mehr als einem Mitglied können nicht gelöscht werden"
|
|||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "Team “%(name)s” wurde gelöscht"
|
||||
|
||||
#: views.py:449
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Diese Karte anzeigen"
|
||||
|
||||
#: views.py:845
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr "Vollbildanzeige"
|
||||
|
||||
#: views.py:988
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Bearbeiter erfolgreich geändert"
|
||||
|
||||
#: views.py:1024
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Der uMap-Bearbeitungslink für Deine Karte: %(map_name)s"
|
||||
|
||||
#: views.py:1027
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Dies ist der geheime Bearbeitungslink: %(link)s"
|
||||
|
||||
#: views.py:1034
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "E-Mail kann nicht gesendet werden an %(email)s"
|
||||
|
||||
#: views.py:1037
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "Email gesendet an %(email)s"
|
||||
|
||||
#: views.py:1048
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Nur der Ersteller kann die Karte löschen."
|
||||
|
||||
#: views.py:1051
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Karte erfolgreich gelöscht."
|
||||
|
||||
#: views.py:1077
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Deine Karte wurde kopiert! Wenn du diese Karte von einem anderen Computer aus bearbeiten möchtest, benutze bitte diesen Link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1082
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Glückwunsch, deine Karte wurde kopiert!"
|
||||
|
||||
#: views.py:1336
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Ebene erfolgreich gelöscht."
|
||||
|
||||
#: views.py:1358
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "Berechtigungen erfolgreich aktualisiert!"
|
||||
|
|
|
@ -13,9 +13,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-04-11 15:30+0000\n"
|
||||
"POT-Creation-Date: 2024-08-30 18:23+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: prendi <prendi@openmailbox.org>, 2017\n"
|
||||
"Last-Translator: Yannis Kaskamanidis <kiolalis@gmail.com>, 2021,2023-2024\n"
|
||||
"Language-Team: Greek (http://app.transifex.com/openstreetmap/umap/language/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -23,285 +23,168 @@ msgstr ""
|
|||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "Εξαγωγή CSV"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "Αυτός ο χάρτης δεν είναι δημοσίως διαθέσιμος"
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Λόγω συντήρησης, ο ιστότοπος είναι μόνο για ανάγνωση"
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account"
|
||||
" and maps. Then, please logout and login again with the new provider."
|
||||
msgstr "Η χρήση του «%(name)s» για τον έλεγχο ταυτότητας έχει ξεπεραστεί και θα καταργηθεί σύντομα. Παρακαλούμε ρυθμίστε έναν άλλο πάροχο παρακάτω πριν χάσετε την πρόσβαση στο λογαριασμό και τους χάρτες σας. Στη συνέχεια, παρακαλούμε αποσυνδεθείτε και συνδεθείτε ξανά με τον νέο πάροχο."
|
||||
|
||||
#: models.py:61 models.py:80
|
||||
msgid "name"
|
||||
msgstr "όνομα"
|
||||
|
||||
#: models.py:63 models.py:493
|
||||
msgid "description"
|
||||
msgstr "περιγραφή"
|
||||
|
||||
#: models.py:111
|
||||
msgid "details"
|
||||
msgstr "λεπτομέρειες"
|
||||
|
||||
#: models.py:112
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Σύνδεσμος σελίδας αναλυτικής Άδειας Χρήσης."
|
||||
|
||||
#: models.py:122
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Πρότυπο URL που χρησιμοποιεί μορφοποίηση πλακιδίων OSM"
|
||||
|
||||
#: models.py:128
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Σειρά των υπόβαθρων στο πλαίσιο επεξεργασίας"
|
||||
|
||||
#: models.py:176 models.py:487
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Επεξεργάσιμο μόνο με μυστικό σύνδεσμο"
|
||||
|
||||
#: models.py:177 models.py:488
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Όλοι μπορούν να επεξεργαστούν"
|
||||
|
||||
#: models.py:180 models.py:481
|
||||
msgid "Everyone"
|
||||
msgstr "Οποιοσδήποτε"
|
||||
|
||||
#: models.py:181 models.py:190 models.py:482
|
||||
msgid "Editors and team only"
|
||||
msgstr "Μόνο συντάκτες και ομάδα"
|
||||
|
||||
#: models.py:182 models.py:483
|
||||
msgid "Owner only"
|
||||
msgstr "Μόνο ο κάτοχος"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Draft (private)"
|
||||
msgstr "Πρόχειρο (ιδιωτικό)"
|
||||
|
||||
#: models.py:186
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Όλοι (δημόσιος)"
|
||||
|
||||
#: models.py:189
|
||||
msgid "Anyone with link"
|
||||
msgstr "Οποιοδήποτε με τον σύνδεσμο"
|
||||
|
||||
#: models.py:191
|
||||
msgid "Blocked"
|
||||
msgstr "Αποκλεισμένος"
|
||||
|
||||
#: models.py:192 models.py:477
|
||||
msgid "Deleted"
|
||||
msgstr "Διαγράφηκε"
|
||||
|
||||
#: models.py:195
|
||||
msgid "center"
|
||||
msgstr "κέντρο"
|
||||
|
||||
#: models.py:196
|
||||
msgid "zoom"
|
||||
msgstr "εστίαση"
|
||||
|
||||
#: models.py:198
|
||||
msgid "locate"
|
||||
msgstr "εντοπισμός θέσης"
|
||||
|
||||
#: models.py:198
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Εντοπισμός θέσης χρήστη κατά την φόρτωση;"
|
||||
|
||||
#: models.py:202
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Επιλογή άδειας χρήσης του χάρτη."
|
||||
|
||||
#: models.py:203
|
||||
msgid "licence"
|
||||
msgstr "άδεια"
|
||||
|
||||
#: models.py:214
|
||||
msgid "owner"
|
||||
msgstr "ιδιοκτήτης"
|
||||
|
||||
#: models.py:218
|
||||
msgid "editors"
|
||||
msgstr "συντάκτες"
|
||||
|
||||
#: models.py:224
|
||||
msgid "team"
|
||||
msgstr "ομάδα"
|
||||
|
||||
#: models.py:230 models.py:509
|
||||
msgid "edit status"
|
||||
msgstr "κατάσταση επεξεργασίας"
|
||||
|
||||
#: models.py:235 models.py:514
|
||||
msgid "share status"
|
||||
msgstr "κατάσταση διαμοιρασμού"
|
||||
|
||||
#: models.py:238 models.py:504
|
||||
msgid "settings"
|
||||
msgstr "ρυθμίσεις"
|
||||
|
||||
#: models.py:410
|
||||
msgid "Clone of"
|
||||
msgstr "Κλώνος του"
|
||||
|
||||
#: models.py:476 models.py:480 models.py:486
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr "Κληρονόμοι"
|
||||
|
||||
#: models.py:499
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Λόγω συντήρησης, ο ιστότοπος είναι μόνο για ανάγνωση"
|
||||
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "όνομα"
|
||||
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "περιγραφή"
|
||||
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "λεπτομέρειες"
|
||||
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Σύνδεσμος σελίδας αναλυτικής Άδειας Χρήσης."
|
||||
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Πρότυπο URL που χρησιμοποιεί μορφοποίηση πλακιδίων OSM"
|
||||
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Σειρά των υπόβαθρων στο πλαίσιο επεξεργασίας"
|
||||
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "Οποιοσδήποτε"
|
||||
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "Μόνο ο κάτοχος"
|
||||
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Όλοι (δημόσιος)"
|
||||
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "Οποιοδήποτε με τον σύνδεσμο"
|
||||
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr "Αποκλεισμένος"
|
||||
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "κέντρο"
|
||||
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "εστίαση"
|
||||
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "εντοπισμός θέσης"
|
||||
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Εντοπισμός θέσης χρήστη κατά την φόρτωση;"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Επιλογή άδειας χρήσης του χάρτη."
|
||||
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "άδεια"
|
||||
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "ιδιοκτήτης"
|
||||
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "συντάκτες"
|
||||
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "κατάσταση επεξεργασίας"
|
||||
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "κατάσταση διαμοιρασμού"
|
||||
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "ρυθμίσεις"
|
||||
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "Κλώνος του"
|
||||
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "εμφάνιση κατά τη φόρτωση"
|
||||
|
||||
#: models.py:500
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Εμφάνιση αυτού του επιπέδου κατά την φόρτωση."
|
||||
|
||||
#: settings/base.py:295
|
||||
msgid "Art and Culture"
|
||||
msgstr "Τέχνες και Πολιτισμός"
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Επιστροφή στην αρχική σελίδα"
|
||||
|
||||
#: settings/base.py:296
|
||||
msgid "Cycling"
|
||||
msgstr "Ποδηλασία"
|
||||
|
||||
#: settings/base.py:297
|
||||
msgid "Business"
|
||||
msgstr "Επιχειρήσεις"
|
||||
|
||||
#: settings/base.py:298
|
||||
msgid "Environment"
|
||||
msgstr "Περιβάλλον"
|
||||
|
||||
#: settings/base.py:299
|
||||
msgid "Education"
|
||||
msgstr "Εκπαίδευση"
|
||||
|
||||
#: settings/base.py:300
|
||||
msgid "Food and Agriculture"
|
||||
msgstr "Διατροφή και Γεωργία"
|
||||
|
||||
#: settings/base.py:301
|
||||
msgid "Geopolitics"
|
||||
msgstr "Γεωπολιτική"
|
||||
|
||||
#: settings/base.py:302
|
||||
msgid "Health"
|
||||
msgstr "Υγεία"
|
||||
|
||||
#: settings/base.py:303
|
||||
msgid "Hiking"
|
||||
msgstr "Πεζοπορία-Ορειβασία"
|
||||
|
||||
#: settings/base.py:304
|
||||
msgid "History"
|
||||
msgstr "Ιστορία"
|
||||
|
||||
#: settings/base.py:305
|
||||
msgid "Public sector"
|
||||
msgstr "Δημόσιος τομέας"
|
||||
|
||||
#: settings/base.py:306
|
||||
msgid "Science"
|
||||
msgstr "Επιστήμες"
|
||||
|
||||
#: settings/base.py:307
|
||||
msgid "Shopping"
|
||||
msgstr "Ψώνια"
|
||||
|
||||
#: settings/base.py:308
|
||||
msgid "Sport and Leisure"
|
||||
msgstr "Αθλητισμός και ελεύθερος χρόνος"
|
||||
|
||||
#: settings/base.py:309
|
||||
msgid "Travel"
|
||||
msgstr "Ταξίδια"
|
||||
|
||||
#: settings/base.py:310
|
||||
msgid "Transports"
|
||||
msgstr "Μεταφορές"
|
||||
|
||||
#: settings/base.py:311
|
||||
msgid "Tourism"
|
||||
msgstr "Τουρισμός"
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr "<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" target=\"_blank\">Δείτε εδώ την τεκμηρίωση</a> για το πώς να διαχειρίζεστε τα δικαιώματα του χάρτη."
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Μετάβαση στην αρχική σελίδα"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 Η σελίδα δεν βρέθηκε"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr "%(current_user)s’s χάρτες"
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Περιήγηση στους χάρτες του χρήστη %(current_user)s"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "Ο %(current_user)s χρήστης δεν έχει χάρτες."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr "Το προφίλ μου"
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr "Αποθήκευση"
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr "Οι τρέχοντες πάροχοι σας"
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr "Σύνδεση σε άλλον πάροχο"
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr "Είναι καλή συνήθεια να συνδέετε το λογαριασμό σας σε περισσότερους από έναν παρόχους, σε περίπτωση που ένας πάροχος δεν είναι διαθέσιμος, προσωρινά ή και μόνιμα."
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr "%(current_user)s’s χάρτες με αστέρια"
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr "Περιήγηση στους χάρτες με αστέρι του χρήστη %(current_user)s"
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr "Ο %(current_user)s δεν έχει ακόμη χάρτες με αστέρι."
|
||||
|
@ -312,33 +195,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "Το uMap σου επιτρέπει να δημιουργήσεις στο λεπτό χάρτες με στρώσεις OpenStreetMap και να τους ενσωματώσεις στον ιστότοπό σου."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Σύνδεση"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Για να αποθηκεύσετε και να βρείτε εύκολα τους χάρτες σας, προσδιορίστε τον εαυτό σας."
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Παρακαλώ συνδεθείτε με τον λογαριασμό σας"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr "Παρακαλούμε συνδεθείτε με το λογαριασμό σας:"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Όνομα χρήστη"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Κωδικός πρόσβασης"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr "Παρακαλώ επιλέξτε έναν πάροχο:"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Σχετικά"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Παρακαλώ επιλέξτε έναν πάροχο"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -389,13 +264,13 @@ msgstr "Δημιουργία χάρτη"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Δοκιμή με την έκδοση επίδειξης"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "Κλείσιμο"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -403,35 +278,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr "Επισήμανση: για να βρίσκετε εύκολα τους χάρτες σας, <a href=\"%(login_url)s\" target=\"_blank\">δημιουργήστε λογαριασμό</a> ή <a href=\"%(login_url)s\" target=\"_blank\">συνδεθείτε</a>."
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "Αυτός είναι ο μυστικός σας σύνδεσμος για να επεξεργαστείτε τον χάρτη, διατηρήστε τον ασφαλή:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "Αντιγραφή συνδέσμου"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "Καταχωρίστε το email σας για να λάβετε τον μυστικό σύνδεσμο:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "Στείλε μου τον σύνδεσμο"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr "Δείτε τις επεξεργασίες τους σε άλλη καρτέλα"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "Διατηρήστε τις αλλαγές σας και αγνοήστε τις δικές τους"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "Κρατήστε τις αλλαγές τους και αγνοήστε τις δικές σας"
|
||||
|
||||
|
@ -452,19 +327,19 @@ msgstr "Αυτή είναι μια έκδοση επίδειξης, που χρ
|
|||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr "Ένα έργο OpenStreetMap"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr "έκδοση"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr "Φιλοξενείται από"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr "Επικοινωνία"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
|
@ -479,19 +354,19 @@ msgstr "Οι χάρτες μου (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "Οι χάρτες μου"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "Το προφίλ μου"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr "Οι ομάδες μου"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Χάρτης των uMaps"
|
||||
|
||||
#: templates/umap/home.html:25
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Περιηγήσου και αναζήτησε την έμπνευση στους χάρτες!"
|
||||
|
||||
|
@ -499,19 +374,15 @@ msgstr "Περιηγήσου και αναζήτησε την έμπνευση
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Είστε συνδεδεμένοι. Συνέχεια..."
|
||||
|
||||
#: templates/umap/map_list.html:18 views.py:444
|
||||
#: templates/umap/map_list.html:10 views.py:433
|
||||
msgid "by"
|
||||
msgstr "από"
|
||||
|
||||
#: templates/umap/map_list.html:22
|
||||
msgid "See the map"
|
||||
msgstr "Δες τον χάρτη"
|
||||
|
||||
#: templates/umap/map_list.html:28
|
||||
#: templates/umap/map_list.html:18
|
||||
msgid "More"
|
||||
msgstr "Περισσότερα"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr "Όνομα"
|
||||
|
||||
|
@ -535,7 +406,7 @@ msgstr "Τελευταία αποθήκευση"
|
|||
msgid "Owner"
|
||||
msgstr "Κάτοχος"
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr "Ενέργειες"
|
||||
|
||||
|
@ -548,7 +419,7 @@ msgid "Share"
|
|||
msgstr "Διαμοιρασμός"
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr "Επεξεργασία"
|
||||
|
||||
|
@ -611,6 +482,10 @@ msgstr "Σύνδεση"
|
|||
msgid "Sign in"
|
||||
msgstr "Εγγραφή"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Σχετικά"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr "Αλλαγή κωδικού πρόσβασης"
|
||||
|
@ -619,62 +494,52 @@ msgstr "Αλλαγή κωδικού πρόσβασης"
|
|||
msgid "Log out"
|
||||
msgstr "Αποσύνδεση"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr "Αλλαγή κωδικού πρόσβασης"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Παρακαλώ εισάγετε τον παλιό κωδικό πρόσβασης και μετά εισάγετε τον νέο κωδικό πρόσβασης δύο φορές, ώστε να επιβεβαιωθεί ότι πληκτρολογήθηκε σωστά."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr "Παλιός κωδικός πρόσβασης"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr "Νέος κωδικός πρόσβασης"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr "Επιβεβαίωση νέου κωδικού πρόσβασης"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr "Αλλαγή του κωδικού πρόσβασης"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr "Η αλλαγή του κωδικού πρόσβασης ήταν επιτυχημένη"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr "Ο κωδικός πρόσβασής σας άλλαξε."
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr "Εξερεύνηση χαρτών"
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] "%(count)s χάρτης βρέθηκε:"
|
||||
msgstr[1] "%(count)s χάρτες βρέθηκαν:"
|
||||
|
||||
#: templates/umap/search.html:30
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr "Δεν βρέθηκε κανένας χάρτης."
|
||||
|
||||
#: templates/umap/search.html:36
|
||||
msgid "Latest created maps in category"
|
||||
msgstr "Τελευταία δημιουργημένοι χάρτες στην κατηγορία"
|
||||
|
||||
#: templates/umap/search.html:43
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr "Χάρτες που δημιουργήθηκαν τελευταίοι"
|
||||
|
||||
|
@ -682,44 +547,27 @@ msgstr "Χάρτες που δημιουργήθηκαν τελευταίοι"
|
|||
msgid "Search maps"
|
||||
msgstr "Αναζήτηση χαρτών"
|
||||
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Any category"
|
||||
msgstr "Οποιαδήποτε κατηγορία"
|
||||
|
||||
#: templates/umap/search_bar.html:19
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr "Αναζήτηση"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr "Διαγραφή ομάδας"
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr "%(current_team)s’s χάρτες"
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr "Περιήγηση στους χάρτες της %(current_team)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr "%(current_team)s δεν έχει δημόσιους χάρτες."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr "Δημιουργία ή επεξεργασία ομάδας"
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr "Διαγραφή αυτής της ομάδας"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr "Προσθήκη χρήστη"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
msgid "Search my maps"
|
||||
|
@ -738,82 +586,78 @@ msgstr "Λήψη%(count)s χαρτών"
|
|||
msgid "You have no map yet."
|
||||
msgstr "Δεν έχετε ακόμη χάρτη."
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Οι ομάδες μου"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr "Χρήστες"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr "Νέα ομάδα"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr "Δεν είναι δυνατή η διαγραφή μιας ομάδας που έχει περισσότερα από ένα μέλη"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "Η ομάδα «%(name)s» έχει διαγραφεί."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:449
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Προβολή του χάρτη"
|
||||
|
||||
#: views.py:845
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr "Προβολή πλήρους οθόνης"
|
||||
|
||||
#: views.py:988
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Η ενημέρωση των συντακτών χάρτη ήταν επιτυχής!"
|
||||
|
||||
#: views.py:1024
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Ο uMap σύνδεσμος επεξεργασίας του χάρτη σας: %(map_name)s"
|
||||
|
||||
#: views.py:1027
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Εδώ είναι ο μυστικός σύνδεσμος επεξεργασίας: %(link)s"
|
||||
|
||||
#: views.py:1034
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "Αδυναμία αποστολής email στο %(email)s"
|
||||
|
||||
#: views.py:1037
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "Μήνυμα email στάλθηκε στο %(email)s"
|
||||
|
||||
#: views.py:1048
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Μονό ο ιδιοκτήτης μπορεί να διαγράψει αυτό τον χάρτη."
|
||||
|
||||
#: views.py:1054
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Ο χάρτης διαγράφηκε με επιτυχία."
|
||||
|
||||
#: views.py:1080
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Ο χάρτης κλωνοποιήθηκε! Αν θέλετε να τον επεξεργαστείτε από κάποιον άλλο υπολογιστή, παρακαλώ χρησιμοποιήστε αυτόν τον σύνδεσμο: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1085
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Συγχαρητήρια ο χάρτης σας κλωνοποιήθηκε!"
|
||||
|
||||
#: views.py:1339
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Το επίπεδο διαγράφηκε με επιτυχία."
|
||||
|
||||
#: views.py:1361
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "Τα δικαιώματα ενημερώθηκαν με επιτυχία!"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-04-25 15:38+0000\n"
|
||||
"POT-Creation-Date: 2024-10-04 16:35+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -21,281 +21,168 @@ msgstr ""
|
|||
msgid "CSV Export"
|
||||
msgstr ""
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account "
|
||||
"and maps. Then, please logout and login again with the new provider."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:61 models.py:80
|
||||
msgid "name"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:63 models.py:493
|
||||
msgid "description"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:111
|
||||
msgid "details"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:112
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:122
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:128
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:176 models.py:487
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:177 models.py:488
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:481
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:190 models.py:482
|
||||
msgid "Editors and team only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:182 models.py:483
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:186
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:189
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:192 models.py:477
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:195
|
||||
msgid "center"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:196
|
||||
msgid "zoom"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:198
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:198
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:202
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:203
|
||||
msgid "licence"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:214
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:218
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:224
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:230 models.py:509
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:235 models.py:514
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:238 models.py:504
|
||||
msgid "settings"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:410
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:476 models.py:480 models.py:486
|
||||
#: forms.py:69 models.py:441
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:499
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:55 models.py:74
|
||||
msgid "name"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:57 models.py:451
|
||||
msgid "description"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:105
|
||||
msgid "details"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:106
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:116
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:122
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:168 models.py:442
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:169 models.py:175 models.py:443
|
||||
msgid "Editors and team only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:170 models.py:444
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:173
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:174
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:176
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:179
|
||||
msgid "center"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180
|
||||
msgid "zoom"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:182
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:182
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:186
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:187
|
||||
msgid "licence"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:198
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:202
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:208
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:214 models.py:465
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:219
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:222 models.py:460
|
||||
msgid "settings"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:382
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:455
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:500
|
||||
#: models.py:456
|
||||
msgid "Display this layer on load."
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:296
|
||||
msgid "Art and Culture"
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:297
|
||||
msgid "Cycling"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:298
|
||||
msgid "Business"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:299
|
||||
msgid "Environment"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:300
|
||||
msgid "Education"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:301
|
||||
msgid "Food and Agriculture"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:302
|
||||
msgid "Geopolitics"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:303
|
||||
msgid "Health"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:304
|
||||
msgid "Hiking"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:305
|
||||
msgid "History"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:306
|
||||
msgid "Public sector"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:307
|
||||
msgid "Science"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:308
|
||||
msgid "Shopping"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:309
|
||||
msgid "Sport and Leisure"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:310
|
||||
msgid "Travel"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:311
|
||||
msgid "Transports"
|
||||
msgstr ""
|
||||
|
||||
#: settings/base.py:312
|
||||
msgid "Tourism"
|
||||
msgstr ""
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s "
|
||||
"permissions."
|
||||
msgstr ""
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr ""
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case "
|
||||
"one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
@ -306,32 +193,24 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
|
@ -383,13 +262,13 @@ msgstr ""
|
|||
msgid "Play with the demo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -397,35 +276,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
|
@ -485,7 +364,7 @@ msgstr ""
|
|||
msgid "Map of the uMaps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:25
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr ""
|
||||
|
||||
|
@ -493,19 +372,15 @@ msgstr ""
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:18 views.py:444
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:22
|
||||
msgid "See the map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_list.html:28
|
||||
#: templates/umap/map_list.html:20
|
||||
msgid "More"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
|
@ -529,7 +404,7 @@ msgstr ""
|
|||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
|
@ -542,7 +417,7 @@ msgid "Share"
|
|||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
|
@ -605,6 +480,10 @@ msgstr ""
|
|||
msgid "Sign in"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
@ -613,61 +492,52 @@ msgstr ""
|
|||
msgid "Log out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:6 templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new "
|
||||
"password twice so we can verify you typed it in correctly."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:30
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:36
|
||||
msgid "Latest created maps in category"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:43
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
|
@ -675,42 +545,25 @@ msgstr ""
|
|||
msgid "Search maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Any category"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:19
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
|
@ -731,15 +584,11 @@ msgstr ""
|
|||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
|
@ -752,61 +601,61 @@ msgstr ""
|
|||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:449
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:845
|
||||
#: views.py:818
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:988
|
||||
#: views.py:950
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1024
|
||||
#: views.py:986
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1027
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1034
|
||||
#: views.py:996
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1037
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1048
|
||||
#: views.py:1010
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1054
|
||||
#: views.py:1013
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1080
|
||||
#: views.py:1039
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1085
|
||||
#: views.py:1044
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1339
|
||||
#: views.py:1277
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1361
|
||||
#: views.py:1299
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -4,14 +4,14 @@
|
|||
#
|
||||
# Translators:
|
||||
# Moon Ika, 2020
|
||||
# Moon Ika, 2020,2025
|
||||
# Moon Ika, 2020
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-03-07 15:18+0000\n"
|
||||
"POT-Creation-Date: 2024-02-15 13:53+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Moon Ika, 2020,2025\n"
|
||||
"Last-Translator: Moon Ika, 2020\n"
|
||||
"Language-Team: Estonian (http://app.transifex.com/openstreetmap/umap/language/et/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -19,357 +19,258 @@ msgstr ""
|
|||
"Language: et\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "CSV eksport"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "See kaart pole avalikult kättesaadav"
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Sait on hoolduseks kirjutuskaitstud"
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account"
|
||||
" and maps. Then, please logout and login again with the new provider."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
msgid "name"
|
||||
msgstr "nimi"
|
||||
|
||||
#: models.py:62 models.py:485
|
||||
msgid "description"
|
||||
msgstr "kirjeldus"
|
||||
|
||||
#: models.py:110
|
||||
msgid "details"
|
||||
msgstr "detailid"
|
||||
|
||||
#: models.py:111
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link litsentsi selgitavale lehele."
|
||||
|
||||
#: models.py:121
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:127
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:175 models.py:479
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Muudetav ainult salajase muutmislingiga"
|
||||
|
||||
#: models.py:176 models.py:480
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Igaüks saab muuta"
|
||||
|
||||
#: models.py:179 models.py:473
|
||||
msgid "Everyone"
|
||||
msgstr "Kõik"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:474
|
||||
msgid "Editors and team only"
|
||||
msgstr "Ainult toimetajad ja meeskond"
|
||||
|
||||
#: models.py:181 models.py:475
|
||||
msgid "Owner only"
|
||||
msgstr "Ainult omanik"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr "Mustand (privaatne)"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Kõik (avalik)"
|
||||
|
||||
#: models.py:188
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
msgid "Blocked"
|
||||
msgstr "Blokeeritud"
|
||||
|
||||
#: models.py:191 models.py:469
|
||||
msgid "Deleted"
|
||||
msgstr "Kustutatud"
|
||||
|
||||
#: models.py:194
|
||||
msgid "center"
|
||||
msgstr "tsentreeri"
|
||||
|
||||
#: models.py:195
|
||||
msgid "zoom"
|
||||
msgstr "suurenda"
|
||||
|
||||
#: models.py:197
|
||||
msgid "locate"
|
||||
msgstr "määra asukoht"
|
||||
|
||||
#: models.py:197
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Määra laadimisel kasutaja asukoht?"
|
||||
|
||||
#: models.py:201
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vali kaardi litsents."
|
||||
|
||||
#: models.py:202
|
||||
msgid "licence"
|
||||
msgstr "litsents"
|
||||
|
||||
#: models.py:213
|
||||
msgid "owner"
|
||||
msgstr "omanik"
|
||||
|
||||
#: models.py:217
|
||||
msgid "editors"
|
||||
msgstr "toimetajad"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr "meeskond"
|
||||
|
||||
#: models.py:229 models.py:501
|
||||
msgid "edit status"
|
||||
msgstr "muutmise staatus"
|
||||
|
||||
#: models.py:234 models.py:506
|
||||
msgid "share status"
|
||||
msgstr "jagamise staatus"
|
||||
|
||||
#: models.py:237 models.py:496
|
||||
msgid "settings"
|
||||
msgstr "seaded"
|
||||
|
||||
#: models.py:407
|
||||
msgid "Clone of"
|
||||
msgstr "Koopia"
|
||||
|
||||
#: models.py:468 models.py:472 models.py:478
|
||||
#: forms.py:69 models.py:371
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:491
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Sait on hoolduseks kirjutuskaitstud"
|
||||
|
||||
#: models.py:50
|
||||
msgid "name"
|
||||
msgstr "nimi"
|
||||
|
||||
#: models.py:81
|
||||
msgid "details"
|
||||
msgstr "detailid"
|
||||
|
||||
#: models.py:82
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link litsentsi selgitavale lehele."
|
||||
|
||||
#: models.py:92
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:98
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:144 models.py:372
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:145 models.py:151 models.py:373
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:146 models.py:374
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:149
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:150
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:152
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:155 models.py:378
|
||||
msgid "description"
|
||||
msgstr "kirjeldus"
|
||||
|
||||
#: models.py:156
|
||||
msgid "center"
|
||||
msgstr "tsentreeri"
|
||||
|
||||
#: models.py:157
|
||||
msgid "zoom"
|
||||
msgstr "suurenda"
|
||||
|
||||
#: models.py:159
|
||||
msgid "locate"
|
||||
msgstr "määra asukoht"
|
||||
|
||||
#: models.py:159
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Määra kasutaja asukoht laadimisel?"
|
||||
|
||||
#: models.py:163
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vali kaardi litsents."
|
||||
|
||||
#: models.py:164
|
||||
msgid "licence"
|
||||
msgstr "litsents"
|
||||
|
||||
#: models.py:175
|
||||
msgid "owner"
|
||||
msgstr "omanik"
|
||||
|
||||
#: models.py:179
|
||||
msgid "editors"
|
||||
msgstr "toimetajad"
|
||||
|
||||
#: models.py:184 models.py:392
|
||||
msgid "edit status"
|
||||
msgstr "muutmise staatus"
|
||||
|
||||
#: models.py:189
|
||||
msgid "share status"
|
||||
msgstr "jagamise staatus"
|
||||
|
||||
#: models.py:192 models.py:387
|
||||
msgid "settings"
|
||||
msgstr "seaded"
|
||||
|
||||
#: models.py:320
|
||||
msgid "Clone of"
|
||||
msgstr "Koopia"
|
||||
|
||||
#: models.py:382
|
||||
msgid "display on load"
|
||||
msgstr "kuva laadimisel"
|
||||
|
||||
#: models.py:492
|
||||
#: models.py:383
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Kuva seda kihti laadimisel"
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Vii mind avalehele"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Mine avalehele"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 Lehte ei leitud"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Sirvi kasutaja %(current_user)s kaarte"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "Kasutajal %(current_user)s pole kaarte."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:7
|
||||
msgid "My Profile"
|
||||
msgstr "Minu profiil"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:20
|
||||
msgid "Save"
|
||||
msgstr "Salvesta"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:25
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:31
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:33
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
msgstr "Logi sisse"
|
||||
#: templates/registration/login.html:16
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Logi palun oma kontoga sisse"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Tuvasta end kaartide salvestamiseks ja kiireks leidmiseks."
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr "Palun logi oma kontoga sisse:"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:28
|
||||
msgid "Username"
|
||||
msgstr "Kasutajanimi"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:31
|
||||
msgid "Password"
|
||||
msgstr "Salasõna"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr "Vali teenusepakkuja:"
|
||||
#: templates/registration/login.html:32
|
||||
msgid "Login"
|
||||
msgstr "Logi sisse"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Teave"
|
||||
#: templates/registration/login.html:37
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Vali palun teenusepakkuja"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr "uMap võimaldab sul hetkega luua <a href=\"%(osm_url)s\" />OpenStreetMap</a> kihtidega kaarte ja manustada neid oma saidil."
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Vali oma kaardile kihid"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Lisa POId: markerid, jooned, hulknurgad..."
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Halda POIde värve ja ikoone"
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Halda kaardi suvandeid: kuva minikaart, määra laadimisel kasutaja asukoht..."
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Geostruktureeritud andmete hulgiimport (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Vali oma andmetele litsents"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Manusta ja jaga oma kaarti"
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Ja see kõik on <a href=\"%(repo_url)s\">avatud lähtekoodiga</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "Create a map"
|
||||
msgstr "Loo kaart"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr "Mängi demoga"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "Siin on sinu salalink kaardi toimetamiseks, hoia seda salajas:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
msgid "Copy link"
|
||||
msgstr "Kopeeri link"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "Sisesta salalingi saamiseks oma e-posti aadress:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
msgid "Email"
|
||||
msgstr "E-post"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
msgid "Send me the link"
|
||||
msgstr "Saada mulle link"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:22
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -378,358 +279,270 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr "OpenStreetMapi projekt"
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr "versioon"
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr "Kontakt"
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr "Abi"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr "Minu kaardid (%(count)s)"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr "Minu kaardid"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr "Minu profiil"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr "Minu meeskonnad"
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "uMaps'i kaart"
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "uMapsi kaart"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Sirvi kaarte ja ammuta inspiratsiooni"
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Oled sisse logitud. Jätkamine..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:438
|
||||
#: templates/umap/map_list.html:9 views.py:341
|
||||
msgid "by"
|
||||
msgstr "kasutajalt"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17
|
||||
msgid "More"
|
||||
msgstr "Rohkem"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Name"
|
||||
msgstr "Nimi"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Preview"
|
||||
msgstr "Eelvaade"
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
msgid "Who can see"
|
||||
msgstr "Kes saavad vaadata"
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
msgid "Who can edit"
|
||||
msgstr "Kes saavad toimetada"
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
msgid "Last save"
|
||||
msgstr "Viimane salvestamine"
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
msgid "Owner"
|
||||
msgstr "Omanik"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:12
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
#: templates/umap/map_table.html:25 templates/umap/map_table.html:27
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:46 templates/umap/map_table.html:48
|
||||
msgid "Share"
|
||||
msgstr "Jaga"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/map_table.html:51 templates/umap/map_table.html:53
|
||||
msgid "Edit"
|
||||
msgstr "Redigeeri"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:56 templates/umap/map_table.html:58
|
||||
msgid "Download"
|
||||
msgstr "Laadi alla"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
#: templates/umap/map_table.html:63 templates/umap/map_table.html:65
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
#: templates/umap/map_table.html:73 templates/umap/map_table.html:75
|
||||
msgid "Delete"
|
||||
msgstr "Kustuta"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
#: templates/umap/map_table.html:88
|
||||
msgid "first"
|
||||
msgstr "esimene"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
#: templates/umap/map_table.html:89
|
||||
msgid "previous"
|
||||
msgstr "eelmine"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#: templates/umap/map_table.html:98
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr "%(maps_number)s. lehekülg %(num_pages)s-st"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
#: templates/umap/map_table.html:104
|
||||
msgid "next"
|
||||
msgstr "järgmine"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
#: templates/umap/map_table.html:105
|
||||
msgid "last"
|
||||
msgstr "viimane"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#: templates/umap/map_table.html:113
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr "Jooni leheküljel: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#: templates/umap/map_table.html:118
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr "%(count)s kaarti"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
#: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:13
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Log in"
|
||||
msgstr "Logi sisse"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Sign in"
|
||||
msgstr "Loo konto"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:21
|
||||
msgid "About"
|
||||
msgstr "Teave"
|
||||
|
||||
#: templates/umap/navigation.html:24
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:29
|
||||
msgid "Change password"
|
||||
msgstr "Muuda salasõna"
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:33
|
||||
msgid "Log out"
|
||||
msgstr "Logi välja"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr "Salasõna vahetamine"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Sisesta palun oma vana salasõna, seejärel kaks korda uus salasõna."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr "Vana salasõna"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr "Uus salasõna"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr "Uue salasõna kinnitamine"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr "Muuda salasõna"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr "Salasõna vahetamine õnnestus"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr "Sinu salasõna on muudetud."
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:28
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr "Kaarti ei leitud."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:33
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr "Viimati loodud kaardid."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "Otsi kaarte"
|
||||
|
||||
#: templates/umap/search_bar.html:16
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "Otsi"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
msgid "Delete this team"
|
||||
msgstr "Kustuta see meeskond"
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
msgid "Add user"
|
||||
msgstr "Lisa kasutaja"
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
|
||||
msgid "Search my maps"
|
||||
msgstr "Otsi minu kaarte"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
#: templates/umap/user_dashboard.html:11
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:13
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
|
||||
msgid "Map’s title"
|
||||
msgstr "Kaardi pealkiri"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#: templates/umap/user_dashboard.html:32
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Minu meeskonnad"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
msgid "Users"
|
||||
msgstr "Kasutajad"
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
msgid "New team"
|
||||
msgstr "Uus meeskond"
|
||||
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "Meeskond “%(name)s” on kustutatud"
|
||||
|
||||
#: views.py:443
|
||||
#: views.py:346
|
||||
msgid "View the map"
|
||||
msgstr "Vaata kaarti"
|
||||
|
||||
#: views.py:839
|
||||
#: views.py:704
|
||||
msgid "See full screen"
|
||||
msgstr "Vaata täisekraanil"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:982
|
||||
#: views.py:803
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Kaardi toimetajaid uuendati edukalt!"
|
||||
|
||||
#: views.py:1018
|
||||
#: views.py:841
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Redigeerimislink sinu uMapi kaardile: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1021
|
||||
#: views.py:844
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Siin on sinu salajane redigeerimislink: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1028
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "Ei saa saata e-kirja aadressile %(email)s"
|
||||
|
||||
#: views.py:1031
|
||||
#: views.py:850
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "E-kiri saadetud aadressile %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1042
|
||||
#: views.py:861
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Kaardi saab kustutada vaid selle omanik."
|
||||
msgstr "Kaarti saab kustutada vaid selle omanik."
|
||||
|
||||
#: views.py:1045
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Kaart on kustutatud."
|
||||
|
||||
#: views.py:1071
|
||||
#: views.py:889
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Sinu kaart on kopeeritud! Kui sa soovid oma kaarti muuta teisest arvutist, kasuta palun seda linki: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1076
|
||||
#: views.py:894
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Sinu kaart on kopeeritud!"
|
||||
|
||||
#: views.py:1330
|
||||
#: views.py:1130
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Kiht on kustutatud."
|
||||
|
||||
#: views.py:1352
|
||||
#: views.py:1152
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|
|
@ -3,15 +3,15 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Alexander Gabilondo <alexgabi@disroot.org>, 2024-2025
|
||||
# Alexander Gabilondo <alexgabi@disroot.org>, 2024
|
||||
# Mikel Larreategi <mlarreategi@codesyntax.com>, 2023
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2025-03-07 15:18+0000\n"
|
||||
"POT-Creation-Date: 2024-08-30 18:23+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Alexander Gabilondo <alexgabi@disroot.org>, 2024-2025\n"
|
||||
"Last-Translator: Alexander Gabilondo <alexgabi@disroot.org>, 2024\n"
|
||||
"Language-Team: Basque (http://app.transifex.com/openstreetmap/umap/language/eu/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -19,217 +19,168 @@ msgstr ""
|
|||
"Language: eu\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr "CSV esportazioa"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr "Mapa hau ez dago publikoki erabilgarri"
|
||||
|
||||
#: middleware.py:19
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Webgunea irakurtzeko moduan dago mantentze-lanak direla-eta"
|
||||
|
||||
#: middleware.py:34
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Using “%(name)s” to authenticate is deprecated and will be removed soon. "
|
||||
"Please configure another provider below before losing access to your account"
|
||||
" and maps. Then, please logout and login again with the new provider."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
msgid "name"
|
||||
msgstr "izena"
|
||||
|
||||
#: models.py:62 models.py:485
|
||||
msgid "description"
|
||||
msgstr "deskribapena"
|
||||
|
||||
#: models.py:110
|
||||
msgid "details"
|
||||
msgstr "xehetasunak"
|
||||
|
||||
#: models.py:111
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Estekatu lizentzia zehazten den orrialde batera."
|
||||
|
||||
#: models.py:121
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URLaren txantiloia OSMren lauzen formatua erabiliz"
|
||||
|
||||
#: models.py:127
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Lauzen geruzek edizio kutxan duten ordena"
|
||||
|
||||
#: models.py:175 models.py:479
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Bakarrik esteka sekretuarekin bakarrik editatu daiteke"
|
||||
|
||||
#: models.py:176 models.py:480
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Edonork editatu dezake"
|
||||
|
||||
#: models.py:179 models.py:473
|
||||
msgid "Everyone"
|
||||
msgstr "Edonork"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:474
|
||||
msgid "Editors and team only"
|
||||
msgstr "Editoreak eta taldea soilik"
|
||||
|
||||
#: models.py:181 models.py:475
|
||||
msgid "Owner only"
|
||||
msgstr "Jabea bakarrik"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr "Zirriborroa (pribatua)"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Edonork (publikoa)"
|
||||
|
||||
#: models.py:188
|
||||
msgid "Anyone with link"
|
||||
msgstr "Esteka duen edonork"
|
||||
|
||||
#: models.py:190
|
||||
msgid "Blocked"
|
||||
msgstr "Blokeatuta"
|
||||
|
||||
#: models.py:191 models.py:469
|
||||
msgid "Deleted"
|
||||
msgstr "Ezabatua"
|
||||
|
||||
#: models.py:194
|
||||
msgid "center"
|
||||
msgstr "erdiko puntua"
|
||||
|
||||
#: models.py:195
|
||||
msgid "zoom"
|
||||
msgstr "zooma"
|
||||
|
||||
#: models.py:197
|
||||
msgid "locate"
|
||||
msgstr "kokatu"
|
||||
|
||||
#: models.py:197
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Kokatu erabiltzailea mapa kargatzen denean?"
|
||||
|
||||
#: models.py:201
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Aukeratu maparen lizentzia."
|
||||
|
||||
#: models.py:202
|
||||
msgid "licence"
|
||||
msgstr "lizentzia"
|
||||
|
||||
#: models.py:213
|
||||
msgid "owner"
|
||||
msgstr "jabea"
|
||||
|
||||
#: models.py:217
|
||||
msgid "editors"
|
||||
msgstr "editoreak"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr "taldea"
|
||||
|
||||
#: models.py:229 models.py:501
|
||||
msgid "edit status"
|
||||
msgstr "editatu egoera"
|
||||
|
||||
#: models.py:234 models.py:506
|
||||
msgid "share status"
|
||||
msgstr "partekatu egoera"
|
||||
|
||||
#: models.py:237 models.py:496
|
||||
msgid "settings"
|
||||
msgstr "ezarpenak"
|
||||
|
||||
#: models.py:407
|
||||
msgid "Clone of"
|
||||
msgstr "Beste honen klona"
|
||||
|
||||
#: models.py:468 models.py:472 models.py:478
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr "Heredatu"
|
||||
|
||||
#: models.py:491
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "Webgunea irakurtzeko moduan dago mantentze-lanak direla-eta"
|
||||
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "izena"
|
||||
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "deskribapena"
|
||||
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "xehetasunak"
|
||||
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Estekatu lizentzia zehazten den orrialde batera."
|
||||
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URLaren txantiloia OSMren lauzen formatua erabiliz"
|
||||
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Lauzen geruzek edizio kutxan duten ordena"
|
||||
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "Edonork"
|
||||
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "Jabea bakarrik"
|
||||
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "Edonork (publikoa)"
|
||||
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "Esteka duen edonork"
|
||||
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr "Blokeatuta"
|
||||
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "erdiko puntua"
|
||||
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "zooma"
|
||||
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "kokatu"
|
||||
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Kokatu erabiltzailea mapa kargatzen denean?"
|
||||
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Aukeratu maparen lizentzia."
|
||||
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "lizentzia"
|
||||
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "jabea"
|
||||
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "editoreak"
|
||||
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "editatu egoera"
|
||||
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "partekatu egoera"
|
||||
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "ezarpenak"
|
||||
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "Beste honen klona"
|
||||
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "erakutsi kargatzean"
|
||||
|
||||
#: models.py:492
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Erakutsi geruza hau kargatzean"
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr " <a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" target=\"_blank\">Ikusi hemen</a> maparen baimenak kudeatzeko dokumentazioa."
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Eraman nazazu hasiera orrialdera"
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr "← Joan hasierara"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr "404 Ez da orrialdea aurkitu"
|
||||
|
||||
#: templates/auth/user_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s maps"
|
||||
msgstr "%(current_user)s-ren mapak"
|
||||
|
||||
#: templates/auth/user_detail.html:12
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Arakatu %(current_user)s erabiltzailearen mapak"
|
||||
|
||||
#: templates/auth/user_detail.html:21
|
||||
#: templates/auth/user_detail.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr "%(current_user)s erabiltzaileak ez du maparik."
|
||||
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Profile"
|
||||
msgstr "Nire profila"
|
||||
|
||||
#: templates/auth/user_form.html:24 templates/umap/team_form.html:25
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
msgid "Save"
|
||||
msgstr "Gorde"
|
||||
|
||||
#: templates/auth/user_form.html:30
|
||||
#: templates/auth/user_form.html:27
|
||||
msgid "Your current providers"
|
||||
msgstr "Zure egungo hornitzaileak"
|
||||
|
||||
#: templates/auth/user_form.html:44
|
||||
#: templates/auth/user_form.html:39
|
||||
msgid "Connect to another provider"
|
||||
msgstr "Konektatu beste hornitzaile batekin"
|
||||
|
||||
#: templates/auth/user_form.html:47
|
||||
#: templates/auth/user_form.html:42
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr "Ohitura ona da zure kontua hornitzaile bati baino gehiagori konektatzea, hornitzaileren bat erabilgarri ez badago, aldi baterako edo baita betiko."
|
||||
|
||||
#: templates/auth/user_stars.html:6
|
||||
#, python-format
|
||||
msgid "%(current_user)s’s starred maps"
|
||||
msgstr "%(current_user)s-ren mapa izardunak"
|
||||
|
||||
#: templates/auth/user_stars.html:12
|
||||
#: templates/auth/user_stars.html:8
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr "Arakatu %(current_user)s erabiltzailearen gogoko mapak"
|
||||
|
||||
#: templates/auth/user_stars.html:21
|
||||
#: templates/auth/user_stars.html:17
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr "%(current_user)s erabiltzaileak ez du gogoko maparik oraindik."
|
||||
|
@ -240,33 +191,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "uMap-ek OpenStreetMap geruzekin mapak minutu batean sortzeko eta zure webgunean txertatzeko aukera ematen dizu."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "Sartu"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr "Zure mapak gordetzeko eta erraz aurkitzeko, identifikatu zaitez."
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Sartu zure kontua erabiliz"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr "Hasi saioa zure kontuarekin:"
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "Erabiltzaile izena"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "Pasahitza"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr "Aukeratu hornitzaile bat:"
|
||||
|
||||
#: templates/umap/about.html:5 templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Honi buruz"
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Aukeratu hornitzaile bat"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -317,13 +260,13 @@ msgstr "Sortu mapa bat"
|
|||
msgid "Play with the demo"
|
||||
msgstr "Jolastu probatako ingurunean"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "Itxi"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -331,35 +274,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr "Aholkua: zure mapak erraz aurkitzeko, <a href=\"%(login_url)s\" target=\"_blank\">kontu bat sortu</a> edo<a href=\"%(login_url)s\" target=\"_blank\">saioa hasi</a>."
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "Hona hemen mapa editatzeko zure esteka sekretua, gorde ezazu seguru:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "Kopiatu esteka"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "Sartu zure helbide elektronikoa esteka sekretua jasotzeko:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "Helbide elektronikoa"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "Bidalidazu esteka"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr "Ikusi haien aldaketak beste fitxa batean"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "Mantendu zure aldaketak eta baztertu haienak"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "Mantendu haien aldaketak eta baztertu zureak"
|
||||
|
||||
|
@ -380,19 +323,19 @@ msgstr "Hau probatako ingurunea da, testak egin eta argitaratu aurreko bertsioak
|
|||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr "OpenStreetMap proiektu bat"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr "bertsioa"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr "Ostalaria"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr "Harremanetan jarri"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
|
@ -407,13 +350,13 @@ msgstr "Nire mapak (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "Nire mapak"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "Nire profila"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr "Nire taldeak"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -427,15 +370,15 @@ msgstr "Inspira zaitez dauden mapak arakatzen"
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Sartu egin zara. Jarraitu..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:438
|
||||
#: templates/umap/map_list.html:10 views.py:433
|
||||
msgid "by"
|
||||
msgstr "nork eginda"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:18
|
||||
msgid "More"
|
||||
msgstr "Gehiago"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:18
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
msgid "Name"
|
||||
msgstr "Izena"
|
||||
|
||||
|
@ -453,13 +396,13 @@ msgstr "Nork edita dezake"
|
|||
|
||||
#: templates/umap/map_table.html:20
|
||||
msgid "Last save"
|
||||
msgstr "Gordetako azkena"
|
||||
msgstr "Azken gordetzea"
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
msgid "Owner"
|
||||
msgstr "Jabea"
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:24
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
msgid "Actions"
|
||||
msgstr "Ekintzak"
|
||||
|
||||
|
@ -472,7 +415,7 @@ msgid "Share"
|
|||
msgstr "Partekatu"
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:42 templates/umap/user_teams.html:44
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
msgid "Edit"
|
||||
msgstr "Editatu"
|
||||
|
||||
|
@ -535,6 +478,10 @@ msgstr "Sartu"
|
|||
msgid "Sign in"
|
||||
msgstr "Izena eman"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "About"
|
||||
msgstr "Honi buruz"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
msgid "Change password"
|
||||
msgstr "Aldatu pasahitza"
|
||||
|
@ -543,58 +490,52 @@ msgstr "Aldatu pasahitza"
|
|||
msgid "Log out"
|
||||
msgstr "Irten"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
#: templates/umap/password_change.html:11
|
||||
#: templates/umap/password_change.html:7
|
||||
msgid "Password change"
|
||||
msgstr "Pasahiz aldaketa"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
#: templates/umap/password_change.html:10
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr "Idatzi zure pasahitz zaharra, eta ondoren zure pasahitz berria birritan, horrela ondo sartu duzula egiaztatuko dugu."
|
||||
|
||||
#: templates/umap/password_change.html:21
|
||||
#: templates/umap/password_change.html:17
|
||||
msgid "Old password"
|
||||
msgstr "Pasahitz zaharra"
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password"
|
||||
msgstr "Pasahitz berria"
|
||||
|
||||
#: templates/umap/password_change.html:30
|
||||
#: templates/umap/password_change.html:26
|
||||
msgid "New password confirmation"
|
||||
msgstr "Pasahitz berriaren egiaztapena"
|
||||
|
||||
#: templates/umap/password_change.html:31
|
||||
#: templates/umap/password_change.html:27
|
||||
msgid "Change my password"
|
||||
msgstr "Aldatu nire pasahitza"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
#: templates/umap/password_change_done.html:11
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Password change successful"
|
||||
msgstr "Pasahitza ondo aldatu da"
|
||||
|
||||
#: templates/umap/password_change_done.html:14
|
||||
#: templates/umap/password_change_done.html:10
|
||||
msgid "Your password was changed."
|
||||
msgstr "Zure pasahitza aldatu egin da"
|
||||
|
||||
#: templates/umap/search.html:6
|
||||
msgid "Explore maps"
|
||||
msgstr "Arakatu mapak"
|
||||
|
||||
#: templates/umap/search.html:19
|
||||
#: templates/umap/search.html:15
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] "mapa %(count)s aurkitu da:"
|
||||
msgstr[1] "%(count)s mapa aurkitu dira:"
|
||||
|
||||
#: templates/umap/search.html:28
|
||||
#: templates/umap/search.html:24
|
||||
msgid "No map found."
|
||||
msgstr "Ez da maparik aurkitu"
|
||||
|
||||
#: templates/umap/search.html:33
|
||||
#: templates/umap/search.html:29
|
||||
msgid "Latest created maps"
|
||||
msgstr "Sortutako azken mapak"
|
||||
|
||||
|
@ -602,40 +543,27 @@ msgstr "Sortutako azken mapak"
|
|||
msgid "Search maps"
|
||||
msgstr "Bilatu mapak"
|
||||
|
||||
#: templates/umap/search_bar.html:16
|
||||
#: templates/umap/search_bar.html:15
|
||||
msgid "Search"
|
||||
msgstr "Bilatu"
|
||||
|
||||
#: templates/umap/team_confirm_delete.html:6
|
||||
msgid "Team deletion"
|
||||
msgstr "Taldea ezabatzea"
|
||||
|
||||
#: templates/umap/team_detail.html:6
|
||||
#, python-format
|
||||
msgid "%(current_team)s’s maps"
|
||||
msgstr "%(current_team)s-ren mapak"
|
||||
|
||||
#: templates/umap/team_detail.html:14
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr "Arakatu %(current_team)s-ren mapak"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:26
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr "%(current_team)s-k ez dauka mapa publikorik."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:6
|
||||
msgid "Create or edit a team"
|
||||
msgstr "Sortu edo editatu talde bat"
|
||||
|
||||
#: templates/umap/team_form.html:28
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr "Ezabatu talde hau"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:51
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr "Gehitu erabiltzailea"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
msgid "Search my maps"
|
||||
|
@ -654,82 +582,78 @@ msgstr "Deskargatu %(count)s mapa"
|
|||
msgid "You have no map yet."
|
||||
msgstr "Oraindik ez daukazu maparik."
|
||||
|
||||
#: templates/umap/user_teams.html:6
|
||||
msgid "My Teams"
|
||||
msgstr "Nire taldeak"
|
||||
|
||||
#: templates/umap/user_teams.html:21
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr "Erabiltzaileak"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:52
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr "Talde berria"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr "Ezin da ezabatu kide bat baino gehiago dituen talde bat"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr "“%(name)s” taldea ezabatu da"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:443
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "Mapa ikusi"
|
||||
|
||||
#: views.py:839
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr "Ikusi pantaila osoan"
|
||||
|
||||
#: views.py:982
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Maparen editoreak ondo eguneratu dira!"
|
||||
|
||||
#: views.py:1018
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "Zure mapa editatzeko uMap-en esteka: %(map_name)s"
|
||||
|
||||
#: views.py:1021
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "Hona hemen zure editatzeko esteka sekretua:: %(link)s"
|
||||
|
||||
#: views.py:1028
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "Ezin da posta elektronikorik bidali %(email)s-ri"
|
||||
|
||||
#: views.py:1031
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "Posta elektronikoa bidalita %(email)s-ri"
|
||||
|
||||
#: views.py:1042
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Jabeak bakarrik ezabatu dezake mapa."
|
||||
|
||||
#: views.py:1045
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "Mapa behar bezala ezabatu da."
|
||||
|
||||
#: views.py:1071
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Zure mapa klonatu egin da! Mapa hau beste nabigatzaile batetik editatzeko erabili esteka hau: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1076
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Zorionak, zure mapa ondo klonatu da!"
|
||||
|
||||
#: views.py:1330
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Geruza ondo ezabatu da."
|
||||
|
||||
#: views.py:1352
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "Baimenak behar bezala eguneratu dira!"
|
||||
|
|
|
@ -12,7 +12,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-24 08:39+0000\n"
|
||||
"POT-Creation-Date: 2024-09-04 14:02+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: imni <iriman@chmail.ir>, 2024\n"
|
||||
"Language-Team: Persian (Iran) (http://app.transifex.com/openstreetmap/umap/language/fa_IR/)\n"
|
||||
|
@ -22,160 +22,133 @@ msgstr ""
|
|||
"Language: fa_IR\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
msgstr ""
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "فقط با پیوند محرمانهٔ ویرایش، ویرایش میشود"
|
||||
|
||||
#: decorators.py:60
|
||||
msgid "This map is not publicly available"
|
||||
msgstr ""
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "همه میتوانند ویرایش کنند"
|
||||
|
||||
#: forms.py:69 models.py:423
|
||||
msgid "Inherit"
|
||||
msgstr "ارثبردن"
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr "سایت برای امور نگهداری در حالت فقطخواندنی قرار دارد"
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:54 models.py:73
|
||||
msgid "name"
|
||||
msgstr "نام"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
#: models.py:56 models.py:433
|
||||
msgid "description"
|
||||
msgstr "توضیحات"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:104
|
||||
msgid "details"
|
||||
msgstr "جزئیات"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:105
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "پیوند به صفحهای که شرح مجوز در آن آمده است."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:115
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "الگوی نشانی اینترنتی با توجه به قالب کاشی OSM"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:121
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "ترتیب لایههای کاشی در جعبهٔ ویرایش"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "فقط با پیوند محرمانهٔ ویرایش، ویرایش میشود"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "همه میتوانند ویرایش کنند"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:167 models.py:424
|
||||
msgid "Everyone"
|
||||
msgstr "همه"
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
#: models.py:168 models.py:174 models.py:425
|
||||
msgid "Editors and team only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:169 models.py:426
|
||||
msgid "Owner only"
|
||||
msgstr "فقط مالک"
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:172
|
||||
msgid "Everyone (public)"
|
||||
msgstr "همه (عمومی)"
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:173
|
||||
msgid "Anyone with link"
|
||||
msgstr "هر کسی با پیوند"
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:175
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:178
|
||||
msgid "center"
|
||||
msgstr "مرکز"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:179
|
||||
msgid "zoom"
|
||||
msgstr "زوم"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "locate"
|
||||
msgstr "مکانیابی"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:181
|
||||
msgid "Locate user on load?"
|
||||
msgstr "کاربر هنگام بارشدن مکانیابی شود؟"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:185
|
||||
msgid "Choose the map licence."
|
||||
msgstr "مجوز نقشه را انتخاب کنید."
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:186
|
||||
msgid "licence"
|
||||
msgstr "مجوز"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:197
|
||||
msgid "owner"
|
||||
msgstr "مالک"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:201
|
||||
msgid "editors"
|
||||
msgstr "ویرایشگران"
|
||||
|
||||
#: models.py:223
|
||||
#: models.py:207
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:213 models.py:447
|
||||
msgid "edit status"
|
||||
msgstr "ویرایش وضعیت"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:218
|
||||
msgid "share status"
|
||||
msgstr "وضعیت همرسانی"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:221 models.py:442
|
||||
msgid "settings"
|
||||
msgstr "تنظیمات"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:364
|
||||
msgid "Clone of"
|
||||
msgstr "همانندسازیشده از"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr "ارثبردن"
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:437
|
||||
msgid "display on load"
|
||||
msgstr "نمایش هنگام بارشدن"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:438
|
||||
msgid "Display this layer on load."
|
||||
msgstr "این لایه هنگام بارشدن نمایش داده شود."
|
||||
|
||||
#: templates/403.html:8
|
||||
msgid ""
|
||||
"<a href=\"https://discover.umap-project.org/support/faq/#map-statuses\" "
|
||||
"target=\"_blank\">Find out here the documentation</a> on how to manage map’s"
|
||||
" permissions."
|
||||
msgstr ""
|
||||
|
||||
#: templates/403.html:10 templates/404.html:8
|
||||
msgid "← Go to the homepage"
|
||||
msgstr ""
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "404 Page Not Found"
|
||||
msgstr ""
|
||||
#: templates/404.html:8
|
||||
msgid "Take me to the home page"
|
||||
msgstr "مرا به صفحه اصلی ببر"
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#, python-format
|
||||
|
@ -221,29 +194,25 @@ msgid ""
|
|||
"them in your site."
|
||||
msgstr "در uMap میتوانید با لایههای اوپناستریتمپ خیلی سریع یک نقشه بسازید و در وبسایت خود جاسازی کنید."
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:45
|
||||
msgid "Login"
|
||||
msgstr "ورود"
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:24
|
||||
msgid "Please log in with your account"
|
||||
msgstr "لطفاً با حساب خود وارد شوید"
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:41
|
||||
msgid "Username"
|
||||
msgstr "نام کاربری"
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:44
|
||||
msgid "Password"
|
||||
msgstr "گذرواژه"
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
msgstr ""
|
||||
#: templates/registration/login.html:51
|
||||
msgid "Please choose a provider"
|
||||
msgstr "لطفاً یک خدماتدهنده را انتخاب کنید"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#, python-format
|
||||
|
@ -294,13 +263,13 @@ msgstr "ساخت نقشه"
|
|||
msgid "Play with the demo"
|
||||
msgstr "با نسخهٔ نمایشی کار کنید"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:17
|
||||
#: templates/umap/components/alerts/alert.html:66
|
||||
#: templates/umap/components/alerts/alert.html:94
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr "بستن"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:32
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
|
@ -308,35 +277,35 @@ msgid ""
|
|||
"target=\"_blank\">log in</a>."
|
||||
msgstr "نکتهٔ طلایی: برای اینکه نقشههای خود را به آسانی پیدا کنید، <a href=\"%(login_url)s\" target=\"_blank\">حساب کاربری بسازید</a> یا <a href=\"%(login_url)s\" target=\"_blank\">وارد شوید</a>."
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:37
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr "این پیوند محرمانهٔ شما برای ویرایش نقشه است. لطفاً در جای امنی نگهش دارید:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:41
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr "کپی پیوند"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:48
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr "رایانامهٔ خود را وارد کنید تا پیوند محرمانه را دریافت کنید:"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:54
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr "رایانامه"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:57
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr "پیوند را برایم بفرست"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:81
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr "ویرایشهایشان را در زبانهٔ دیگری ببینید"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:84
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr "تغییرات خود را نگه دارید و از آنها را رها کنید"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:87
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr "تغییرات آنها را نگه دارید و از خودتان را رها کنید"
|
||||
|
||||
|
@ -384,11 +353,11 @@ msgstr "نقشههای من (%(count)s)"
|
|||
msgid "My Maps"
|
||||
msgstr "نقشههای من"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
#: templates/umap/dashboard_menu.html:11
|
||||
msgid "My profile"
|
||||
msgstr "نمایهٔ من"
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
#: templates/umap/dashboard_menu.html:13
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
|
@ -404,7 +373,7 @@ msgstr "الهام بگیرید، نقشهها را مرور کنید"
|
|||
msgid "You are logged in. Continuing..."
|
||||
msgstr "شما وارد شدهاید. ادامه..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:437
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
msgid "by"
|
||||
msgstr "ساختهٔ"
|
||||
|
||||
|
@ -624,70 +593,70 @@ msgstr ""
|
|||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
#: views.py:235
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#: views.py:239
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:442
|
||||
#: views.py:438
|
||||
msgid "View the map"
|
||||
msgstr "مشاهدهٔ نقشه"
|
||||
|
||||
#: views.py:825
|
||||
#: views.py:824
|
||||
msgid "See full screen"
|
||||
msgstr "تمامصفحه ببینید"
|
||||
|
||||
#: views.py:968
|
||||
#: views.py:953
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "ویرایشگران نقشه با موفقیت روزآمد شد!"
|
||||
|
||||
#: views.py:1004
|
||||
#: views.py:989
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr "پیوند ویرایش uMap برای نقشهٔ شما: %(map_name)s"
|
||||
|
||||
#: views.py:1007
|
||||
#: views.py:992
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr "این پیوند محرمانهٔ ویرایش برای شماست: %(link)s"
|
||||
|
||||
#: views.py:1014
|
||||
#: views.py:999
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr "رایانامه به %(email)s فرستاده نشد"
|
||||
|
||||
#: views.py:1017
|
||||
#: views.py:1002
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr "رایانامه به %(email)s فرستاده شد"
|
||||
|
||||
#: views.py:1028
|
||||
#: views.py:1013
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "فقط مالک آن میتواند نقشه را حذف کند."
|
||||
|
||||
#: views.py:1031
|
||||
#: views.py:1016
|
||||
msgid "Map successfully deleted."
|
||||
msgstr "نقشه با موفقیت حذف شد."
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:1042
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "از نقشهٔ شما همانندسازی شد! اگر میخواهید این نقشه را از رایانهٔ دیگری ویرایش کنید، لطفاً از این پیوند استفاده کنید: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1062
|
||||
#: views.py:1047
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "تبریک، نقشهٔ شما همانندسازی شد!"
|
||||
|
||||
#: views.py:1313
|
||||
#: views.py:1282
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "لایه با موفقیت حذف شد."
|
||||
|
||||
#: views.py:1335
|
||||
#: views.py:1304
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr "مجوزها با موفقیت روزآمد شد!"
|
||||
|
|
|
@ -12,7 +12,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-12-11 17:05+0000\n"
|
||||
"POT-Creation-Date: 2024-02-15 13:53+0000\n"
|
||||
"PO-Revision-Date: 2013-11-22 14:00+0000\n"
|
||||
"Last-Translator: Jaakko Helleranta <jaakko@helleranta.com>, 2013\n"
|
||||
"Language-Team: Finnish (http://app.transifex.com/openstreetmap/umap/language/fi/)\n"
|
||||
|
@ -22,316 +22,258 @@ msgstr ""
|
|||
"Language: fi\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: admin.py:16
|
||||
msgid "CSV Export"
|
||||
#: forms.py:44 forms.py:70
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Muokattavissa vain salaisella muokkauslinkillä"
|
||||
|
||||
#: forms.py:45 forms.py:71
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Kuka tahansa saa muokata"
|
||||
|
||||
#: forms.py:69 models.py:371
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: middleware.py:13
|
||||
msgid "Site is readonly for maintenance"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:60 models.py:79
|
||||
#: models.py:50
|
||||
msgid "name"
|
||||
msgstr "nimi"
|
||||
|
||||
#: models.py:62 models.py:475
|
||||
msgid "description"
|
||||
msgstr "kuvaus"
|
||||
|
||||
#: models.py:110
|
||||
#: models.py:81
|
||||
msgid "details"
|
||||
msgstr "tarkemmat tiedot"
|
||||
|
||||
#: models.py:111
|
||||
#: models.py:82
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Linkki sivulle, jossa lisenssi on määritetty yksityiskohtaisesti."
|
||||
|
||||
#: models.py:121
|
||||
#: models.py:92
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "OSM-karttatiiliformaattia mukaileva URL-sapluuna"
|
||||
|
||||
#: models.py:127
|
||||
#: models.py:98
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Taustakarttojen järjestys muokkauslaatikossa"
|
||||
|
||||
#: models.py:175 models.py:469
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Muokattavissa vain salaisella muokkauslinkillä"
|
||||
|
||||
#: models.py:176 models.py:470
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Kuka tahansa saa muokata"
|
||||
|
||||
#: models.py:179 models.py:463
|
||||
#: models.py:144 models.py:372
|
||||
msgid "Everyone"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:180 models.py:189 models.py:464
|
||||
msgid "Editors and team only"
|
||||
#: models.py:145 models.py:151 models.py:373
|
||||
msgid "Editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:181 models.py:465
|
||||
#: models.py:146 models.py:374
|
||||
msgid "Owner only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:184
|
||||
msgid "Draft (private)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:185
|
||||
#: models.py:149
|
||||
msgid "Everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:188
|
||||
#: models.py:150
|
||||
msgid "Anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:190
|
||||
#: models.py:152
|
||||
msgid "Blocked"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:191
|
||||
msgid "Deleted"
|
||||
msgstr ""
|
||||
#: models.py:155 models.py:378
|
||||
msgid "description"
|
||||
msgstr "kuvaus"
|
||||
|
||||
#: models.py:194
|
||||
#: models.py:156
|
||||
msgid "center"
|
||||
msgstr "keskitä"
|
||||
|
||||
#: models.py:195
|
||||
#: models.py:157
|
||||
msgid "zoom"
|
||||
msgstr "zoomaa"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "locate"
|
||||
msgstr "paikanna"
|
||||
|
||||
#: models.py:197
|
||||
#: models.py:159
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Paikanna käyttäjä sivua ladattaessa?"
|
||||
|
||||
#: models.py:201
|
||||
#: models.py:163
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Valitse kartan lisenssi"
|
||||
|
||||
#: models.py:202
|
||||
#: models.py:164
|
||||
msgid "licence"
|
||||
msgstr "lisenssi"
|
||||
|
||||
#: models.py:213
|
||||
#: models.py:175
|
||||
msgid "owner"
|
||||
msgstr "omistaja"
|
||||
|
||||
#: models.py:217
|
||||
#: models.py:179
|
||||
msgid "editors"
|
||||
msgstr "julkaisija"
|
||||
|
||||
#: models.py:223
|
||||
msgid "team"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:229 models.py:491
|
||||
#: models.py:184 models.py:392
|
||||
msgid "edit status"
|
||||
msgstr "muokkaa tilaa"
|
||||
|
||||
#: models.py:234
|
||||
#: models.py:189
|
||||
msgid "share status"
|
||||
msgstr "jaa status"
|
||||
|
||||
#: models.py:237 models.py:486
|
||||
#: models.py:192 models.py:387
|
||||
msgid "settings"
|
||||
msgstr "asetukset"
|
||||
|
||||
#: models.py:402
|
||||
#: models.py:320
|
||||
msgid "Clone of"
|
||||
msgstr "Kloonattu kartasta"
|
||||
|
||||
#: models.py:462 models.py:468
|
||||
msgid "Inherit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:481
|
||||
#: models.py:382
|
||||
msgid "display on load"
|
||||
msgstr "näytä ladattaessa"
|
||||
|
||||
#: models.py:482
|
||||
#: models.py:383
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Näytä tämä kerros ladattaessa."
|
||||
|
||||
#: templates/404.html:8
|
||||
#: templates/404.html:6
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:8
|
||||
#: templates/auth/user_detail.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Selaa %(current_user)s:n karttoja"
|
||||
|
||||
#: templates/auth/user_detail.html:17
|
||||
#: templates/auth/user_detail.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:21 templates/umap/team_form.html:21
|
||||
#: templates/auth/user_form.html:6
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:7
|
||||
msgid "My Profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:20
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:27
|
||||
#: templates/auth/user_form.html:25
|
||||
msgid "Your current providers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:39
|
||||
#: templates/auth/user_form.html:31
|
||||
msgid "Connect to another provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_form.html:42
|
||||
#: templates/auth/user_form.html:33
|
||||
msgid ""
|
||||
"It's a good habit to connect your account to more than one provider, in case"
|
||||
" one provider becomes unavailable, temporarily or even permanently."
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:8
|
||||
#: templates/auth/user_stars.html:5
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_stars.html:17
|
||||
#: templates/auth/user_stars.html:12
|
||||
#, python-format
|
||||
msgid "%(current_user)s has no starred maps yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/base.html:13
|
||||
#: templates/base.html:12
|
||||
msgid ""
|
||||
"uMap lets you create maps with OpenStreetMap layers in a minute and embed "
|
||||
"them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:6 templates/registration/login.html:46
|
||||
msgid "Login"
|
||||
#: templates/registration/login.html:16
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:22
|
||||
msgid "To save and easily find your maps, identify yourself."
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:25
|
||||
msgid "Please log in with your account:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:42
|
||||
#: templates/registration/login.html:28
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:45
|
||||
#: templates/registration/login.html:31
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:52
|
||||
msgid "Please choose a provider:"
|
||||
#: templates/registration/login.html:32
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
#: templates/registration/login.html:37
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Valitse mieleisesi palveluntarjoaja"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap lets you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#: templates/umap/about_summary.html:21
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Valitse karttaasi sopivat taustakartat ja data-kerrokset"
|
||||
|
||||
#: templates/umap/about_summary.html:26
|
||||
#: templates/umap/about_summary.html:22
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Lisää tarvittavat POIt: karttamerkkejä, viivoja, monikulmioita..."
|
||||
|
||||
#: templates/umap/about_summary.html:29
|
||||
#: templates/umap/about_summary.html:23
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Valitse ja hallinnoi POI-merkintöjen värit ja karttakuvakkeet"
|
||||
|
||||
#: templates/umap/about_summary.html:32
|
||||
#: templates/umap/about_summary.html:24
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Hallitse kartta-optiot: näytä mini-kartta, paikanna käyttäjä sivun latauksessa, ..."
|
||||
|
||||
#: templates/umap/about_summary.html:35
|
||||
#: templates/umap/about_summary.html:25
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Geostrukturoidun datan (geojson, gpx, kml, osm...) tuonti eräajona "
|
||||
|
||||
#: templates/umap/about_summary.html:38
|
||||
#: templates/umap/about_summary.html:26
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Valitse tiedoillesi lisenssi"
|
||||
|
||||
#: templates/umap/about_summary.html:41
|
||||
#: templates/umap/about_summary.html:27
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Jaa karttasi muille ja/tai liitä se muihin sivustoihin"
|
||||
|
||||
#: templates/umap/about_summary.html:52
|
||||
#: templates/umap/about_summary.html:37
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "<a href=\"%(repo_url)s\">Avoin lähdekoodi</a> rulettaa!"
|
||||
|
||||
#: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "Create a map"
|
||||
msgstr "Luo uusi kartta"
|
||||
|
||||
#: templates/umap/about_summary.html:66
|
||||
#: templates/umap/about_summary.html:51
|
||||
msgid "Play with the demo"
|
||||
msgstr "Tongi demoa sielusi kyllyydestä!"
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:15
|
||||
#: templates/umap/components/alerts/alert.html:64
|
||||
#: templates/umap/components/alerts/alert.html:92
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
|
||||
"target=\"_blank\">log in</a>."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:35
|
||||
msgid "Here is your secret link to edit the map, please keep it safe:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:39
|
||||
msgid "Copy link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:46
|
||||
msgid "Enter your email address to receive the secret link:"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:52
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:55
|
||||
msgid "Send me the link"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:79
|
||||
msgid "See their edits in another tab"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:82
|
||||
msgid "Keep your changes and loose theirs"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/components/alerts/alert.html:85
|
||||
msgid "Keep their changes and loose yours"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:26
|
||||
#: templates/umap/content.html:22
|
||||
msgid ""
|
||||
"This instance of uMap is currently in read only mode, no creation/edit is "
|
||||
"allowed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content.html:34
|
||||
#: templates/umap/content.html:30
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
|
@ -340,339 +282,270 @@ msgid ""
|
|||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Tämä on uMapin demo-instanssi, jota käytetään testaamiseen ja väliversioille. Jos tarvitset vakaan version, niin käytäthän <a href=\"%(stable_url)s\">%(stable_url)s</a> :a. Voit myös tarjota oman instanssin - <a href=\"%(repo_url)s\">avoin lähdekoodi</a> rulettaa!"
|
||||
|
||||
#: templates/umap/content_footer.html:5
|
||||
msgid "An OpenStreetMap project"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:6
|
||||
msgid "version"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:7
|
||||
msgid "Hosted by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:8
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/content_footer.html:9 templates/umap/navigation.html:25
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:6
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:8
|
||||
msgid "My Maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:12
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/dashboard_menu.html:15
|
||||
msgid "My teams"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:14
|
||||
#: templates/umap/home.html:8
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Kartta uMapeista"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
#: templates/umap/home.html:14
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Inspiroidu selaamalla karttoja"
|
||||
|
||||
#: templates/umap/login_popup_end.html:4
|
||||
#: templates/umap/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Sisäänkirjautumisesi onnistui. Jatketahan..."
|
||||
|
||||
#: templates/umap/map_list.html:11 views.py:433
|
||||
#: templates/umap/map_list.html:9 views.py:341
|
||||
msgid "by"
|
||||
msgstr "taholta"
|
||||
|
||||
#: templates/umap/map_list.html:20
|
||||
#: templates/umap/map_list.html:17
|
||||
msgid "More"
|
||||
msgstr "Lisää"
|
||||
|
||||
#: templates/umap/map_table.html:8 templates/umap/user_teams.html:14
|
||||
#: templates/umap/map_table.html:6
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:11
|
||||
#: templates/umap/map_table.html:7
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:14
|
||||
#: templates/umap/map_table.html:8
|
||||
msgid "Who can see"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:17
|
||||
#: templates/umap/map_table.html:9
|
||||
msgid "Who can edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:20
|
||||
#: templates/umap/map_table.html:10
|
||||
msgid "Last save"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:23
|
||||
#: templates/umap/map_table.html:11
|
||||
msgid "Owner"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:26 templates/umap/user_teams.html:20
|
||||
#: templates/umap/map_table.html:12
|
||||
msgid "Actions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:41 templates/umap/map_table.html:43
|
||||
#: templates/umap/map_table.html:25 templates/umap/map_table.html:27
|
||||
msgid "Open preview"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:72 templates/umap/map_table.html:74
|
||||
#: templates/umap/map_table.html:46 templates/umap/map_table.html:48
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:78 templates/umap/map_table.html:80
|
||||
#: templates/umap/user_teams.html:38 templates/umap/user_teams.html:40
|
||||
#: templates/umap/map_table.html:51 templates/umap/map_table.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:84 templates/umap/map_table.html:86
|
||||
#: templates/umap/map_table.html:56 templates/umap/map_table.html:58
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:90 templates/umap/map_table.html:92
|
||||
#: templates/umap/map_table.html:63 templates/umap/map_table.html:65
|
||||
msgid "Clone"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:101 templates/umap/map_table.html:103
|
||||
#: templates/umap/map_table.html:73 templates/umap/map_table.html:75
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:117
|
||||
#: templates/umap/map_table.html:88
|
||||
msgid "first"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:118
|
||||
#: templates/umap/map_table.html:89
|
||||
msgid "previous"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:126
|
||||
#: templates/umap/map_table.html:98
|
||||
#, python-format
|
||||
msgid "Page %(maps_number)s of %(num_pages)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:131
|
||||
#: templates/umap/map_table.html:104
|
||||
msgid "next"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:132
|
||||
#: templates/umap/map_table.html:105
|
||||
msgid "last"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:140
|
||||
#: templates/umap/map_table.html:113
|
||||
#, python-format
|
||||
msgid "Lines per page: %(per_page)s"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/map_table.html:145
|
||||
#: templates/umap/map_table.html:118
|
||||
#, python-format
|
||||
msgid "%(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:11 templates/umap/user_dashboard.html:6
|
||||
#: templates/umap/navigation.html:10 templates/umap/user_dashboard.html:4
|
||||
msgid "My Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
#: templates/umap/navigation.html:13
|
||||
msgid "Starred maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Log in"
|
||||
msgstr "Kirjaudu palveluun"
|
||||
|
||||
#: templates/umap/navigation.html:18
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Sign in"
|
||||
msgstr "Kirjaudu palveluun"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
#: templates/umap/navigation.html:21
|
||||
msgid "About"
|
||||
msgstr "Tietoja"
|
||||
|
||||
#: templates/umap/navigation.html:30
|
||||
#: templates/umap/navigation.html:24
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:29
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:34
|
||||
#: templates/umap/navigation.html:33
|
||||
msgid "Log out"
|
||||
msgstr "Kirjaudu ulos palvelusta"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
#: templates/umap/password_change.html:4
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:10
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid ""
|
||||
"Please enter your old password, for security's sake, and then enter your new"
|
||||
" password twice so we can verify you typed it in correctly."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:17
|
||||
#: templates/umap/password_change.html:13
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:22
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:26
|
||||
#: templates/umap/password_change.html:22
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:27
|
||||
#: templates/umap/password_change.html:23
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
#: templates/umap/password_change_done.html:4
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:10
|
||||
#: templates/umap/password_change_done.html:5
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:15
|
||||
#: templates/umap/search.html:10
|
||||
#, python-format
|
||||
msgid "%(count)s map found:"
|
||||
msgid_plural "%(count)s maps found:"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: templates/umap/search.html:24
|
||||
#: templates/umap/search.html:18
|
||||
msgid "No map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:29
|
||||
#: templates/umap/search.html:21
|
||||
msgid "Latest created maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:4
|
||||
#: templates/umap/search_bar.html:3
|
||||
msgid "Search maps"
|
||||
msgstr "Etsi karttoja"
|
||||
|
||||
#: templates/umap/search_bar.html:15
|
||||
#: templates/umap/search_bar.html:14
|
||||
msgid "Search"
|
||||
msgstr "Etsi"
|
||||
|
||||
#: templates/umap/team_detail.html:10
|
||||
#, python-format
|
||||
msgid "Browse %(current_team)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_detail.html:22
|
||||
#, python-format
|
||||
msgid "%(current_team)s has no public maps."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:24
|
||||
msgid "Delete this team"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/team_form.html:47
|
||||
msgid "Add user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
|
||||
#: templates/umap/user_dashboard.html:7 templates/umap/user_dashboard.html:26
|
||||
msgid "Search my maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
|
||||
#: templates/umap/user_dashboard.html:11
|
||||
#, python-format
|
||||
msgid "My Maps (%(count)s)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:13
|
||||
msgid "My profile"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:21 templates/umap/user_dashboard.html:23
|
||||
msgid "Map’s title"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:30
|
||||
#: templates/umap/user_dashboard.html:32
|
||||
#, python-format
|
||||
msgid "Download %(count)s maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_dashboard.html:40
|
||||
#: templates/umap/user_dashboard.html:42
|
||||
msgid "You have no map yet."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:17
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/user_teams.html:48
|
||||
msgid "New team"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:234
|
||||
msgid "Cannot delete a team with more than one member"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:238
|
||||
#, python-format
|
||||
msgid "Team “%(name)s” has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:438
|
||||
#: views.py:346
|
||||
msgid "View the map"
|
||||
msgstr "Katso karttaa"
|
||||
|
||||
#: views.py:820
|
||||
#: views.py:704
|
||||
msgid "See full screen"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:963
|
||||
#: views.py:803
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Kartan toimittajat päivitetty onnistuneesti!"
|
||||
|
||||
#: views.py:999
|
||||
#: views.py:841
|
||||
#, python-format
|
||||
msgid "The uMap edit link for your map: %(map_name)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1002
|
||||
#: views.py:844
|
||||
#, python-format
|
||||
msgid "Here is your secret edit link: %(link)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1009
|
||||
#, python-format
|
||||
msgid "Can't send email to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1012
|
||||
#: views.py:850
|
||||
#, python-format
|
||||
msgid "Email sent to %(email)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1023
|
||||
#: views.py:861
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Vain kartan omistaja voi poistaa kartan."
|
||||
|
||||
#: views.py:1026
|
||||
msgid "Map successfully deleted."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:1052
|
||||
#: views.py:889
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been cloned! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Karttasi on kloonattu! Jos haluat muokata tätä karttaa joltain muulta tietokoneelta, käytä tätä linkkiä: %(anonymous_url)s"
|
||||
|
||||
#: views.py:1057
|
||||
#: views.py:894
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Onneksi olkoon! Karttasi on kloonattu!"
|
||||
|
||||
#: views.py:1308
|
||||
#: views.py:1130
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Kerros onnistuneesti poistettu. Pysyvästi."
|
||||
|
||||
#: views.py:1330
|
||||
#: views.py:1152
|
||||
msgid "Permissions updated with success!"
|
||||
msgstr ""
|
||||
|
|