Merge pull request #583 from umap-project/prepare-1.0
[WIP] Prepare 1.0
3
.gitignore
vendored
|
@ -5,6 +5,8 @@ docs/_build
|
|||
umap/remote_static
|
||||
.idea
|
||||
tmp/*
|
||||
node_modules/*
|
||||
umap/static/umap/vendors
|
||||
|
||||
### Python ###
|
||||
# Byte-compiled / optimized / DLL files
|
||||
|
@ -53,6 +55,7 @@ nosetests.xml
|
|||
coverage.xml
|
||||
*,cover
|
||||
.hypothesis/
|
||||
.pytest_cache/
|
||||
|
||||
# Translations
|
||||
*.mo
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
sudo: false
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
- "3.4"
|
||||
- "3.5"
|
||||
- "3.6"
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[umap.project]
|
||||
[umap.backend]
|
||||
file_filter = umap/locale/<lang>/LC_MESSAGES/django.po
|
||||
source_file = umap/locale/en/LC_MESSAGES/django.po
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
[umap.frontend]
|
||||
file_filter = umap/static/umap/locale/<lang>.json
|
||||
source_file = umap/static/umap/locale/en.json
|
||||
source_lang = en
|
||||
type = KEYVALUEJSON
|
||||
|
||||
|
||||
|
|
|
@ -3,3 +3,4 @@ include requirements.txt
|
|||
recursive-include umap/static *
|
||||
recursive-include umap/templates *
|
||||
recursive-include umap/locale *
|
||||
recursive-include ui *
|
||||
|
|
55
Makefile
|
@ -1,2 +1,55 @@
|
|||
test:
|
||||
py.test
|
||||
py.test -xv umap/tests/
|
||||
develop:
|
||||
python setup.py develop
|
||||
release: test makemessages
|
||||
python setup.py sdist bdist_wheel
|
||||
test_publish:
|
||||
twine upload -r testpypi dist/*
|
||||
publish:
|
||||
twine upload dist/*
|
||||
make clean
|
||||
clean:
|
||||
rm -f dist/*
|
||||
rm -rf build/*
|
||||
compilemessages:
|
||||
django-admin.py compilemessages
|
||||
node node_modules/leaflet-i18n/bin/i18n.js --dir_path=umap/static/umap/js/ --dir_path=umap/static/umap/vendors/measurable/ --locale_dir_path=umap/static/umap/locale/ --locale_codes=en --mode=json --clean --default_values
|
||||
makemessages:
|
||||
django-admin.py makemessages -a
|
||||
umap generate_js_locale
|
||||
ui:
|
||||
mkdir -p umap/static/umap/vendors/leaflet/ && cp -r node_modules/leaflet/dist/** umap/static/umap/vendors/leaflet/
|
||||
mkdir -p umap/static/umap/vendors/editable/ && cp -r node_modules/leaflet-editable/src/*.js umap/static/umap/vendors/editable/
|
||||
mkdir -p umap/static/umap/vendors/editable/ && cp -r node_modules/leaflet.path.drag/src/*.js umap/static/umap/vendors/editable/
|
||||
mkdir -p umap/static/umap/vendors/hash/ && cp -r node_modules/leaflet-hash/*.js umap/static/umap/vendors/hash/
|
||||
mkdir -p umap/static/umap/vendors/i18n/ && cp -r node_modules/leaflet-i18n/*.js umap/static/umap/vendors/i18n/
|
||||
mkdir -p umap/static/umap/vendors/editinosm/ && cp -r node_modules/leaflet-editinosm/Leaflet.EditInOSM.* umap/static/umap/vendors/editinosm/
|
||||
mkdir -p umap/static/umap/vendors/minimap/ && cp -r node_modules/leaflet-minimap/src/** umap/static/umap/vendors/minimap/
|
||||
mkdir -p umap/static/umap/vendors/loading/ && cp -r node_modules/leaflet-loading/src/** umap/static/umap/vendors/loading/
|
||||
mkdir -p umap/static/umap/vendors/markercluster/ && cp -r node_modules/leaflet.markercluster/dist/** umap/static/umap/vendors/markercluster/
|
||||
mkdir -p umap/static/umap/vendors/contextmenu/ && cp -r node_modules/leaflet-contextmenu/dist/** umap/static/umap/vendors/contextmenu/
|
||||
mkdir -p umap/static/umap/vendors/heat/ && cp -r node_modules/leaflet.heat/dist/** 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/** umap/static/umap/vendors/toolbar/
|
||||
mkdir -p umap/static/umap/vendors/formbuilder/ && cp -r node_modules/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/*.js umap/static/umap/vendors/photon/
|
||||
mkdir -p umap/static/umap/vendors/csv2geojson/ && cp -r node_modules/csv2geojson/*.js umap/static/umap/vendors/csv2geojson/
|
||||
mkdir -p umap/static/umap/vendors/togeojson/ && cp -r node_modules/togeojson/*.js umap/static/umap/vendors/togeojson/
|
||||
mkdir -p umap/static/umap/vendors/osmtogeojson/ && cp -r node_modules/osmtogeojson/osmtogeojson.js umap/static/umap/vendors/osmtogeojson/
|
||||
mkdir -p umap/static/umap/vendors/georsstogeojson/ && cp -r node_modules/georsstogeojson/GeoRSSToGeoJSON.js umap/static/umap/vendors/georsstogeojson/
|
||||
mkdir -p umap/static/umap/vendors/togpx/ && cp -r node_modules/togpx/togpx.js umap/static/umap/vendors/togpx/
|
||||
mkdir -p umap/static/umap/vendors/tokml && cp -r node_modules/tokml/tokml.js umap/static/umap/vendors/tokml
|
||||
installjs:
|
||||
npm install
|
||||
testjsfx:
|
||||
firefox umap/static/umap/test/index.html
|
||||
testjs: node_modules
|
||||
@./node_modules/mocha-phantomjs/bin/mocha-phantomjs --view 1024x768 umap/static/umap/test/index.html
|
||||
tx_push:
|
||||
tx push -s
|
||||
tx_pull:
|
||||
tx pull
|
||||
|
||||
.PHONY: ui
|
||||
|
|
255
docs/changelog.md
Normal file
|
@ -0,0 +1,255 @@
|
|||
# Changelog
|
||||
|
||||
## Upgrading to 1.0
|
||||
|
||||
- because of the merge of django-leaflet-storage inside umap, the migrations
|
||||
has been reset, so a bit of SQL needs to be ran by hand:
|
||||
|
||||
```sql
|
||||
BEGIN;
|
||||
DELETE FROM django_migrations WHERE app = 'leaflet_storage';
|
||||
DELETE FROM django_migrations WHERE app = 'umap';
|
||||
ALTER TABLE leaflet_storage_datalayer RENAME TO umap_datalayer;
|
||||
ALTER TABLE leaflet_storage_datalayer_id_seq RENAME TO umap_datalayer_id_seq;
|
||||
ALTER TABLE leaflet_storage_licence RENAME TO umap_licence;
|
||||
ALTER TABLE leaflet_storage_licence_id_seq RENAME TO umap_licence_id_seq;
|
||||
ALTER TABLE leaflet_storage_map RENAME TO umap_map;
|
||||
ALTER TABLE leaflet_storage_map_editors RENAME TO umap_map_editors;
|
||||
ALTER TABLE leaflet_storage_map_editors_id_seq RENAME TO umap_map_editors_id_seq;
|
||||
ALTER TABLE leaflet_storage_map_id_seq RENAME TO umap_map_id_seq;
|
||||
ALTER TABLE leaflet_storage_pictogram RENAME TO umap_pictogram;
|
||||
ALTER TABLE leaflet_storage_pictogram_id_seq RENAME TO umap_pictogram_id_seq;
|
||||
ALTER TABLE leaflet_storage_tilelayer RENAME TO umap_tilelayer;
|
||||
ALTER TABLE leaflet_storage_tilelayer_id_seq RENAME TO umap_tilelayer_id_seq;
|
||||
COMMIT;
|
||||
```
|
||||
|
||||
- Then fake initial migrations:
|
||||
|
||||
umap migrate --fake-initial
|
||||
|
||||
- Then run the new migrations:
|
||||
|
||||
umap migrate
|
||||
|
||||
- If you have customized some templates, change any `leaflet_storage/` path
|
||||
to `umap/`
|
||||
|
||||
- If you have customized some static, change any `storage/` path
|
||||
to `umap/`
|
||||
|
||||
- Each `LEAFLET_STORAGE_XXX` setting should be renamed in `UMAP_XXX` (but we
|
||||
still support them for now)
|
||||
|
||||
|
||||
|
||||
## 1.0.0.rc-1
|
||||
- BREAKING: support of python 2 is removed per upgrading to Django 2.0
|
||||
- WARNING: merge Leaflet-Storage and django-leaflet-storage inside umap to ease
|
||||
maintenance and contribution; See [Upgrading to 1.0](#upgrading-to-1.0)
|
||||
- permissions management forms are now built in JS directly
|
||||
- upgrade all dependencies
|
||||
- added a language switcher in the home page footer
|
||||
- added UMAP_CUSTOM_TEMPLATES and UMAP_CUSTOM_STATICS settings to make
|
||||
customization easier
|
||||
- added empty `umap/theme.css` to ease customization
|
||||
- add download link in the map and datalayers edit panel
|
||||
- fixed some touch related CSS issues
|
||||
- removed support for old URL (changed in version `0.3.0`)
|
||||
- added languages: hr (Croatian), pl (Polish), hu (Hungarian), sl (Slovenian),
|
||||
el (Greek), gl (Galician)
|
||||
- JS locales are now bundled, no need to generate them while installing
|
||||
- local settings are now loaded from `/etc/umap/umap.conf` if available
|
||||
- fixed an issue where it was not possible to change the tilelayer if the
|
||||
tilelayer control was not added to the map (#587)
|
||||
- `showLabel` is now a ternary value (instead of having this plus `labelHover`)
|
||||
(#553)
|
||||
- fixed resetting a select to undefined for inheritable fields (#551)
|
||||
- fixed labelKey not being saved (#595)
|
||||
- filtering in data browser now is also reflected in the displayed features
|
||||
(#550)
|
||||
|
||||
|
||||
|
||||
## 0.8.0
|
||||
- allow colon in properties to be consumed in popupTemplate
|
||||
- added am_ET, pl and sk_SK locales
|
||||
- fixed default licence being created in every available languages
|
||||
- switch to pytest for unit tests
|
||||
- Django 1.10 compatibility
|
||||
- add DataLayer.rank
|
||||
- Expose DataLayer versions
|
||||
- python3 support
|
||||
- add nofollow meta when map is not public
|
||||
|
||||
## 0.7.5
|
||||
- upgrade osmtogeojson to 2.1.0
|
||||
- localize and proxy dataUrl parameter
|
||||
|
||||
## 0.7.4
|
||||
- fix anonymous not able to edit map anymore
|
||||
|
||||
## 0.7.3
|
||||
- add tooltip when drawing
|
||||
- import multiple files at a time
|
||||
- added Chinese (Taiwan) locale
|
||||
- fixed right-click on path vertex not working propertly when editing
|
||||
|
||||
## 0.7.1
|
||||
- upgrade Leaflet.Editable to 0.2.0
|
||||
- fixed some bugs after Leaflet.Editable switch
|
||||
|
||||
## 0.7.0
|
||||
- introduce panel popup mode
|
||||
- upgraded leaflet.loading to 0.1.10
|
||||
- make the cluster text color dynamic
|
||||
- fix missing icons for transorm to polygon/polyline actions
|
||||
- add a slideshow mode
|
||||
- make possible to set cluster color by hand
|
||||
- make possible to manage showLabel from layer and map
|
||||
- basic kml/gpx download support
|
||||
- MultiLineString are merged at import
|
||||
- catch setMaxBounds errors (when using useless bounds)
|
||||
- first version of a table editor
|
||||
- it's now possible to cancel every mouse action of a polygon
|
||||
(useful when using them as background)
|
||||
- simple custom popup templates
|
||||
- more control over map data attribution (custom inputs added)
|
||||
- basic HTTP optimistic concurrency control
|
||||
- add "empty" button in limit bounds fieldset
|
||||
- make possible to decide which properties the data browser will filter on
|
||||
- add "datalayers" query string parameter to override shown datalayers on map load
|
||||
- add edit fieldset for changing marker latlng by hand
|
||||
- moved from Leaflet.Draw to Leaflet.Editable
|
||||
- added Vietnamese
|
||||
- by default, allow_edit is now false
|
||||
- added Chinese (Taiwan) locale
|
||||
|
||||
## 0.6.x
|
||||
- add TMS option to custom tilelayer
|
||||
- allow to define default properties at map level
|
||||
- support iframe in text formatting
|
||||
- fix bug where polygon export were adding a point
|
||||
- make that only visible elements are downloaded
|
||||
- iframe export helper
|
||||
- add Leaflet.label (for marker only atm)
|
||||
- GeoRSS support
|
||||
- heatmap support, thanks to https://github.com/Leaflet/Leaflet.heat
|
||||
- added optional caption bar
|
||||
- added new "large" popup template
|
||||
- added a button to empty a layer without deleting it
|
||||
- added a button to clone a datalayer
|
||||
- added dataUrl and dataFormat on map creation page
|
||||
- basic support for GeometryCollection import
|
||||
- removed submodules and switched to grunt for assets management
|
||||
- upgrade to django 1.6
|
||||
- sesql replaced by django-pgindex
|
||||
- support for gzip for datalayer geojson
|
||||
- support for X-Senfile/Accel-Redirect
|
||||
- more translations
|
||||
- fix anonymous map owner not able to delete their map
|
||||
- fix missing vendors assets
|
||||
- reset South migrations (some were bugged); to be back again with django 1.7
|
||||
- added russian locale
|
||||
- http optimistic concurrency control
|
||||
- longer anonymous cookie max_age (one month instead of session only)
|
||||
- add possibility to override default zoom with LEAFLET_ZOOM setting
|
||||
- fix bug where anonymous map wasn't editable by logged in users even if
|
||||
edit status was ANONYMOUS
|
||||
|
||||
## 0.5.x
|
||||
- datalayers are now sent to backend as geojson
|
||||
- there is now a global "save" button, and also a "cancel changes"
|
||||
- added a contextmenu, thanks to https://github.com/aratcliffe/Leaflet.contextmenu
|
||||
- added a loader, thanks to https://github.com/ebrelsford/Leaflet.loading
|
||||
- import are processed client side, thanks to https://github.com/mapbox/csv2geojson
|
||||
and https://github.com/mapbox/togeojson
|
||||
- download is handled client side
|
||||
- option "outlink" as been added, to open external URL on polygon click
|
||||
- edit shortcuts has been added (Ctrl-E to toggle edit status, Ctrl-S to save, etc.)
|
||||
- links in popup now open in a now window
|
||||
- possibility to add custom icon symbols
|
||||
- new option to clusterize markers, thanks to https://github.com/Leaflet/Leaflet.markercluster
|
||||
- remote data option added to datalayer: this will fetch data from a given URL
|
||||
instead of from the local database
|
||||
- popup window can now display a table with all features properties
|
||||
- support of OSM XML format, thanks to https://github.com/tyrasd/osmtogeojson
|
||||
- added a measure control, thanks to https://github.com/makinacorpus/Leaflet.MeasureControl
|
||||
- added Transifex config
|
||||
- simple help boxes
|
||||
- it's now possible to set background layer with manual settings
|
||||
- add an edit button in the data browser (when in edit mode)
|
||||
- add icon URL formatting with feature properties
|
||||
- add "Transform to Polygon/Polyline" action
|
||||
- new link on contextmenu to open external routing service from clicked point
|
||||
- fix bug where features were duplicated when datalayer was deleted then reverted
|
||||
- add layer action to databrowser
|
||||
- add optional default CSS
|
||||
- allow to close panel by ctrl-Enter when editing in textarea
|
||||
- add management for map max bounds
|
||||
- add Ctrl-Z for canceling changes
|
||||
- internal storage structure totally reviewed: datalayers are stored as geojson files,
|
||||
instead of being split in features stored in PostGIS
|
||||
- upload and download moved to client side (see Leaflet.Storage)
|
||||
- cloned map name is now prefixed by "Clone of "
|
||||
- added Transifex config
|
||||
- workaround for non asciiable map names
|
||||
- add a share_status fielf in Map model
|
||||
|
||||
## 0.4.x
|
||||
- add a data browser
|
||||
- add a popup footer with navigation between features
|
||||
- some work on IE compat
|
||||
- new tilelayer visual switcher
|
||||
- Spanish translation, thanks to @ikks
|
||||
- renamed internally category in datalayer
|
||||
- add a rank column to tilelayer to control their order in the tilelayer edit box
|
||||
- fix description that was not exported in the GeoJSON export
|
||||
- return proper 403 if bad signature on anonymous_edit_url access
|
||||
- refactored tilelayer management
|
||||
- smarter encoding management at import
|
||||
- smarter errors management at import
|
||||
- handle other delimiters than just comma for CSV import
|
||||
- Spanish translation, thanks to @ikks
|
||||
- map clone possibility
|
||||
|
||||
## 0.3.x
|
||||
- add a setting to display map caption on map load (cf #50)
|
||||
- add nl translation
|
||||
- update to Leaflet 0.6-dev and Leaflet.Draw 0.2
|
||||
- handle anonymous map creation
|
||||
- Fix color no more displayed in map info box (cf #70)
|
||||
- portuguese translation (thanks @FranciscoDS)
|
||||
- fix bug when the map title was too long (making the slug too long, and so over the
|
||||
database limit for this field)
|
||||
- add a setting to display map caption on map load (cf Leaflet.Storage#50)
|
||||
- update to django 1.5
|
||||
- first version of a CSV import
|
||||
- add a Textarea in import form
|
||||
- first version of data export (GeoJSON only for now)
|
||||
|
||||
|
||||
## 0.2.0
|
||||
- handle auth from popup
|
||||
- add a control for map settings management
|
||||
- move to Leaflet 0.5
|
||||
- move to Leaflet.draw 0.1.6
|
||||
- default tooltip has now a fixed position
|
||||
- make just drown polys editable
|
||||
- handle path styling option (https://github.com/yohanboniface/Leaflet.Storage/issues/26)
|
||||
- add an UI to manage icon style and picto (https://github.com/yohanboniface/django-leaflet-storage/issues/22)
|
||||
- icon style and picto are now manageable also on Markers (https://github.com/yohanboniface/django-leaflet-storage/issues/21)
|
||||
- add Leaflet.EditInOSM plugin in options
|
||||
- add a scale control (optional)
|
||||
- add an optional minimap (with Leaflet.MiniMap plugin)
|
||||
- handle map settings management from front-end
|
||||
- handle path styling options (https://github.com/yohanboniface/Leaflet.Storage/issues/26)
|
||||
- remove Category.rank (https://github.com/yohanboniface/django-leaflet-storage/issues/46)
|
||||
- Marker has now icon_class and pictogram fields (https://github.com/yohanboniface/django-leaflet-storage/issues/21)
|
||||
- handle scale control
|
||||
- basic short URL management
|
||||
- fixed a bug where imports were failing if the category had a custom marker image
|
||||
|
||||
## 0.1.0
|
||||
|
||||
- first packaged version
|
83
docs/custom.md
Normal file
|
@ -0,0 +1,83 @@
|
|||
# Customize your uMap installation
|
||||
|
||||
|
||||
When running your own uMap, you may want to changed its appearance, for example
|
||||
you want your own logo on the home page, or you want to apply some design, or
|
||||
you want to add some tracking (but anonymous!) script…
|
||||
|
||||
This is done by overriding templates, CSS and images and telling uMap about
|
||||
that.
|
||||
So basically you'll have your own templates and/or statics directories where
|
||||
you will put the templates or statics you want to control (and only those).
|
||||
|
||||
Inside thore directory, you need to respect the exact relative path of the
|
||||
templates or statics you are adding, relatively to the
|
||||
[templates](https://github.com/umap-project/umap/tree/master/umap/templates)
|
||||
and
|
||||
[static](https://github.com/umap-project/umap/tree/master/umap/static)
|
||||
roots in the uMap structure.
|
||||
For example, if you want to control the logo, you will add your own static with
|
||||
the relative path `umap/img/logo.svg`.
|
||||
|
||||
The same apply to any file inside `umap/templates` and `umap/statics`.
|
||||
|
||||
## Settings
|
||||
|
||||
- `UMAP_CUSTOM_TEMPLATES` (`path`): points to the directory where the custom
|
||||
templates are stored
|
||||
- `UMAP_CUSTOM_STATICS` (`path`): points to the directory where the custom
|
||||
templates are stored
|
||||
|
||||
|
||||
## Example
|
||||
|
||||
Let's say we want to customize the home page, with a custom header, a custom
|
||||
logo, and some CSS adjustments.
|
||||
|
||||
For this we need to control at least two files:
|
||||
|
||||
- `umap/navigation.html`
|
||||
- `umap/theme.css`
|
||||
|
||||
Let's create one templates directory:
|
||||
|
||||
mkdir -p /srv/umap/custom/templates/
|
||||
|
||||
And one static directory:
|
||||
|
||||
mkdir -p /srv/umap/custom/static/
|
||||
|
||||
Now let's create our custom navigation file:
|
||||
|
||||
vim /srv/umap/custom/templates/umap/navigation.html
|
||||
|
||||
We certainly want to copy-paste the
|
||||
[original one](https://github.com/umap-project/umap/blob/master/umap/templates/umap/navigation.html)
|
||||
to adapt it.
|
||||
|
||||
Now let's add our custom logo, with whatever path inside the static dir, given
|
||||
we'll customize also the CSS:
|
||||
|
||||
mv mylogo.png /srv/umap/custom/static/umap/mylogo.png
|
||||
|
||||
And then let's add some custom rules, for example the one to load our logo:
|
||||
|
||||
```css
|
||||
.umap-nav h1 a {
|
||||
background-image: url("./img/mylogo.png");
|
||||
}
|
||||
```
|
||||
|
||||
And we want the header to be red:
|
||||
|
||||
```css
|
||||
.umap-nav {
|
||||
background-color: red;
|
||||
}
|
||||
```
|
||||
|
||||
And so on!
|
||||
|
||||
See also
|
||||
[https://github.com/etalab/cartes.data.gouv.fr](https://github.com/etalab/cartes.data.gouv.fr)
|
||||
for an example of customization.
|
|
@ -82,10 +82,6 @@ you will need to run again this last line.*
|
|||
|
||||
umap collectstatic
|
||||
|
||||
## Create languages files
|
||||
|
||||
umap storagei18n
|
||||
|
||||
## Create a superuser
|
||||
|
||||
umap createsuperuser
|
||||
|
|
|
@ -5,4 +5,6 @@ pages:
|
|||
- Contributing: contributing.md
|
||||
- how-tos:
|
||||
- Ubuntu from scratch: ubuntu.md
|
||||
- Customize your uMap style: custom.md
|
||||
- Changelog: changelog.md
|
||||
theme: readthedocs
|
||||
|
|
2465
package-lock.json
generated
Normal file
63
package.json
Normal file
|
@ -0,0 +1,63 @@
|
|||
{
|
||||
"name": "umap",
|
||||
"version": "1.0.0-alpha.1",
|
||||
"description": "Manage map and features with Leaflet and expose them for backend storage through an API.",
|
||||
"directories": {
|
||||
"test": "test"
|
||||
},
|
||||
"devDependencies": {
|
||||
"chai": "^3.3.0",
|
||||
"grunt": "^0.4.4",
|
||||
"grunt-cli": "^1.2.0",
|
||||
"grunt-contrib-concat": "^0.5.1",
|
||||
"grunt-contrib-copy": "^0.5.0",
|
||||
"happen": "~0.1.3",
|
||||
"mocha": "^2.3.3",
|
||||
"mocha-phantomjs": "^4.0.1",
|
||||
"optimist": "~0.4.0",
|
||||
"phantomjs": "^1.9.18",
|
||||
"sinon": "^1.10.3",
|
||||
"uglify-js": "~2.2.3"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "firefox test/index.html",
|
||||
"build": "grunt"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/umap-project/Leaflet.Storage.git"
|
||||
},
|
||||
"keywords": [
|
||||
"leaflet"
|
||||
],
|
||||
"author": "Yohan Boniface",
|
||||
"license": "WTFPL",
|
||||
"bugs": {
|
||||
"url": "https://github.com/umap-project/Leaflet.Storage/issues"
|
||||
},
|
||||
"homepage": "http://wiki.openstreetmap.org/wiki/UMap",
|
||||
"dependencies": {
|
||||
"csv2geojson": "5.0.2",
|
||||
"georsstogeojson": "^0.1.0",
|
||||
"leaflet": "1.3.1",
|
||||
"leaflet-contextmenu": "^1.4.0",
|
||||
"leaflet-editable": "^1.1.0",
|
||||
"leaflet-editinosm": "0.2.3",
|
||||
"leaflet-formbuilder": "0.2.3",
|
||||
"leaflet-fullscreen": "1.0.2",
|
||||
"leaflet-hash": "0.2.1",
|
||||
"leaflet-i18n": "0.3.1",
|
||||
"leaflet-loading": "0.1.24",
|
||||
"leaflet-measurable": "0.0.5",
|
||||
"leaflet-minimap": "^3.6.1",
|
||||
"leaflet-toolbar": "umap-project/Leaflet.toolbar",
|
||||
"leaflet.heat": "0.2.0",
|
||||
"leaflet.markercluster": "^1.3.0",
|
||||
"leaflet.path.drag": "0.0.6",
|
||||
"leaflet.photon": "0.7.3",
|
||||
"osmtogeojson": "^3.0.0-beta.3",
|
||||
"togeojson": "0.16.0",
|
||||
"togpx": "^0.5.4",
|
||||
"tokml": "0.4.0"
|
||||
}
|
||||
}
|
|
@ -1,2 +1,2 @@
|
|||
[pytest]
|
||||
DJANGO_SETTINGS_MODULE=umap.settings
|
||||
DJANGO_SETTINGS_MODULE=umap.tests.settings
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
factory-boy==2.11.1
|
||||
pytest==3.0.7
|
||||
pytest-django==3.1.2
|
||||
mkdocs==0.16.3
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
Django==1.11
|
||||
Django==2.0.5
|
||||
django-agnocomplete==0.12.2
|
||||
django-compressor==2.1.1
|
||||
django-leaflet-storage==0.8.2
|
||||
Pillow==4.1.0
|
||||
psycopg2==2.7.1
|
||||
requests==2.13.0
|
||||
social-auth-app-django==1.1.0
|
||||
Pillow==5.1.0
|
||||
psycopg2==2.7.4
|
||||
requests==2.18.4
|
||||
social-auth-app-django==2.1.0
|
||||
social-auth-core==1.7.0
|
||||
|
|
10
setup.py
|
@ -23,20 +23,26 @@ setup(
|
|||
author=umap.__author__,
|
||||
author_email=umap.__contact__,
|
||||
description=umap.__doc__,
|
||||
keywords="django leaflet geodjango openstreetmap",
|
||||
keywords="django leaflet geodjango openstreetmap map",
|
||||
url=umap.__homepage__,
|
||||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
platforms=["any"],
|
||||
zip_safe=True,
|
||||
long_description=long_description,
|
||||
long_description_content_type='text/markdown',
|
||||
install_requires=install_requires,
|
||||
classifiers=[
|
||||
"Development Status :: 3 - Alpha",
|
||||
"Development Status :: 4 - Beta",
|
||||
"Intended Audience :: Developers",
|
||||
"Operating System :: OS Independent",
|
||||
"Topic :: Software Development :: Libraries :: Python Modules",
|
||||
"Programming Language :: Python",
|
||||
"Programming Language :: Python :: 3 :: Only",
|
||||
"Programming Language :: Python :: 3.4",
|
||||
"Programming Language :: Python :: 3.5",
|
||||
"Programming Language :: Python :: 3.6",
|
||||
"Programming Language :: Python :: 3.7",
|
||||
],
|
||||
entry_points={
|
||||
'console_scripts': ['umap=umap.bin:main'],
|
||||
|
|
13
umap/admin.py
Normal file
|
@ -0,0 +1,13 @@
|
|||
from django.contrib.gis import admin
|
||||
from .models import Map, DataLayer, Pictogram, TileLayer, Licence
|
||||
|
||||
|
||||
class TileLayerAdmin(admin.ModelAdmin):
|
||||
list_display = ('name', 'rank', )
|
||||
list_editable = ('rank', )
|
||||
|
||||
admin.site.register(Map, admin.OSMGeoAdmin)
|
||||
admin.site.register(DataLayer)
|
||||
admin.site.register(Pictogram)
|
||||
admin.site.register(TileLayer, TileLayerAdmin)
|
||||
admin.site.register(Licence)
|
19
umap/autocomplete.py
Normal file
|
@ -0,0 +1,19 @@
|
|||
from django.conf import settings
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.urls import reverse
|
||||
|
||||
|
||||
from agnocomplete.register import register
|
||||
from agnocomplete.core import AgnocompleteModel
|
||||
|
||||
|
||||
@register
|
||||
class AutocompleteUser(AgnocompleteModel):
|
||||
model = get_user_model()
|
||||
fields = ['^username']
|
||||
|
||||
def item(self, current_item):
|
||||
data = super().item(current_item)
|
||||
data['url'] = reverse(settings.USER_MAPS_URL,
|
||||
args=(current_item.get_username(), ))
|
||||
return data
|
|
@ -15,4 +15,3 @@ def version(request):
|
|||
return {
|
||||
'UMAP_VERSION': __version__
|
||||
}
|
||||
|
||||
|
|
57
umap/decorators.py
Normal file
|
@ -0,0 +1,57 @@
|
|||
from functools import wraps
|
||||
|
||||
from django.urls import reverse_lazy
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.http import HttpResponseForbidden
|
||||
from django.conf import settings
|
||||
|
||||
from .views import simple_json_response
|
||||
from .models import Map
|
||||
|
||||
|
||||
LOGIN_URL = getattr(settings, "LOGIN_URL", "login")
|
||||
LOGIN_URL = (reverse_lazy(LOGIN_URL) if not LOGIN_URL.startswith("/")
|
||||
else LOGIN_URL)
|
||||
|
||||
|
||||
def login_required_if_not_anonymous_allowed(view_func):
|
||||
@wraps(view_func)
|
||||
def wrapper(request, *args, **kwargs):
|
||||
if (not getattr(settings, "UMAP_ALLOW_ANONYMOUS", False)
|
||||
and not request.user.is_authenticated):
|
||||
return simple_json_response(login_required=str(LOGIN_URL))
|
||||
return view_func(request, *args, **kwargs)
|
||||
return wrapper
|
||||
|
||||
|
||||
def map_permissions_check(view_func):
|
||||
"""
|
||||
Used for URLs dealing with the map.
|
||||
"""
|
||||
@wraps(view_func)
|
||||
def wrapper(request, *args, **kwargs):
|
||||
map_inst = get_object_or_404(Map, pk=kwargs['map_id'])
|
||||
user = request.user
|
||||
kwargs['map_inst'] = map_inst # Avoid rerequesting the map in the view
|
||||
if map_inst.edit_status >= map_inst.EDITORS:
|
||||
can_edit = map_inst.can_edit(user=user, request=request)
|
||||
if not can_edit:
|
||||
if map_inst.owner and not user.is_authenticated:
|
||||
return simple_json_response(login_required=str(LOGIN_URL))
|
||||
else:
|
||||
return HttpResponseForbidden('Action not allowed for user.')
|
||||
return view_func(request, *args, **kwargs)
|
||||
return wrapper
|
||||
|
||||
|
||||
def jsonize_view(view_func):
|
||||
@wraps(view_func)
|
||||
def wrapper(request, *args, **kwargs):
|
||||
response = view_func(request, *args, **kwargs)
|
||||
response_kwargs = {}
|
||||
if hasattr(response, 'rendered_content'):
|
||||
response_kwargs['html'] = response.rendered_content
|
||||
if response.has_header('location'):
|
||||
response_kwargs['redirect'] = response['location']
|
||||
return simple_json_response(**response_kwargs)
|
||||
return wrapper
|
33
umap/fields.py
Normal file
|
@ -0,0 +1,33 @@
|
|||
import json
|
||||
|
||||
from django.utils import six
|
||||
from django.db import models
|
||||
from django.utils.encoding import smart_text
|
||||
|
||||
|
||||
class DictField(models.TextField):
|
||||
"""
|
||||
A very simple field to store JSON in db.
|
||||
"""
|
||||
|
||||
def get_prep_value(self, value):
|
||||
if not value:
|
||||
value = {}
|
||||
if not isinstance(value, six.string_types):
|
||||
value = json.dumps(value)
|
||||
return value
|
||||
|
||||
def from_db_value(self, value, expression, connection, context):
|
||||
return self.to_python(value)
|
||||
|
||||
def to_python(self, value):
|
||||
if not value:
|
||||
value = {}
|
||||
if isinstance(value, six.string_types):
|
||||
return json.loads(value)
|
||||
else:
|
||||
return value
|
||||
|
||||
def value_to_string(self, obj):
|
||||
"""Return value from object converted to string properly"""
|
||||
return smart_text(self.get_prep_value(self.value_from_object(obj)))
|
87
umap/forms.py
Normal file
|
@ -0,0 +1,87 @@
|
|||
from django import forms
|
||||
from django.contrib.gis.geos import Point
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.template.defaultfilters import slugify
|
||||
from django.conf import settings
|
||||
from django.forms.utils import ErrorList
|
||||
|
||||
from .models import Map, DataLayer
|
||||
|
||||
DEFAULT_LATITUDE = settings.LEAFLET_LATITUDE if hasattr(settings, "LEAFLET_LATITUDE") else 51
|
||||
DEFAULT_LONGITUDE = settings.LEAFLET_LONGITUDE if hasattr(settings, "LEAFLET_LONGITUDE") else 2
|
||||
DEFAULT_CENTER = Point(DEFAULT_LONGITUDE, DEFAULT_LATITUDE)
|
||||
|
||||
User = get_user_model()
|
||||
|
||||
|
||||
class FlatErrorList(ErrorList):
|
||||
def __unicode__(self):
|
||||
return self.flat()
|
||||
|
||||
def flat(self):
|
||||
if not self:
|
||||
return u''
|
||||
return u' — '.join([e for e in self])
|
||||
|
||||
|
||||
class UpdateMapPermissionsForm(forms.ModelForm):
|
||||
|
||||
class Meta:
|
||||
model = Map
|
||||
fields = ('edit_status', 'editors', 'share_status', 'owner')
|
||||
|
||||
|
||||
class AnonymousMapPermissionsForm(forms.ModelForm):
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(AnonymousMapPermissionsForm, self).__init__(*args, **kwargs)
|
||||
full_secret_link = "%s%s" % (settings.SITE_URL, self.instance.get_anonymous_edit_url())
|
||||
help_text = _('Secret edit link is %s') % full_secret_link
|
||||
self.fields['edit_status'].help_text = _(help_text)
|
||||
|
||||
STATUS = (
|
||||
(Map.ANONYMOUS, _('Everyone can edit')),
|
||||
(Map.OWNER, _('Only editable with secret edit link'))
|
||||
)
|
||||
|
||||
edit_status = forms.ChoiceField(choices=STATUS)
|
||||
|
||||
class Meta:
|
||||
model = Map
|
||||
fields = ('edit_status', )
|
||||
|
||||
|
||||
class DataLayerForm(forms.ModelForm):
|
||||
|
||||
class Meta:
|
||||
model = DataLayer
|
||||
fields = ('geojson', 'name', 'display_on_load', 'rank')
|
||||
|
||||
|
||||
class MapSettingsForm(forms.ModelForm):
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(MapSettingsForm, self).__init__(*args, **kwargs)
|
||||
self.fields["slug"].required = False
|
||||
|
||||
def clean_slug(self):
|
||||
slug = self.cleaned_data.get('slug', None)
|
||||
name = self.cleaned_data.get('name', None)
|
||||
if not slug and name:
|
||||
# If name is empty, don't do nothing, validation will raise
|
||||
# later on the process because name is required
|
||||
self.cleaned_data['slug'] = slugify(name) or "map"
|
||||
return self.cleaned_data['slug'][:50]
|
||||
else:
|
||||
return ""
|
||||
|
||||
def clean_center(self):
|
||||
if not self.cleaned_data['center']:
|
||||
point = DEFAULT_CENTER
|
||||
self.cleaned_data['center'] = point
|
||||
return self.cleaned_data['center']
|
||||
|
||||
class Meta:
|
||||
fields = ('settings', 'name', 'center', 'slug')
|
||||
model = Map
|
|
@ -9,14 +9,13 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2015-11-15 14:24+0000\n"
|
||||
"Last-Translator: Alazar Tekle <al3may3hu@gmail.com>\n"
|
||||
"Language-Team: Amharic (Ethiopia) (http://www.transifex.com/yohanboniface/"
|
||||
"umap/language/am_ET/)\n"
|
||||
"Language: am_ET\n"
|
||||
"PO-Revision-Date: 2017-09-22 17:21+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Amharic (Ethiopia) (http://www.transifex.com/yohanboniface/umap/language/am_ET/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: am_ET\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -33,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "የአራሚዎችን ኒክ በመፃፍ ጨምር"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "የአራሚዎችን ኒክ በመፃፍ ጨምር"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -71,9 +68,7 @@ msgstr "እባክዎ አቅራቢ ይምረጡ"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"ዩማፕ በ <a href=\"%(osm_url)s\" />ኦፕን ስትሪት ማፕ</a> ሌየሮች ካርታዎችን በደቂቃ ውስጥ ሰርተን "
|
||||
"በገፃችን ማካተት እንድንችል ያደርገናል"
|
||||
msgstr "ዩማፕ በ <a href=\"%(osm_url)s\" />ኦፕን ስትሪት ማፕ</a> ሌየሮች ካርታዎችን በደቂቃ ውስጥ ሰርተን በገፃችን ማካተት እንድንችል ያደርገናል"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -120,13 +115,10 @@ msgstr "በማሳያው ተለማመድ"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own 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> ነው!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"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/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -170,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -214,5 +206,182 @@ msgstr "ፈልግ"
|
|||
msgid "View the map"
|
||||
msgstr "ካርታውን አሳይ"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "የካርታዎች ሁኔታ"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "የሚስጥር የማረሚያ መስመሩ %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "ሁሉም ማረም ይችላል"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "በሚስጥር የመረሚያ መስመሩ ብቻ የሚታረም"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "ስም"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "ምንም ፈቃድ አልተሰጠም"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "ዝርዝሮች"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "ፈቃዱ በዝርዝር ከተቀመጠ ገፅ ጛር አገናኝ"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "የድረ-ገፅ አድራሻ ተምሳሌ በኦ.ኤስ.ኤም. የታይል ፎርማት"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "በማረሚያ ሳጥኑ ውስጥ የታይል ሌየሮቹ ቅደም ተከተል"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "አራሚዎች ብቻ ማረም ይችላሉ"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "ባለቤት ብቻ ማረም ይችላል"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "ሁሉም (የህዝብ)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "አድራሻው ያለው ሁሉ"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "አራሚዎች ብቻ"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "መገለጫ"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "መሀከል"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "ዙም"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "ጠቁም"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "በመጫን ላይ ያለውን ተጠቃሚ ጠቁም?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "የካርታውን ፈቃድ ከልስ"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "ፈቃድ"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "ጀርባ"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "ባለቤት"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "አራሚዎች"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "ያለበትን ሁኔታ አርም"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "ያለበትን ሁኔታ አጋራ"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "ሁኔታዎች"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "በግልፅ ያልተቀመጠው ካርታዎ ከ %s አካውንትዎ ጋር ተያይዟል"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "ድቃይ"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "በመጫን ላይ አሳይ"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "ሌየሩ በመጫን ላይ አሳይ"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "ገብተዋል። በመቀጠል ላይ ..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "የካርታ ፍቃዶች"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "እባክዎ ለመቀጠል ይግቡ"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "የተገልጋይ ስምዎ እና የይለፍ ቃልዎ አልተዛመደም። እባክዎ እንደገና ይሞክሩ።"
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "ካርታዎ ተፈጥሯል! ይህንን ካርታ ከሌላ ኮምፒውተር ላይ ሆነው ለማረም ከፈለጉ የሚከተለውን አድራሻ ይጠቀሙ %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "እንኳን ደስ አለዎ ካርታዎ ተፈጥሯል!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "ካርታው ታድሷል!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "የካርታ አራሚዎች በትክክል ታድሰዋል!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "ካርታውን የሚሰርዘው ባለቤቱ ብቻ ነው።"
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "እንኳን ደስ አለዎ ካርታዎ ተዳቅሏል!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "ሌየሩ በትክክል ተሰርዟ"
|
||||
|
|
|
@ -10,14 +10,13 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-07-20 14:03+0000\n"
|
||||
"PO-Revision-Date: 2017-09-23 19:25+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Bulgarian (http://www.transifex.com/projects/p/umap/language/"
|
||||
"bg/)\n"
|
||||
"Language: bg\n"
|
||||
"Language-Team: Bulgarian (http://www.transifex.com/yohanboniface/umap/language/bg/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: bg\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -70,10 +69,7 @@ msgstr "Моля изберете провайдер"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap ви позволява да създавате карти базирани върху слоевете на <a href="
|
||||
"\"%(osm_url)s\" /> OpenStreetMap </ A> само за минути и да ги вградите в "
|
||||
"сайта си."
|
||||
msgstr "uMap ви позволява да създавате карти базирани върху слоевете на <a href=\"%(osm_url)s\" /> OpenStreetMap </ A> само за минути и да ги вградите в сайта си."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -89,9 +85,7 @@ msgstr "Промени POIs цветове и икони"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Играй с опциите на картата: покажи миникарта, локализирай потребителя при "
|
||||
"зареждане ..."
|
||||
msgstr "Играй с опциите на картата: покажи миникарта, локализирай потребителя при зареждане ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -122,14 +116,10 @@ msgstr "Играй си с демото"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own 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>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"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/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -173,8 +163,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -217,5 +207,182 @@ msgstr "Търсене"
|
|||
msgid "View the map"
|
||||
msgstr "Виж картата"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Настройки на картата"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Тайно редактиране на линк е %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Всеки може да редактира"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Само може да се редактира с тайно редактиран линк"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "име"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Няма избран лиценз"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "детайли"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Линк към страницата с подробно описание за лиценза."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL шаблон, използван формат OSM плочи"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Поръчка на tilelayers в полето за редактиране"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Само редактори могат да редактират"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Само притежателят може да редактира"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "всеки (публично)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "всеки които има линк"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "само редакторите"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "описание"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "център"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "мащаб"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "локализирай"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Локализирай потребител при зареждане?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Избери лиценз за картата."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "лиценз"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "фон"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "притежател"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "редактори"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "статус на редактиране"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "сподели статус"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "настройки"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Вашата анонимна карта е прикрепена към вашия акаунт %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Клониране на"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "покажи при зареждане"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Покажи този слой при зареждане"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "В процес на включване. Продължение..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Разрешения за картата"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Моля, включете се за да осъществите тази процедура"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Вашето потребителско име и парола не съвпадат. Моля, опитайте отново."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Вашата карта е създадена! Ако искате да редактирате тази карта от друг компютър, моля използвайте този линк : %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Поздравления, вашата карта е създадена!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Карта е актуализирана!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Редакторите на картата актуализират с успех!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Само собственикът може да изтрие картата."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Поздравления, вашата карта е клонирана!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Слоят е изтрит успешно."
|
||||
|
|
|
@ -3,20 +3,19 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# jmontane <joan@montane.cat>, 2014
|
||||
# jmontane, 2014
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-04-23 18:50+0000\n"
|
||||
"Last-Translator: jmontane <joan@montane.cat>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.com/projects/p/umap/language/"
|
||||
"ca/)\n"
|
||||
"Language: ca\n"
|
||||
"PO-Revision-Date: 2017-09-23 19:45+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.com/yohanboniface/umap/language/ca/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -33,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Escriviu els sobrenoms dels editors a afegir..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Escriviu els sobrenoms dels editors a afegir..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -71,9 +68,7 @@ msgstr "Trieu un proveïdor"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"El uMap us permet crear mapes amb capes de l'<a href=\"%(osm_url)s\" /"
|
||||
">OpenStreetMap</a> en un minut i incrustar-los al vostre lloc web."
|
||||
msgstr "El uMap us permet crear mapes amb capes de l'<a href=\"%(osm_url)s\" />OpenStreetMap</a> en un minut i incrustar-los al vostre lloc web."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -89,9 +84,7 @@ msgstr "Gestioneu els colors i les icones dels PDI"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Gestioneu les opcions del mapa: mostreu un minimapa, ubiqueu l'usuari en "
|
||||
"carregar..."
|
||||
msgstr "Gestioneu les opcions del mapa: mostreu un minimapa, ubiqueu l'usuari en carregar..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -122,14 +115,10 @@ msgstr "Jugueu amb la demostració"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Aquesta és una versió de demostració, usada per a fer proves i desplegar "
|
||||
"versions. Si us cal un versió estable, useu <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. També podeu hostatjar la vostra pròpia còpia, és <a href="
|
||||
"\"%(repo_url)s\">codi lliure</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Aquesta és una versió de demostració, usada per a fer proves i desplegar versions. Si us cal un versió estable, useu <a href=\"%(stable_url)s\">%(stable_url)s</a>. També podeu hostatjar la vostra pròpia còpia, és <a href=\"%(repo_url)s\">codi lliure</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -173,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -217,5 +206,182 @@ msgstr "Cerca"
|
|||
msgid "View the map"
|
||||
msgstr "Mostra el mapa"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Paràmetres del mapa"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "L'enllaç d'edició secret és %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Tothom pot editar"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Només es pot editar amb l'enllaç d'edició secret"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nom"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "No s'ha indicat llicència"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detalls"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Enllaç a una pàgina on es detalla la llicència."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "La plantilla de l'URL usa el format de tesel·les de l'OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Ordre de les capes de tessel·les al quadre d'edició"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Només els editors poden editar"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Només el propietari pot editar"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "tothom (públic)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "qualsevol amb l'enllaç"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "només els editors"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "descripció"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centre"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "escala"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "ubica"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Voleu ubicar l'usuari en carregar?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Trieu la llicència del mapa."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "llicència"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fons"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "propietari"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "editors"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "edita l'estat"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "comparteix l'estat"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "paràmetres"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "El vostre mapa anònim s'ha enllaçat al compte %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Clon de"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "mostra en carregar"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Mostra aquesta capa en carregar."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Heu iniciat sessió. S'està continuant..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permisos del mapa"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Inicieu sessió per a procedir"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "L'usuari i contrasenya no coincideixen. Torneu-ho a intentar."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "S'ha creat el vostre mapa! Si voleu editar aquest mapa en un altre ordinador, useu aquest enllaç: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Enhorabona, s'ha creat el vostre mapa!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "S'ha actualitzat el mapa!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "S'han actualitzat els editors del mapa correctament!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Només el propietari pot suprimir el mapa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Enhorabona, s'ha clonat el vostre mapa!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "S'ha suprimit la capa correctament."
|
||||
|
|
|
@ -9,15 +9,14 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2015-10-16 10:19+0000\n"
|
||||
"Last-Translator: Jakub A. Tesinsky\n"
|
||||
"Language-Team: Czech (Czech Republic) (http://www.transifex.com/"
|
||||
"yohanboniface/umap/language/cs_CZ/)\n"
|
||||
"Language: cs_CZ\n"
|
||||
"PO-Revision-Date: 2017-09-19 23:03+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Czech (Czech Republic) (http://www.transifex.com/yohanboniface/umap/language/cs_CZ/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"Language: cs_CZ\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
|
@ -33,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Vložte přezdívku přispěvovatele k přidání"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Vložte přezdívku přispěvovatele k přidání"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -71,9 +68,7 @@ msgstr "Vyberte poskytovatele mapy"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"Vytvářejte a sdílejte vlastní <a href=\"%(osm_url)s\" />OpenStreet</a> mapy "
|
||||
"a během pár minut je použijte na svém webu."
|
||||
msgstr "Vytvářejte a sdílejte vlastní <a href=\"%(osm_url)s\" />OpenStreet</a> mapy a během pár minut je použijte na svém webu."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -93,8 +88,7 @@ msgstr "Nastavte další možnosti - minimapu, lokalizaci uživatele, ..."
|
|||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
"Import existujících geodat v mnoha formátech (geojson, gpx, kml, osm...)"
|
||||
msgstr "Import existujících geodat v mnoha formátech (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
|
@ -121,14 +115,10 @@ msgstr "Vyzkoušejte si to hned"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Toto je ukázková verze, používaná na testování nových vydání uMap. Pokud "
|
||||
"potřebujete stabilní verzi, použijte <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. Můžete si taky stáhnout celý projekt a nainstalovat na "
|
||||
"svém serveru, je to <a href=\"%(repo_url)s\">open source</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Toto je ukázková verze, používaná na testování nových vydání uMap. Pokud potřebujete stabilní verzi, použijte <a href=\"%(stable_url)s\">%(stable_url)s</a>. Můžete si taky stáhnout celý projekt a nainstalovat na svém serveru, je to <a href=\"%(repo_url)s\">open source</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -172,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -216,5 +206,182 @@ msgstr "Hledej"
|
|||
msgid "View the map"
|
||||
msgstr "Prohlídnout si tuto mapu"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Nastavení mapy"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Tajný odkaz umožňující úpravu mapy je %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Kdokoli může editovat"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Lze upravovat jen pomocí tajného odkazu"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "název"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Licence nenastavena."
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "podrobnosti"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Odkaz na stránku s podrobnějším popisem licence."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Vzor URL ve formátu pro dlaždice OSM "
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Pořadí vrstev při editaci"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Jen přispěvovatelé mohou editovat"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Jen vlastník může editovat"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "kdokoli (veřejná)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "kdokoli kdo má odkaz"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "jen připěvovatelé"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "popis"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "střed"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "přiblížení"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "lokalizuj"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Najdi poluhu uživatele na startu?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vyberte si licenci mapy."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licence"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "pozadí"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "vlastník"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "přispěvovatelé"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "kdo může provádět úpravy"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "nastavení sdílení"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "nastavení"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Vaše anonymní mapa byla připojena k vašemů účtu %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Kopie"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "zbraz na startu"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Zobrazit tuto vrstvu na startu."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Jste přihlášeni. Jedeme dál ..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Přístupová oprávnění"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Pro pokračování se musíte přihlásit"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Jméno či heslo nesouhlasí. Zkuste to prosím znovu."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Vaše mapa byla vytvořena! Pokud chcete upravovat tuto mapu z jiného počítače, použijte tento odkaz: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Gratulujeme, vaše mapa byla vytvořena!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Mapa byla aktualizována!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Seznam přispěvovatelů byl úspěšně upraven!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Jen vlastník může vymzat tuto mapu."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Gratulujeme, byla vytvořena kopie mapy!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Vrstva úspěšně vymazána."
|
||||
|
|
|
@ -9,14 +9,13 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-06-02 15:12+0000\n"
|
||||
"Last-Translator: Neogeografen <soren.johannessen@gmail.com>\n"
|
||||
"Language-Team: Danish (http://www.transifex.com/projects/p/umap/language/"
|
||||
"da/)\n"
|
||||
"Language: da\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:28+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Danish (http://www.transifex.com/yohanboniface/umap/language/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: da\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -33,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Indtast redaktørernes nickname for tilføjelse..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Indtast redaktørernes nickname for tilføjelse..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -71,9 +68,7 @@ msgstr "Vælg en udbyder"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"Med uMap kan du lave kort med <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"lag og på et minuts arbejde kan du indlejre disse på dit eget websted."
|
||||
msgstr "Med uMap kan du lave kort med <a href=\"%(osm_url)s\" />OpenStreetMap</a> lag og på et minuts arbejde kan du indlejre disse på dit eget websted."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -89,9 +84,7 @@ msgstr "Håndterer POIs farver og ikoner"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Håndterer kortindstillinger: vis et miniaturekort, lokaliser brugeren ved "
|
||||
"indlæsning..."
|
||||
msgstr "Håndterer kortindstillinger: vis et miniaturekort, lokaliser brugeren ved indlæsning..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -122,14 +115,10 @@ msgstr "Leg med demoen"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Dette er en demo som bruges til test og forhåndstesting. Hvis du har brug "
|
||||
"for en stabil testdemo, så brug <a href=\"%(stable_url)s\">%(stable_url)s</"
|
||||
"a>. Du kan webhoste din egen testdemo. det er <a href=\"%(repo_url)s\">open "
|
||||
"source</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Dette er en demo som bruges til test og forhåndstesting. Hvis du har brug for en stabil testdemo, så brug <a href=\"%(stable_url)s\">%(stable_url)s</a>. Du kan webhoste din egen testdemo. det er <a href=\"%(repo_url)s\">open source</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -173,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -217,5 +206,182 @@ msgstr "Søg"
|
|||
msgid "View the map"
|
||||
msgstr "Vis kortet"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Kortindstillinger"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Hemmeligt redigeringslink er %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Alle kan redigere"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Er kun redigerbart med et hemmeligt link"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "navn"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Ingen licens angivet"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detaljer"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link til siden hvor der er flere detaljer om licensen."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL skabelon bruger OSMs tile format"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Rækkefølge af tile-lag i redigeringsboksen"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Kun redaktører kan redigere"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Kun ejeren kan redigere"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "alle (fuldt offentlig)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "alle med et link"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "kun redaktører "
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "beskrivelse"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "center"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "zoom"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "lokalisere"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Lokaliserer brugeren ved indlæsning?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vælg kortlicensen."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licens"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "baggrund"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "ejer"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "redaktører"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "ret status"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "Delestatus"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "indstillinger"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Dit anonyme kort er blevet tilføjet til din konto %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Klonet kopi af"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "vis ved indlæsning"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Vis dette lag ved indlæsning"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Du er logget ind. Fortsætter..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Kortindstillinger"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Login ind for at fortsætte"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Dit brugernavn og adgangskode passer ikke. Prøv igen."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Dit kort er blevet lavet! Hvis du ønsker at rette dette kort fra en anden computer, så brug dette link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Tillykke dit kort er nu blevet lavet!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Kortet er blevet opdateret!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Kortredaktører blev opdateret med succes!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Kun ejer kan slettet kortet."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 blevet klonet! Hvis du ønsker at rette dette kort fra en anden computer, så brug dette link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Tillykke dit kort er blevet klonet!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Lag blev slettet med succes."
|
||||
|
|
|
@ -3,25 +3,26 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Klumbumbus <simson.gertrud@gmail.com>, 2013-2014
|
||||
# Ettore Atalan <atalanttore@googlemail.com>, 2016
|
||||
# Jannis Leidel <jannis@leidel.info>, 2016
|
||||
# Klumbumbus, 2013-2014,2016
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-03-01 23:34+0000\n"
|
||||
"Last-Translator: Klumbumbus <simson.gertrud@gmail.com>\n"
|
||||
"Language-Team: German (http://www.transifex.com/projects/p/umap/language/"
|
||||
"de/)\n"
|
||||
"Language: de\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:04+0000\n"
|
||||
"Last-Translator: Klumbumbus\n"
|
||||
"Language-Team: German (http://www.transifex.com/yohanboniface/umap/language/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
msgstr "Zur Startseite zurückkehren"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
|
@ -33,10 +34,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Zum Hinzufügen von Bearbeitern, Benutzernamen hier eingeben..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Zum Hinzufügen von Bearbeitern, Benutzernamen hier eingeben..."
|
||||
msgstr "Benutzernamen des neuen Besitzers eingeben..."
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -48,19 +47,19 @@ msgstr "Mehr"
|
|||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
msgstr "Bitte melden Sie sich mit Ihrem Konto an"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
msgstr "Benutzername"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Passwort"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
msgstr "Anmeldung"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
|
@ -71,10 +70,7 @@ msgstr "Bitte wähle einen Anbieter"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"Mit uMap kannst du in einer Minute Karten mit <a href=\"%(osm_url)s\" /"
|
||||
">OpenStreetMap</a>-Hintergrund erstellen und sie in deine eigene "
|
||||
"Internetseite einbinden."
|
||||
msgstr "Mit uMap kannst du in einer Minute Karten mit <a href=\"%(osm_url)s\" />OpenStreetMap</a>-Hintergrund erstellen und sie in deine eigene Internetseite einbinden."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -90,15 +86,11 @@ msgstr "Verwalte Farben und Icons der POIs"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Verwalte Karteneinstellungen: eine Übersichtskarte anzeigen, den Nutzer beim "
|
||||
"Seitenaufruf lokalisieren,..."
|
||||
msgstr "Verwalte Karteneinstellungen: eine Übersichtskarte anzeigen, den Nutzer beim Seitenaufruf lokalisieren,..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
"Stapelverarbeitung beim Importieren von geotechnischen Daten (geojson, gpx, "
|
||||
"kml, osm...)"
|
||||
msgstr "Stapelverarbeitung beim Importieren von geotechnischen Daten (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
|
@ -111,7 +103,7 @@ msgstr "Teile und binde deine Karte ein"
|
|||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Und es ist <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Und es ist <a href=\"%(repo_url)s\">Open Source</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
|
@ -125,18 +117,14 @@ msgstr "Spiele mit der Demo"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Dies ist eine Demo-Instanz und wird benutzt für Tests und "
|
||||
"Vorveröffentlichungen. Wenn du eine stabile Instanz benötigst, benutze bitte "
|
||||
"<a href=\"%(stable_url)s\">%(stable_url)s</a>. Du kannst auch deine eigene "
|
||||
"Instanz hosten, es ist <a href=\"%(repo_url)s\">open source</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Dies ist eine Demo-Instanz und wird für Tests und Vorveröffentlichungen benutzt. Wenn du eine stabile Instanz benötigst, benutze bitte <a href=\"%(stable_url)s\">%(stable_url)s</a>. Du kannst auch deine eigene Instanz hosten, uMap ist <a href=\"%(repo_url)s\">Open Source</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Karte aller \"uMap\"-Karten"
|
||||
msgstr "Karte aller „uMap“-Karten"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
|
@ -164,7 +152,7 @@ msgstr "Feedback"
|
|||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
msgstr "Passwort ändern"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
|
@ -172,37 +160,37 @@ msgstr "Ausloggen"
|
|||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
msgstr "Passwortänderung"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 ""
|
||||
"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:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
msgstr "Altes Passwort"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
msgstr "Neues Passwort"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
msgstr "Neues Passwort bestätigen"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
msgstr "Mein Passwort ändern"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
msgstr "Passwortänderung erfolgreich"
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
msgstr "Ihr Passwort wurde geändert."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
|
@ -220,5 +208,182 @@ msgstr "Suchen"
|
|||
msgid "View the map"
|
||||
msgstr "Diese Karte anzeigen"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Karteneinstellungen"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Geheimer Bearbeitungslink ist %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Jeder kann bearbeiten"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Nur mit geheimen Bearbeitungslink zu bearbeiten"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "Name"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Keine Lizenz ausgewählt"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "Details"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Verlinke auf eine Seite mit der Lizenz."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Das URL-Template nutzt das OSM Tile Format"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Reihenfolge der Karten-Ebenen in der Bearbeiten-Box"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Nur Bearbeiter können bearbeiten"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Nur der Ersteller kann bearbeiten"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "Jeder (Öffentlich)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "Jeder mit Link"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "Nur Bearbeiter "
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "Beschreibung"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "Mittelpunkt"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "Zoom"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "lokalisiere"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Standort des Benutzers beim Seitenaufruf bestimmen?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Kartenlizenz auswählen"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "Lizenz"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "Hintergrund"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "Ersteller"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "Bearbeiter"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "Bearbeitungsstatus"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "Teilen-Status"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Deine anonyme Karte wurde deinem Account %s zugeordnet."
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Duplicat von"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "Beim Seitenaufruf einblenden"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Diese Ebene beim Seitenaufruf einblenden."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Du bist eingeloggt. Weiterleitung..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Kartenberechtigungen"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Bitte logge dich ein, um fortzufahren."
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Dein Benutzername und Password stimmen nicht überein. Bitte versuche es noch einmal."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Deine Karte wurde erstellt! Wenn du diese Karte von einem anderen Computer aus bearbeiten möchtest, benutze bitte diesen Link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Glückwunsch, deine Karte wurde erstellt!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Karte wurde aktualisiert!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Bearbeiter erfolgreich geändert"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Nur der Ersteller kann die Karte löschen."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Glückwunsch, deine Karte wurde kopiert!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Ebene erfolgreich gelöscht."
|
||||
|
|
389
umap/locale/el/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,389 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Emmanuel Verigos <emverigos@teemail.gr>, 2018
|
||||
# Emmanuel Verigos <emverigos@teemail.gr>, 2017
|
||||
# prendi <prendi@openmailbox.org>, 2017
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2018-06-02 14:14+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Greek (http://www.transifex.com/yohanboniface/umap/language/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Επιστροφή στην Αρχική "
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr "Πρόσθεσε παρατσούκλι..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
msgstr "περισσότερα "
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr "Όνομα Χρήστη "
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr "Κωδικός πρόσβασης"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr "Σύνδεση "
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:6
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap let 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:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Διάλεξε το χαρτογραφικό επίπεδο "
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Διάλεξε άδεια χρήσης των δεδομένων "
|
||||
|
||||
#: templates/umap/about_summary.html:17
|
||||
msgid "Embed and share your map"
|
||||
msgstr " Ενσωμάτωσε και μοιράσου τον χάρτη "
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:34
|
||||
msgid "Play with the demo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:10
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
msgstr "Οι χάρτες μου"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Log in"
|
||||
msgstr "Σύνδεση"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Sign in"
|
||||
msgstr "Εγγραφή"
|
||||
|
||||
#: templates/umap/navigation.html:16
|
||||
msgid "About"
|
||||
msgstr "Σχετικά"
|
||||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr "Αλλαγή κωδικού"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
msgstr "Αποσύνδεση"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search_bar.html:6
|
||||
msgid "Search maps"
|
||||
msgstr "Ψάξε χάρτες "
|
||||
|
||||
#: templates/umap/search_bar.html:9
|
||||
msgid "Search"
|
||||
msgstr "Ψάξε "
|
||||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "όνομα"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Χωρίς Άδεια Χρήσης"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "Λεπτομέρειες "
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Σύνδεσμος σελίδας Αναλυτικής Άδειας Χρήσης "
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "περιγραφή"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "άδεια"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "ρυθμίσεις"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr ""
|
|
@ -204,3 +204,183 @@ msgstr ""
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr ""
|
||||
|
|
|
@ -12,7 +12,7 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-09-28 03:51+0000\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:04+0000\n"
|
||||
"Last-Translator: Marco Antonio <marcoantoniofrias@gmail.com>\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/yohanboniface/umap/language/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -208,3 +208,183 @@ msgstr "Buscar"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Ver el mapa"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "El enlace secreto de edición es %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Todos pueden editar"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Sólo puede editarse con el enlace secreto de edición"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nombre"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Sin conjunto de licencias"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detalles"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Enlace a una página donde se detalla la licencia."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Plantilla URL usando el formato de teselas OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Orden de las capas de teselas en la caja de edición"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Solo los editores pueden editar"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Solo el propietario puede editar"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "todo el mundo (público)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "cualquiera que tenga el enlace"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "sólo editores"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "descripción"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centrar"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "acercar/alejar"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "localizar"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "¿Al cargar localizar el usuario?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Elija la licencia del mapa."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licencia"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fondo"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "propietario"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "editores"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "estado de la edición"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "compartir estado"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "ajustes"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Tu mapa anónimo se ha adjuntado a tu cuenta %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Clon de"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "mostrar al cargar"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Mostrar esta capa al cargar."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Has iniciado sesión. Continuando..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permisos del mapa"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Inicia sesión para poder continuar"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Tu nombre de usuario y contraseña no coinciden. Inténtalo de nuevo."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "¡Tu mapa ha sido creado! Si deseas editarlo desde otro ordenador, por favor usa este enlace: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "¡Enhorabuena! ¡Tu mapa ha sido creado!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "¡El mapa ha sido actualizado!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "¡Los editores del mapas han sido actualizados con éxito!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Sólo el propietario puede borrar el mapa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "¡Tu mapa ha sido clonado! Si quieres editar este mapa desde otro ordenador, usa este enlace: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "¡Enhorabuena! ¡Tu mapa ha sido clonado!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Se eliminó la capa con éxito."
|
||||
|
|
|
@ -3,22 +3,21 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# acastren, 2014
|
||||
# jaakkoh <jaakko@helleranta.com>, 2013
|
||||
# jaakkoh <jaakko@helleranta.com>, 2013
|
||||
# Antti Castrén, 2014
|
||||
# Jaakko Helleranta <jaakko@helleranta.com>, 2013
|
||||
# Jaakko Helleranta <jaakko@helleranta.com>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-03-04 21:50+0000\n"
|
||||
"Last-Translator: acastren\n"
|
||||
"Language-Team: Finnish (http://www.transifex.com/projects/p/umap/language/"
|
||||
"fi/)\n"
|
||||
"Language: fi\n"
|
||||
"PO-Revision-Date: 2017-09-23 19:23+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Finnish (http://www.transifex.com/yohanboniface/umap/language/fi/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: fi\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -35,10 +34,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Kirjoita muokkaajan nimi lisätäksesi..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Kirjoita muokkaajan nimi lisätäksesi..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -73,10 +70,7 @@ msgstr "Valitse mieleisesi palveluntarjoaja"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap mahdollistaa <a href=\"%(osm_url)s\" />OpenStreetMap</a>-pohjaisten "
|
||||
"räätälöityjen karttojen luomisen ja liittämisen verkkosivuusi muutamassa "
|
||||
"minuutissa."
|
||||
msgstr "uMap mahdollistaa <a href=\"%(osm_url)s\" />OpenStreetMap</a>-pohjaisten räätälöityjen karttojen luomisen ja liittämisen verkkosivuusi muutamassa minuutissa."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -92,9 +86,7 @@ msgstr "Valitse ja hallinnoi POI-merkintöjen värit ja karttakuvakkeet"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
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, ..."
|
||||
msgstr "Hallitse kartta-optiot: näytä mini-kartta, paikanna käyttäjä sivun latauksessa, ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -125,14 +117,10 @@ msgstr "Tongi demoa sielusi kyllyydestä!"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own 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!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"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/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -176,8 +164,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -220,5 +208,182 @@ msgstr "Etsi"
|
|||
msgid "View the map"
|
||||
msgstr "Katso karttaa"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Kartan asetukset"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Salainen muokkauslinkki on %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Kuka tahansa saa muokata"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Muokattavissa vain salaisella muokkauslinkillä"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nimi"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Määrittämätön lisenssi"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "tarkemmat tiedot"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Linkki sivulle, jossa lisenssi on määritetty yksityiskohtaisesti."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "OSM-karttatiiliformaattia mukaileva URL-sapluuna"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Taustakarttojen järjestys muokkauslaatikossa"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Vain julkaisijat saavat muokata"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Vain omistaja saa muokata"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "kaikille (julkinen)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "linkinhaltijoille"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "vain muokkaajille"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "kuvaus"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "keskitä"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "zoomaa"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "paikanna"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Paikanna käyttäjä sivua ladattaessa?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Valitse kartan lisenssi"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "lisenssi"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "tausta"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "omistaja"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "julkaisija"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "muokkaa tilaa"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "jaa status"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "asetukset"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Anonyymi karttasi on liitetty tiliisi %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Kloonattu kartasta"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "näytä ladattaessa"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Näytä tämä kerros ladattaessa."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Sisäänkirjautumisesi onnistui. Jatketahan..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Kartan oikeudet"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Rekisteröidythän jatkaaksesi, jooko?"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Käyttäjätunnuksesi ja salasanasi eivät täsmänneet. Yritä uudestaan ole hyvä."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Karttasi on luotu! Jos haluat muokata tätä karttaa joltain muulta tietokoneelta, käytä tätä linkkiä: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Onneksi olkoon! Uusi karttasi on luotu!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Kartta on päivitetty!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Kartan toimittajat päivitetty onnistuneesti!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Vain kartan omistaja voi poistaa kartan."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Onneksi olkoon! Karttasi on kloonattu!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Kerros onnistuneesti poistettu. Pysyvästi."
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
# Translators:
|
||||
# Buggi, 2013
|
||||
# Buggi, 2013
|
||||
# Philippe Verdy, 2017
|
||||
# yohanboniface <yohanboniface@free.fr>, 2014,2016
|
||||
# YOHAN BONIFACE <yb@enix.org>, 2012
|
||||
msgid ""
|
||||
|
@ -12,8 +13,8 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-09-09 19:41+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:04+0000\n"
|
||||
"Last-Translator: Philippe Verdy\n"
|
||||
"Language-Team: French (http://www.transifex.com/yohanboniface/umap/language/fr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -32,11 +33,11 @@ msgstr "Consulter les cartes de %(current_user)s"
|
|||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr "Taper le nom d'un éditeur…"
|
||||
msgstr "Entrez le nom d'un modificateur…"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Nouveau du nouveau propriétaire…"
|
||||
msgstr "Entrez le nom du nouveau propriétaire…"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -75,11 +76,11 @@ msgstr "uMap permet de créer des cartes personnalisées sur des fonds <a href=\
|
|||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Choisir les fonds de carte"
|
||||
msgstr "Choisir les fonds pour votre carte"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Ajouter des POI: marqueurs, lignes, polygones..."
|
||||
msgstr "Ajouter des points d'intérêt : marqueurs, lignes, polygones..."
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
|
@ -87,7 +88,7 @@ msgstr "Choisir la couleur et les icônes"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Gérer les options de la carte: afficher une minicarte, géolocaliser l'utilisateur..."
|
||||
msgstr "Gérer les options de la carte : afficher une minicarte, géolocaliser l'utilisateur..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -149,7 +150,7 @@ msgstr "À propos"
|
|||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr "Feedback"
|
||||
msgstr "Donner votre avis"
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
|
@ -208,3 +209,183 @@ msgstr "Chercher"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Voir la carte"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Lien de modification secret : %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Tout le monde peut modifier"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Modifiable seulement avec le lien de modification secret"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nom"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Aucune licence"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "détails"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Lien vers une page détaillant la licence."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Modèle d'URL au format des tuiles OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Ordre des calques de tuiles dans le panneau de modification"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Seuls les modificateurs peuvent modifier"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Seul le créateur peut modifier"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "tout le monde (public)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "quiconque a le lien"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "seulement les modificateurs"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "description"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centre"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "zoom"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "géolocaliser"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Géolocaliser l'utilisateur au chargement?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Choisir une licence pour la carte"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licence"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fond de carte"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "créateur"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "modificateurs"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "statut de modification"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "qui a accès"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "réglages"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "La carte a été associée à votre compte %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Clone de"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "afficher au chargement."
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Afficher ce calque au chargement."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Vous êtes maintenant identifié. Merci de patienter..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permissions de la carte"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Merci de vous identifier pour continuer"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Nom d'utilisateur ou mot de passe incorrect. Merci de corriger."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Votre carte a été créée ! Si vous souhaitez la modifier depuis un autre ordinateur, veuillez utiliser ce lien : %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Félicitations, votre carte a bien été créée !"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "La carte a été mise à jour !"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Modificateurs de la carte mis à jour !"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Seul le créateur de la carte peut la supprimer."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Votre carte a été dupliquée ! Si vous souhaitez la modifier depuis un autre ordinateur, veuillez utiliser ce lien : %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Votre carte a été dupliquée !"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Calque supprimé."
|
||||
|
|
388
umap/locale/gl/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,388 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Nemigo Galiza <lescamposines@gmail.com>, 2017
|
||||
# Rafael Ávila Coya <ravilacoya@gmail.com>, 2014
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2018-06-02 14:15+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Galician (http://www.transifex.com/yohanboniface/umap/language/gl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: gl\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Lévame á páxina de inicio"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Navegador %(current_user)s dos mapas"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr "Tipo de editores engadir alcume..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Tipo de novo propietario de alcume..."
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr "por"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
msgstr "Máis"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Fai o favor de loguearte ca túa conta"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr "Nome de usuario"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr "Contrasinal"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr "Logueado"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Por favor escolle provedor"
|
||||
|
||||
#: templates/umap/about_summary.html:6
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr " permítelle crear mapas con <a href=\"%(osm_url)s\" />OpenStreetMap</a> capas nun minuto e incorpóralas no seu sitio."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Elixir capas do teu mapa"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Engadir POIs: marcas, liñas, polígonos..."
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Xestionar colores de POIs e iconas"
|
||||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Xestionar as opcións do mapa: amosar un minimapa, localizar o usuario na carga ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Importación por feixes de datos xeostructurados (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Elixe licenza para a túa información"
|
||||
|
||||
#: templates/umap/about_summary.html:17
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Inserir e compartir o teu mapa"
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "e isto é <a href=\"%(repo_url)s\">fonte libre</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
msgstr "Crear un mapa"
|
||||
|
||||
#: templates/umap/about_summary.html:34
|
||||
msgid "Play with the demo"
|
||||
msgstr "Xogar ca demo"
|
||||
|
||||
#: templates/umap/home.html:10
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Esta é unha instancia de demostración, usada para probas e lanzamentos previos. Se precisa unha instancia estable, use <a href=\"%(stable_url)s\">%(stable_url)s</a>. Tamén pode albergar a súa propia instancia, é <a href=\"%(repo_url)s\">código aberto</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Mapa de uMaps"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Inspírese e busque mapas"
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
msgstr "Os meus mapas"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Log in"
|
||||
msgstr "Loguear"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Sign in"
|
||||
msgstr "Asinar"
|
||||
|
||||
#: templates/umap/navigation.html:16
|
||||
msgid "About"
|
||||
msgstr "Acerca de"
|
||||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr "Auto mellora"
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr "Trocar contrasinal"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
msgstr "Saír"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr "Trocar contrasinal"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 "Insira o seu contrasinal anterior, por razóns de seguridade e, a continuación, introduza o seu novo contrasinal dúas veces para que poidamos comprobar que o escribiu correctamente."
|
||||
|
||||
#: templates/umap/password_change.html:12
|
||||
msgid "Old password"
|
||||
msgstr "Contrasinal vello"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr "Novo contrasinal"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr "Confirmar nova contrasinal"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr "Trocar meu contrasinal"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr "O contrasinal foi trocado ben"
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr "Teu contrasinal foi trocado"
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
msgstr "Non atopado no mapa"
|
||||
|
||||
#: templates/umap/search_bar.html:6
|
||||
msgid "Search maps"
|
||||
msgstr "Atopar mapas"
|
||||
|
||||
#: templates/umap/search_bar.html:9
|
||||
msgid "Search"
|
||||
msgstr "Atopar"
|
||||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Ver no mapa"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "A ligazón de edición secreta é %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Calquera pode editar"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Só é editable coa ligazón de edición secreta"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nome"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "No se escolleu ningunha licenza"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detalles"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Ligazón a unha páxina web onde se detalla a licenza."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Modelo de URL que usa o formato de teselas de OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Orde das capas base na caixa de edición"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Só os editores poden editar"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Só o proprietario pode editar"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "calquera (público)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "calquera que teña a ligazón"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "Só editores"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "descrición"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centrar"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "achegar/alonxar"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "localizar"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Localizar o usuario na carga?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Escolle a licenza do mapa."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licenza"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fondo"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "propietario"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "editores"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "estado da edición"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "compartir o estado"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "configuración"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "O teu mapa anónimo foi ligado á túa conta %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Clon de"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "amosar na carga"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Amosar esta capa na carga."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Xa iniciaches sesión. Continuando..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permisos do mapa"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Por favor: inicia sesión para continuar"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "O teu nome de usuario e contrasinal non casan. Por favor, téntao de novo."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "O teu mapa foi creado! Se queres editar este mapa dende outra computadora, usa esta ligazón: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Parabéns! O teu mapa foi creado!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "O mapa foi actualizado!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "O editores de mapa foron actualizados con éxito!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Só o seu proprietario pode eliminar o mapa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "O teu mapa foi clonado! Se queres editar este mapa dende outra computadora, usa esta ligazón: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Parabéns! O teu mapa foi clonado!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "A capa foi eliminada con éxito."
|
388
umap/locale/hr/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,388 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Janjko <janjko@gmail.com>, 2013
|
||||
# Janjko <janjko@gmail.com>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2018-06-02 14:15+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Croatian (http://www.transifex.com/yohanboniface/umap/language/hr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: hr\n"
|
||||
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
msgstr "Više"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:6
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap let 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:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:17
|
||||
msgid "Embed and share your map"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
msgstr "Stvori kartu"
|
||||
|
||||
#: templates/umap/about_summary.html:34
|
||||
msgid "Play with the demo"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:10
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
msgstr "Moje karte"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Log in"
|
||||
msgstr "Prijava"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Sign in"
|
||||
msgstr "Registracija"
|
||||
|
||||
#: templates/umap/navigation.html:16
|
||||
msgid "About"
|
||||
msgstr "Više o"
|
||||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr "Povratna informacija"
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
msgstr "Odjava"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
msgstr "Karta nije nađena"
|
||||
|
||||
#: templates/umap/search_bar.html:6
|
||||
msgid "Search maps"
|
||||
msgstr "Pretraži karte"
|
||||
|
||||
#: templates/umap/search_bar.html:9
|
||||
msgid "Search"
|
||||
msgstr "Pretraživanje"
|
||||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Svi mogu uređivati"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "ime"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detalji"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Samo urednici mogu uređivati"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Samo vlasnik može uređivati"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "opis"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centar"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "uvećanje"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licenca"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "pozadina"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "vlasnik"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "urednici"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "status uređivanja"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "postavke"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Duplikat od"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Prijavite se za nastavak"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Vaše korisničko ime i lozinka se ne podudaraju. Molim pokušajte ponovo."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Samo vlasnik karte ju može obrisati."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Karta je duplicirana."
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Sloj obrisan."
|
207
umap/locale/hu/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,207 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Gábor Babos <gabor.babos@gmail.com>, 2017
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2017-10-29 20:37+0000\n"
|
||||
"Last-Translator: Gábor Babos <gabor.babos@gmail.com>\n"
|
||||
"Language-Team: Hungarian (http://www.transifex.com/yohanboniface/umap/language/hu/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: hu\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Vissza a kezdőlapra"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "%(current_user)s térképeinek böngészése"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr "Add meg a szerkesztő felhasználónevét a hozzáadáshoz…"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Add meg az új tulajdonos felhasználónevét…"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr "– készítette:"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
msgstr "Még több"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Kérlek, jelentkezz be"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr "Felhasználónév"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr "Jelszó"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr "Belépés"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Kérlek, válassz egy szolgáltatót"
|
||||
|
||||
#: templates/umap/about_summary.html:6
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr "A uMap segítségével <a href=\"%(osm_url)s\" />OpenStreetMap</a>-alapú térképrétegeket hozhatsz létre percek alatt, amelyeket be is ágyazhatsz a weboldaladba."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Válaszd ki a térképed rétegeit"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Érdekes helyek hozzáadása: pontok, vonalak, sokszögek…"
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Érdekes helyek (POI-k) színeinek és ikonjainak kezelése"
|
||||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Szabd testre a térkép viselkedését: áttekintő térkép használatával, a felhasználó pozíciójának lekérdezésével…"
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Geoinformatikai adatfájlok tömeges importjának támogatása (geojson, gpx, kml, osm…)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Válassz licenszet adataid számára!"
|
||||
|
||||
#: templates/umap/about_summary.html:17
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Ágyazd be és oszd meg a térképedet!"
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "És mindez <a href=\"%(repo_url)s\">nyílt forráskódú</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
msgstr "Készíts egy térképet!"
|
||||
|
||||
#: templates/umap/about_summary.html:34
|
||||
msgid "Play with the demo"
|
||||
msgstr "Próbáld ki a bemutatót!"
|
||||
|
||||
#: templates/umap/home.html:10
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Ez egy tesztelési célra használt szerver. Amennyiben egy üzemszerűen használható szerverre van szükséged, kérlek használd ezt a címet: <a href=\"%(stable_url)s\">%(stable_url)s</a>. A uMap-et a saját szerveredre is feltelepítheded, hiszen <a href=\"%(repo_url)s\">nyílt forráskódú</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "uMap-térképek térképe"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Szerezz inspirációt, böngéssz a térképek között!"
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
msgstr "Térképeim"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Log in"
|
||||
msgstr "Bejelentkezés"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Sign in"
|
||||
msgstr "Regisztráció"
|
||||
|
||||
#: templates/umap/navigation.html:16
|
||||
msgid "About"
|
||||
msgstr "Névjegy"
|
||||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr "Segítség és hibabejelentés"
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr "Jelszó változtatása"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
msgstr "Kijelentkezés"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr "Jelszó változtatása"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 "Kérlek, biztonsági okokból írd be a régi jelszavad, majd add meg kétszer a kívánt új jelszót!"
|
||||
|
||||
#: templates/umap/password_change.html:12
|
||||
msgid "Old password"
|
||||
msgstr "Régi jelszó"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr "Új jelszó"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr "Új jelszó ismét"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr "Jelszó változtatása"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr "A jelszóváltoztatás sikeres volt."
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr "A jelszavad megváltozott."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
msgstr "Ilyen térkép nem található."
|
||||
|
||||
#: templates/umap/search_bar.html:6
|
||||
msgid "Search maps"
|
||||
msgstr "Térképek keresése"
|
||||
|
||||
#: templates/umap/search_bar.html:9
|
||||
msgid "Search"
|
||||
msgstr "Keresés"
|
||||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Térkép megtekintése"
|
|
@ -3,7 +3,8 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Maurizio Napolitano <maurizio.napolitano@okfn.org>, 2013-2015
|
||||
# idetao <marcxosm@gmail.com>, 2017
|
||||
# Maurizio Napolitano <maurizio.napolitano@okfn.org>, 2013-2015,2018
|
||||
# claudiamocci <moccicm@gmail.com>, 2013
|
||||
# YOHAN BONIFACE <yb@enix.org>, 2012
|
||||
msgid ""
|
||||
|
@ -11,19 +12,18 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2015-11-02 09:15+0000\n"
|
||||
"PO-Revision-Date: 2018-02-22 11:08+0000\n"
|
||||
"Last-Translator: Maurizio Napolitano <maurizio.napolitano@okfn.org>\n"
|
||||
"Language-Team: Italian (http://www.transifex.com/yohanboniface/umap/language/"
|
||||
"it/)\n"
|
||||
"Language: it\n"
|
||||
"Language-Team: Italian (http://www.transifex.com/yohanboniface/umap/language/it/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: it\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
msgstr "Vai alla pagina principale"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
|
@ -35,10 +35,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Inserire nick degli editor d'aggiungere..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Inserire nick degli editor d'aggiungere..."
|
||||
msgstr "Inserisci il nome del nuovo proprietario..."
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -50,19 +48,19 @@ msgstr "Altre mappe"
|
|||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
msgstr "Accedi con il tuo account"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
msgstr "Nome utente"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Password"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
msgstr "Login"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
|
@ -73,9 +71,7 @@ msgstr "Seleziona un fornitore"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap permette di creare mappe, che fanno uso di <a href=\"%(osm_url)s\" /"
|
||||
">OpenStreetMap</a> come sfondo, da inserire nel proprio sito in un minuto."
|
||||
msgstr "uMap permette di creare mappe, che fanno uso di <a href=\"%(osm_url)s\" />OpenStreetMap</a> come sfondo, da inserire nel proprio sito in un minuto."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -91,9 +87,7 @@ msgstr "Scegli colori ed icone dei POI"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Aggiungi opzioni alla mappa: mappa panoramica, geolocalizzazione di un "
|
||||
"utente al caricamento ..."
|
||||
msgstr "Aggiungi opzioni alla mappa: mappa panoramica, geolocalizzazione di un utente al caricamento ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -124,14 +118,10 @@ msgstr "Gioca con la demo"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Questa è una demo da utilizzare solo per test e prototipi. Qualora sia "
|
||||
"necessaria una versione stabile si deve utilizzare l'indirizzo a href="
|
||||
"\"%(stable_url)s\">%(stable_url)s</a>. Chiunque inoltre può crearsi una "
|
||||
"propria istanza, uMap è <a href=\"%(repo_url)s\">software libero</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Questa è una demo da utilizzare solo per test e prototipi. Qualora sia necessaria una versione stabile si deve utilizzare l'indirizzo a href=\"%(stable_url)s\">%(stable_url)s</a>. Chiunque inoltre può crearsi una propria istanza, uMap è <a href=\"%(repo_url)s\">software libero</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -163,7 +153,7 @@ msgstr "Feedback"
|
|||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
msgstr "Cambia password"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
|
@ -171,37 +161,37 @@ msgstr "Esci"
|
|||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
msgstr "Cambia password"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 ""
|
||||
"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 "Per motivi di sicurezza inserire la vecchia password, poi inserire quella nuova due volte così da verificare che sia stata scritta correttamente"
|
||||
|
||||
#: templates/umap/password_change.html:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
msgstr "Password vecchia"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
msgstr "Nuova password"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
msgstr "Conferma della nuova password"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
msgstr "Cambia la mia password"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
msgstr "Cambio della password effettuato con successo!"
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
msgstr "La tua password è stata cambiata."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
|
@ -219,5 +209,182 @@ msgstr "Cerca"
|
|||
msgid "View the map"
|
||||
msgstr "Visualizza la mappa"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Impostazioni mappa"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Il link segreto per la modifica %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Chiunque può modificare"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Modificabile solo con il link segreto"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nome"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Nessuna licenza definita"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "dettagli"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link alla pagina con i dettagli della licenza"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Modello dell'URL usando il formato delle tile OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Ordine degli sfondi (tilelayers) nel box di modifica"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Solo gli editor possono fare modifiche"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Solo il proprietario può effettuare modifiche"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "chiunque (pubblico)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "chiunque abbia il ilnk"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "solo autori"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "descrizione"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centra"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "zoom"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "localizza"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Geolocalizzare l'utente al caricamento?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Scegliere una licenza per la mappa."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licenza"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "sfondo"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "proprietario"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "editor"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "stato della modifica"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "stato condivisione"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "impostazioni"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "La mappa anonima è stata associata all'account %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Duplicata da "
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "mostra al caricamento"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Visualizza questo layer al caricamento."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Utente loggato. Continuare..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permessi della mappa"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Effettuare il login per continuare"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Username e password non corrispondono. Riprovare."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "La mappa è stata creata! Per modificarla da un altro computer, si deve utilizzare questo link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Congratulazioni, la mappa è stata creata!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "La mappa è stata aggiornata!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Aggiornato l'elenco degli editor abilitati alla modifica della mappa!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Solo il proprietario può eliminare la mappa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "La mappa è stata clonata! Per modificarla usando un altro computer, si deve utilizzare questo link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Perfetto, la tua mappa è stata clonata!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Layer eliminato correttamente"
|
||||
|
|
|
@ -10,7 +10,7 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-10-02 07:23+0000\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:33+0000\n"
|
||||
"Last-Translator: tomoya muramoto <muramototomoya@gmail.com>\n"
|
||||
"Language-Team: Japanese (http://www.transifex.com/yohanboniface/umap/language/ja/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -206,3 +206,183 @@ msgstr "検索"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "マップ表示"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "非公開の編集用リンク %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "だれでも編集可能"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "非公開の編集リンクからのみ編集可能"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "名称"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "ライセンス未設定"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "詳細"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "ライセンス詳細ページへのリンク"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "OSMタイルフォーマットを利用したURLテンプレート"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "編集ボックス内のタイルレイヤ並び順"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "指定ユーザのみ編集可能"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "所有者のみ編集可能"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "制限なし (公開)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "リンクを知っている人全員"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "編集者のみ"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "概要"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "中心点"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "ズーム"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "現在地"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "読み込み時に現在地を表示?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "マップのライセンスを選択"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "ライセンス"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "背景地図"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "所有者"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "編集者"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "編集ステータス"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "共有状況"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "設定"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "所有者不明のマップがアカウント %s と関連付けられました"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "複製元"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "読み込み時に表示"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "読み込み時にこのレイヤを表示"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "ログインしました"
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "マップ編集許可"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "ログインが必要です"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "ユーザ名とパスワードが不一致です。もう一度入力してください。"
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "マップの作成が完了しました! このマップを他の端末から編集する場合、いかのリンクを使用してください: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "マップ作成完了です!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "マップが更新されました!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "マップ編集者の更新が完了しました!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "マップを削除できるのは所有者だけです"
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "マップの複製が完了しました!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "レイヤ削除完了"
|
||||
|
|
|
@ -3,26 +3,25 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# ramunasd <ieskok@ramuno.lt>, 2014
|
||||
# Ramūnas D. <ieskok@ramuno.lt>, 2014
|
||||
# Ugne Urbelyte <ugneurbel@gmail.com>, 2017
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-03-01 00:29+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Lithuanian (http://www.transifex.com/projects/p/umap/language/"
|
||||
"lt/)\n"
|
||||
"Language: lt\n"
|
||||
"PO-Revision-Date: 2017-09-19 23:05+0000\n"
|
||||
"Last-Translator: Ugne Urbelyte <ugneurbel@gmail.com>\n"
|
||||
"Language-Team: Lithuanian (http://www.transifex.com/yohanboniface/umap/language/lt/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
|
||||
"%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"Language: lt\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
msgstr "Grįžti į pagrindinį puslapį"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
|
@ -31,15 +30,15 @@ msgstr "Peržiūrėti %(current_user)s žemėlapius"
|
|||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr ""
|
||||
msgstr "Įveskite redaguotojų pseudonimus, kad pridėtu..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr ""
|
||||
msgstr "Įveskite naują vartotojo vardą"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
msgstr "pagal"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
|
@ -47,19 +46,19 @@ msgstr "Daugiau"
|
|||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
msgstr "Prisijungti prie savo paskyros"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
msgstr "Vartotojo vardas"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Slaptažodis"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
msgstr "Prisijungti"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
|
@ -70,9 +69,7 @@ msgstr "Pasirinkite teikėją"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap leidžia susikurti savo žemėlapį naudojant <a href=\"%(osm_url)s\" /"
|
||||
">OpenStreetMap</a> sluoksnius vos per minutę ir įterpti jį į savo puslapį."
|
||||
msgstr "uMap leidžia susikurti savo žemėlapį naudojant <a href=\"%(osm_url)s\" />OpenStreetMap</a> sluoksnius vos per minutę ir įterpti jį į savo puslapį."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -88,13 +85,11 @@ msgstr "Valdyti POI spalvas ir ikonėles"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Valdyti žemėlapio nustatymus: rodyti mini žemėlapį, automatiškai nustatyti "
|
||||
"padėtį.."
|
||||
msgstr "Valdyti žemėlapio nustatymus: rodyti mini žemėlapį, automatiškai nustatyti padėtį.."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr ""
|
||||
msgstr "Masiškai importuoti geografinius duomenis (geojson, gpx, kml, osm...)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
|
@ -121,22 +116,18 @@ msgstr "Išbandyti demo"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Tai demonstracinė versija, naudojama testavimui ir naujų versijų "
|
||||
"demonstravimui. Jei Jums reikia stabilios versijos, tada geriau naudokitės "
|
||||
"<a href=\"%(stable_url)s\">%(stable_url)s</a>. Jūs taip pat gali pasileisti "
|
||||
"savo puslapį, juk tai <a href=\"%(repo_url)s\">atviras kodas</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Tai demonstracinė versija, naudojama testavimui ir naujų versijų demonstravimui. Jei Jums reikia stabilios versijos, tada geriau naudokitės <a href=\"%(stable_url)s\">%(stable_url)s</a>. Jūs taip pat gali pasileisti savo puslapį, juk tai <a href=\"%(repo_url)s\">atviras kodas</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr ""
|
||||
msgstr "uMap žemėlapis"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr ""
|
||||
msgstr "Peržiūrėkite žemėlapius, raskite įkvėpimą"
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
|
@ -160,7 +151,7 @@ msgstr "Atsiliepimai"
|
|||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
msgstr "Keisti slaptažodį"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
|
@ -168,37 +159,37 @@ msgstr "Atsijungti"
|
|||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
msgstr "Slaptažodžio keitimas"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 ""
|
||||
"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 "Saugumo sumetimais, įveskite savo dabartinį slaptažodį. Tuomet įveskite naują slaptažodį du kartus."
|
||||
|
||||
#: templates/umap/password_change.html:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
msgstr "Senas slaptažodis"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
msgstr "Naujas slaptažodis"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
msgstr "Naujo slaptažodžio patvirtinimas"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
msgstr "Keisti mano slaptažodį"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
msgstr "Slaptažodžio pakeitimas sėkmingas."
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
msgstr "Jūsų slaptažodis buvo pakeistas."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
|
@ -214,7 +205,184 @@ msgstr "Ieškoti"
|
|||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
msgstr "Peržiūrėti žemėlapį"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Žemėlapio nustatymai"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Slapta redagavimo nuoroda %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Visi gali redaguoti"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Redaguojamas tik su slapta nuoroda"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "vardas"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Nenustatyta licenzija"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "išsamiau"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Licenzijos aprašymo nuoroda."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL šablonas OSM kaladėlių formatui"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Žemėlapio sluoksnių tvarka redagavimo lange"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Tik redaktoriai gali keisti"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Tik savininkas gali keisti"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "visi (viešai)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "visi su nuoroda"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "tik keitėjai"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "aprašymas"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centras"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "mastelis"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "nustatyti padėtį"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Nustatyti padėti užsikrovus?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Pasirinkite žemėlapio licenziją."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licenzija"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fonas"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "savininkas"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "redaktoriai"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "keisti būseną"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "pasidalinti būsena"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "nustatymai"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Jūsų anoniminis žemėlapis prijungtas prie Jūsų paskyros %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Kopija"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "rodyti pasikrovus"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Rodyti šį sluoksnį pasrikrovus."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Sėkmingai prisijungėte. Kraunasi..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Žemėlapio leidimai"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Prisijunkite, kad tęsti"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Jūsų vardas ir slaptažodis yra neteisingi. Prašom pabandyti iš naujo."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Jūsų žemėlapis sėkmingai sukurtas! Jei norite redaguoti jį iš kito kompiuterio, pasinaudokite šia nuoroda: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Sveikinam, Jūsų žemėlapis sukurtas!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Žemėlapis atnaujintas!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Žemėlapio keitėjai atnaujinti!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Tik savininkas gali ištrinti žemėlapį."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Jūsų žemėlapis nukopijuotas! Jei norite redaguoti jį iš kito kompiuterio, pasinaudokite šia nuoroda: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Sveikinam, Jūsų žemėlapis buvo nukopijuotas!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Sluoksnis sėkmingai ištrintas."
|
||||
|
|
|
@ -205,3 +205,183 @@ msgstr ""
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr ""
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "naam"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr ""
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr ""
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr ""
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr ""
|
||||
|
|
|
@ -4,21 +4,23 @@
|
|||
#
|
||||
# Translators:
|
||||
# Daniel Koć <daniel@xn--ko-wla.pl>, 2015
|
||||
# endro, 2016
|
||||
# endro, 2015
|
||||
# Teiron <mmok444@gmail.com>, 2016
|
||||
# Maciej Kowalik <m.kowalik.79@gmail.com>, 2016
|
||||
# Teiron, 2016
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-09-16 17:30+0000\n"
|
||||
"Last-Translator: Teiron <mmok444@gmail.com>\n"
|
||||
"PO-Revision-Date: 2018-06-02 14:15+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Polish (http://www.transifex.com/yohanboniface/umap/language/pl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: pl\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
|
@ -207,3 +209,183 @@ msgstr "Szukaj"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Zobacz mapę"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Sekretnym odnośnikiem do edycji jest %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Wszyscy mogą edytować"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Edycja możliwa tylko z sekretnym odnośnikiem"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nazwa"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Brak ustawionej licencji"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "szczegóły"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Odnośnik do strony ze szczegółowym opisem licencji."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Szablon URL używający formatu kafelków OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Kolejność podkładów w oknie edycji"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Tylko edytorzy mogą edytować"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Tylko właściciel może edytować"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "wszyscy (publiczne)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "każdy z linkiem"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "tylko edytorzy"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "opis"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "środek"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "przybliżenie"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "lokalizuj"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Lokalizować użytkownika po załadowaniu?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Wybierz licencję mapy."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licencja"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "tło"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "właściciel"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "edytorzy"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "status edycji"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "udostępnij status"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "ustawienia"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Twoja anonimowa mapa została dołączona do twojego konta %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Kopia"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "wyświetl po załadowaniu"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Wyświetl tę warstwę po załadowaniu."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Jesteś zalogowany. Kontynuowanie..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Uprawnienia mapy"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Proszę się zalogować by kontynuować"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Twoja nazwa użytkownika i hasło nie pasują. Proszę spróbować ponownie."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Twoja mapa została utworzona! Jeśli chcesz edytować ją z innego komputera, użyj odnośnika: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Gratulacje, twoja mapa została utworzona!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Mapa została zaktualizowana!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Edytorzy mapy zaktualizowani pomyślnie!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Tylko właściciel może usunąć mapę."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Twoja mapa została skopiowana! Jeśli chcesz edytować ją z innego komputera, użyj odnośnika: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Gratulacje, twoja mapa została skopiowana!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Warstwa usunięta pomyślnie."
|
||||
|
|
|
@ -10,7 +10,7 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-12-22 10:03+0000\n"
|
||||
"PO-Revision-Date: 2017-09-19 22:04+0000\n"
|
||||
"Last-Translator: Rui <xymarior@yandex.com>\n"
|
||||
"Language-Team: Portuguese (http://www.transifex.com/yohanboniface/umap/language/pt/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -206,3 +206,183 @@ msgstr "Procurar"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Ver o mapa"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Link secreto para edição é %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Todos podem editar"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Unicamente editável através de link secreto"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "nome"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Nenhuma licença definida"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "detalhes"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Link para uma página detalhando a licença."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Modelo de URL no formato de telas OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Ordem das camadas na caixa de edição"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Só editores podem editar"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Só o proprietário pode editar"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "todos (público)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "qualquer um com o link"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "só editores"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "descrição"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "centro"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "zoom"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "localizar"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Localizar usuário no início?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Escolha uma licença para o mapa."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licença"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "fundo"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "proprietário"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "editores"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "editar estado"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "partilhar estado"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "parâmetros"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "O seu mapa anónimo foi anexado à sua conta %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Clone de"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "mostrar no início"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Apresentar esta camada ao carregar."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Sucesso na identificação. Continuando..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Permissões do mapa"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Por favor entre na sua conta para continuar"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "O nome de usuário e senha não correspondem. Tente novamente."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "O seu mapa foi criado! Se quiser editar este mapa noutro computador, por favor utilize este link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Parabéns, o seu mapa foi criado!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "O mapa foi atualizado!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Os editores do mapa foram atualizados com sucesso!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Só o proprietário pode eliminar o mapa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "O seu mapa foi clonado! Se quiser editar este mapa noutro computador, por favor utilize este link: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Parabéns, o seu mapa foi clonado!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Camada eliminada com sucesso."
|
||||
|
|
|
@ -10,7 +10,7 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-10-20 07:57+0000\n"
|
||||
"PO-Revision-Date: 2017-09-20 07:08+0000\n"
|
||||
"Last-Translator: Кругликов Илья <ilis@inbox.ru>\n"
|
||||
"Language-Team: Russian (http://www.transifex.com/yohanboniface/umap/language/ru/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -206,3 +206,183 @@ msgstr "Найти"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Посмотреть карту"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Секретная ссылка для редактирования: %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Все могут редактировать"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Редактирование возможно только при наличии секретной ссылки"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "название"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Лицензия не задана"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "подробности"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Ссылка на страницу с описанием лицензии"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "шаблон ссылки использует формат слоя OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Расположите слои карт в окне редактирования"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Только редакторы могут редактировать"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Только владелец может редактировать"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "все (без ограничений)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "все, у кого есть ссылка"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "только редакторы"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "описание"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "центр"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "масштаб"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "геолокация"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Использовать геолокацию при загрузке?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Выберите лицензию для карты."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "лицензия"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "фоновый слой"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "владелец"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "редакторы"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "статус редактирования"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "статус совместного использования"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "настройки"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Ваша анонимная карта была присоединена к вашей учётной записи %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Копия"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "показывать при загрузке"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Показать этот слой при загрузке."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Вы вошли. Продолжим..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Разрешения для карты"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Чтобы продолжить, выполните вход"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Имя пользователя или пароль неверные. Попробуйте ещё раз."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Ваша карта готова! Если вы хотите редактировать её на другом компьютере, используйте эту ссылку:: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Поздравляем, ваша карта готова!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Карта обновлена!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Редакторы карты успешно обновлены!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Только владелец карты может удалить её."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Поздравляем, ваша карта скопирована!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Слой удалён."
|
||||
|
|
|
@ -11,14 +11,14 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-10-09 11:19+0000\n"
|
||||
"PO-Revision-Date: 2017-09-21 14:34+0000\n"
|
||||
"Last-Translator: Martin <martin@droid.sk>\n"
|
||||
"Language-Team: Slovak (Slovakia) (http://www.transifex.com/yohanboniface/umap/language/sk_SK/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: sk_SK\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
|
@ -207,3 +207,183 @@ msgstr "Hľadať"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Prezrieť si túto mapu"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Tajný odkaz umožňujúci úpravu mapy je %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Hocikto môže upravovať"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Možné upravovať iba pomocou tajného odkazu"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "názov"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Žiadná licencia nie je nastavená"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "podrobnosti"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Odkaz na stránku s podrobnejším popisom licencie."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Vzor URL vo formáte pre dlaždice OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Poradie vrstiev pri úprave"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Upravovať môžu iba prispievatelia"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Upravovať môže iba vlastník"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "hocikto (verejná)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "hocikto pomocou odkazu"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "iba prispievatelia"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "popis"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "stred"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "priblíženie"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "lokalizovať"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Nájsť polohu používateľa pri štarte?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Vyberte si licenciu mapy."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "licencia"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "pozadie"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "vlastník"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "prispievatelia"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "kto môže vykonávať úpravy"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "nastavenie zdieľania"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "nastavenia"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Vaša anonymná mapa bola pripojená k vašemu účtu %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Kópia"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "zobraziť pri štarte"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Zobraziť túto vrstvu pri štarte."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Ste prihláseni. Pokračujeme ďalej…"
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Prístupové práva"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Pre pokračovanie sa musíte prihlásiť"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Používateľské meno a heslo sa nezhodujú. Prosím, skúste to znova."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Vaša mapa bola vytvorená! Ak chcete upravovať túto mapu z iného počítača, použite tento odkaz: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Gratulujeme, vaša mapa bola vytvorená!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Mapa bola aktualizována!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Zoznam prispievovateľov bol úspešne upravený!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Iba vlastník môže vymazať túto mapu."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Bola vytvorená kópia mapy! Ak chcete upravovať túto mapu z iného počítača, použite tento odkaz: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Gratulujeme, bola vytvorená kópia mapy!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Vrstva bola úspešne vymazaná."
|
||||
|
|
387
umap/locale/sl/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,387 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Matej Urbančič <>, 2018
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2018-06-02 14:15+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Slovenian (http://www.transifex.com/yohanboniface/umap/language/sl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: sl\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr "Nazaj na začetno stran"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
msgid "Browse %(current_user)s's maps"
|
||||
msgstr "Prebrskaj zemljevide (%(current_user)s)"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:24
|
||||
msgid "Type editors nick to add…"
|
||||
msgstr "Vpišite vzdevek urednika ..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Vpišite nov vzdevek lastnika ..."
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
msgstr "–"
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:11
|
||||
msgid "More"
|
||||
msgstr "Več"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr "Prijavite se z računom"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr "Uporabniško ime"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr "Geslo"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr "Prijava"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
msgstr "Izbor ponudnika"
|
||||
|
||||
#: templates/umap/about_summary.html:6
|
||||
#, python-format
|
||||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr "Okolje uMap omogoča hitro ustvarjanje plasti zemljevidov <a href=\"%(osm_url)s\" />OpenStreetMap</a> in vstavljanje povezav na spletno stran."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
msgstr "Izbor plasti na zemljevidu"
|
||||
|
||||
#: templates/umap/about_summary.html:12
|
||||
msgid "Add POIs: markers, lines, polygons..."
|
||||
msgstr "Dodajanje točk POI: označbe, črte, polja ..."
|
||||
|
||||
#: templates/umap/about_summary.html:13
|
||||
msgid "Manage POIs colours and icons"
|
||||
msgstr "Prilagajanje ikon in barv točk POI"
|
||||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr "Upravljanje možnosti zemljevidov: določanje uporabnikov, vrst prikaza ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
msgstr "Paketno uvažanje geografskih podatkov (geojson, gpx, kml, osm ...)"
|
||||
|
||||
#: templates/umap/about_summary.html:16
|
||||
msgid "Choose the license for your data"
|
||||
msgstr "Izbor dovoljenja za vpisane podatke"
|
||||
|
||||
#: templates/umap/about_summary.html:17
|
||||
msgid "Embed and share your map"
|
||||
msgstr "Vstavljanje in objavljanje zemljevida"
|
||||
|
||||
#: templates/umap/about_summary.html:23
|
||||
#, python-format
|
||||
msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Povrh vsega pa je projekt še <a href=\"%(repo_url)s\">odprtokoden</a>!"
|
||||
|
||||
#: templates/umap/about_summary.html:32 templates/umap/navigation.html:31
|
||||
msgid "Create a map"
|
||||
msgstr "Ustvari zemljevid"
|
||||
|
||||
#: templates/umap/about_summary.html:34
|
||||
msgid "Play with the demo"
|
||||
msgstr "Pokaži preizkusne strani"
|
||||
|
||||
#: templates/umap/home.html:10
|
||||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Preizkusna različica je na voljo za pregled in spoznavanje funkcionalnosti. Če potrebujete stabilno različico, uporabite <a href=\"%(stable_url)s\">%(stable_url)s</a>. Seveda lahko vzpostavite svoj strežnik, saj je orodje <a href=\"%(repo_url)s\">odprtokodno</a>!"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
msgstr "Zemljevid spletišča uMaps"
|
||||
|
||||
#: templates/umap/home.html:24
|
||||
msgid "Get inspired, browse maps"
|
||||
msgstr "Poiščite zamisli, prebrskajte zemljevide"
|
||||
|
||||
#: templates/umap/navigation.html:12
|
||||
msgid "My maps"
|
||||
msgstr "Moji zemljevidi"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Log in"
|
||||
msgstr "Prijava"
|
||||
|
||||
#: templates/umap/navigation.html:14
|
||||
msgid "Sign in"
|
||||
msgstr "Vpis"
|
||||
|
||||
#: templates/umap/navigation.html:16
|
||||
msgid "About"
|
||||
msgstr "O projektu"
|
||||
|
||||
#: templates/umap/navigation.html:17
|
||||
msgid "Feedback"
|
||||
msgstr "Odziv"
|
||||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr "Zamenjaj geslo"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
msgstr "Odjava"
|
||||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr "Spremeni geslo"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 "Iz varnostnih razlogov morate vpisati staro geslo in nato še dvakrat vpisati novo, da se prepričate v pravilnost vpisa."
|
||||
|
||||
#: templates/umap/password_change.html:12
|
||||
msgid "Old password"
|
||||
msgstr "Staro geslo"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr "Novo geslo"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr "Potrditev novega gesla"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr "Spremeni geslo"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr "Geslo je uspešno spremenjeno."
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr "Geslo je spremenjeno."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
msgstr "Zemljevida ni mogoče najti."
|
||||
|
||||
#: templates/umap/search_bar.html:6
|
||||
msgid "Search maps"
|
||||
msgstr "Poišči zemljevide"
|
||||
|
||||
#: templates/umap/search_bar.html:9
|
||||
msgid "Search"
|
||||
msgstr "Poišči"
|
||||
|
||||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "Pogled zemljevida"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Skrivna povezava za urejanje je %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Vsakdo lahko ureja"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Urejanje je mogoče le prek posebne skrivne povezave"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "ime"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Ni določenega dovoljenja uporabe"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "podrobnosti"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Povezava do strani, kjer je objavljeno dovoljenje."
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Predloga naslova URL z uporabo zapisa OSM."
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Vrstni red plasti v urejevalniku"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Urejajo lahko le uredniki"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Ureja lahko le lastnik"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "kdorkoli (javno)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "kdorkoli s povezavo"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "le uredniki"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "opis"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "središče"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "približaj"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "določi mesto"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Al naj se ob zagonu določi trenutno mesto uporabnika?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Izbor dovoljenja za zemljevid."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "dovoljenje"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "ozadje"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "lastnik"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "uredniki"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "stanje urejanja"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "stanje souporabe"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "nastavitve"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Anonimni zemljevid je povezan z računom %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Klon zemljevida"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "pokaži ob zagonu"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Pokaži to plast med nalaganjem."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Prijava je uspešno končana. Poteka nalaganje vsebine ..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Dovoljenja za urejanje"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Pred nadaljevanjem se je treba prijaviti."
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Uporabniško ime in geslo nista skladna. Poskusite znova."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Zemljevid je ustvarjen! Za urejanje z drugega računalnika uporabite povezavo: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Zemljevid je uspešno ustvarjen!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Zemljevid je posodobljen!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "seznam urednikov je posodobljen!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Zemljevid lahko izbriše le lastnik."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Zemljevid je kloniran! Za urejanje z drugega računalnika uporabite povezavo: %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Zemljevid je uspešno kloniran!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Plast je uspešno izbrisana."
|
|
@ -3,26 +3,24 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Сергій Дубик <dubyk@ukr.net>, 2014
|
||||
# Сергій Дубик <dubyk@ukr.net>, 2014,2017
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-09-15 16:05+0000\n"
|
||||
"PO-Revision-Date: 2017-09-20 04:50+0000\n"
|
||||
"Last-Translator: Сергій Дубик <dubyk@ukr.net>\n"
|
||||
"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/projects/p/umap/"
|
||||
"language/uk_UA/)\n"
|
||||
"Language: uk_UA\n"
|
||||
"Language-Team: Ukrainian (Ukraine) (http://www.transifex.com/yohanboniface/umap/language/uk_UA/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"Language: uk_UA\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
msgid "Take me to the home page"
|
||||
msgstr ""
|
||||
msgstr "Перемістіть мене на головну сторінку"
|
||||
|
||||
#: templates/auth/user_detail.html:7
|
||||
#, python-format
|
||||
|
@ -34,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Введіть ім’я редактора, щоб додати…"
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Введіть ім’я редактора, щоб додати…"
|
||||
msgstr "Введіть нік нового власника..."
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -49,19 +45,19 @@ msgstr "Ще"
|
|||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Please log in with your account"
|
||||
msgstr ""
|
||||
msgstr "Будь ласка, увійдіть за обліковим записом"
|
||||
|
||||
#: templates/registration/login.html:18
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
msgstr "Ім’я користувача"
|
||||
|
||||
#: templates/registration/login.html:20
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Пароль"
|
||||
|
||||
#: templates/registration/login.html:21
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
msgstr "Логін"
|
||||
|
||||
#: templates/registration/login.html:27
|
||||
msgid "Please choose a provider"
|
||||
|
@ -72,9 +68,7 @@ msgstr "Виберіть провайдера автентифікації"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap дає Вам можливість за лічені хвилини створювати мапи на основі даних <a "
|
||||
"href=\"%(osm_url)s\" />OpenStreetMap</a> та публікувати їх на своєму сайті."
|
||||
msgstr "uMap дає Вам можливість за лічені хвилини створювати мапи на основі даних <a href=\"%(osm_url)s\" />OpenStreetMap</a> та публікувати їх на своєму сайті."
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -90,9 +84,7 @@ msgstr "Вибирайте потрібні кольори та значки д
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Змінюйте параметри мапи: відображення мінімапи, встановлення місця "
|
||||
"користувача при завантаженні …"
|
||||
msgstr "Змінюйте параметри мапи: відображення мінімапи, встановлення місця користувача при завантаженні …"
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -123,14 +115,10 @@ msgstr "Погратися з демо-версією"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own 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>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"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/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -162,7 +150,7 @@ msgstr "Зворотній зв’язок"
|
|||
|
||||
#: templates/umap/navigation.html:20
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
msgstr "Зміна паролю"
|
||||
|
||||
#: templates/umap/navigation.html:22
|
||||
msgid "Log out"
|
||||
|
@ -170,37 +158,37 @@ msgstr "Вийти"
|
|||
|
||||
#: templates/umap/password_change.html:6
|
||||
msgid "Password change"
|
||||
msgstr ""
|
||||
msgstr "Зміна паролю"
|
||||
|
||||
#: templates/umap/password_change.html:7
|
||||
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 ""
|
||||
"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:12
|
||||
msgid "Old password"
|
||||
msgstr ""
|
||||
msgstr "Старий пароль"
|
||||
|
||||
#: templates/umap/password_change.html:14
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
msgstr "Новий пароль"
|
||||
|
||||
#: templates/umap/password_change.html:16
|
||||
msgid "New password confirmation"
|
||||
msgstr ""
|
||||
msgstr "Підтвердження для нового паролю"
|
||||
|
||||
#: templates/umap/password_change.html:18
|
||||
msgid "Change my password"
|
||||
msgstr ""
|
||||
msgstr "Змінити мій пароль"
|
||||
|
||||
#: templates/umap/password_change_done.html:6
|
||||
msgid "Password change successful"
|
||||
msgstr ""
|
||||
msgstr "Зміна паролю успішна."
|
||||
|
||||
#: templates/umap/password_change_done.html:7
|
||||
msgid "Your password was changed."
|
||||
msgstr ""
|
||||
msgstr "Ваш пароль змінено."
|
||||
|
||||
#: templates/umap/search.html:13
|
||||
msgid "Not map found."
|
||||
|
@ -218,5 +206,182 @@ msgstr "Шукати"
|
|||
msgid "View the map"
|
||||
msgstr "Переглянути мапу"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Налаштування мапи"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Секретне посилання для редагування: %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Кожен може редагувати"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Редагування можливе лише за наявності секретного посилання"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "назва"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Ліцензія не задана"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "подробиці"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Посилання на сторінку з описом ліцензії"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "шаблон посилання використовує формат шару OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Розташуйте шари мап у вікні редагування"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Лише редактори можуть редагувати"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Лише власник може редагувати"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "усі (відкритий доступ)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "усі, у кого є посилання"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "лише редактори"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "опис"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "центр"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "масштаб"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "геолокація"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Використовувати геолокацію при завантаженні?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Виберіть ліцензію для мапи."
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "ліцензія"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "фоновий шар"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "власник"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "редактори"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "статус редагування"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "статус спільного використання"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "налаштування"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Ваша анонімна мапа була приєднана до Вашого облікового запису %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Копія "
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "показувати при завантаженні"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Показати цей шар при завантаженні."
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Ви увійшли. Продовжимо …"
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Дозволи для мапи"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Щоб продовжити, виконайте вхід"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Ім’я користувача або пароль невірні. Спробуйте ще раз."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Ваша мапа готова! Якщо Ви хочете редагувати її на іншому комп’ютері, використовуйте це посилання: %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Вітаємо, Ваша мапа готова!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Мапа оновлена!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Редактори мапи успішно оновлені!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Лише власник мапи може вилучити її."
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Вітаємо, Ваша мапа скопійована!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Шар вилучено."
|
||||
|
|
|
@ -9,14 +9,13 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-08-11 00:35+0000\n"
|
||||
"Last-Translator: Thanh Le Viet <lethanhx2k@gmail.com>\n"
|
||||
"Language-Team: Vietnamese (http://www.transifex.com/projects/p/umap/language/"
|
||||
"vi/)\n"
|
||||
"Language: vi\n"
|
||||
"PO-Revision-Date: 2017-09-20 09:39+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Vietnamese (http://www.transifex.com/yohanboniface/umap/language/vi/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: vi\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -33,10 +32,8 @@ msgid "Type editors nick to add…"
|
|||
msgstr "Nhập nick thành viên để thêm vào..."
|
||||
|
||||
#: templates/leaflet_storage/map_detail.html:27
|
||||
#, fuzzy
|
||||
#| msgid "Type editors nick to add…"
|
||||
msgid "Type new owner nick…"
|
||||
msgstr "Nhập nick thành viên để thêm vào..."
|
||||
msgstr ""
|
||||
|
||||
#: templates/leaflet_storage/map_list.html:7 views.py:184
|
||||
msgid "by"
|
||||
|
@ -71,9 +68,7 @@ msgstr "Hãy chọn một nhà cung cấp"
|
|||
msgid ""
|
||||
"uMap let you create maps with <a href=\"%(osm_url)s\" />OpenStreetMap</a> "
|
||||
"layers in a minute and embed them in your site."
|
||||
msgstr ""
|
||||
"uMap cho phép bạn tạo bản đồ với các layer của <a href=\"%(osm_url)s\" /"
|
||||
">OpenStreetMap</a> trong vài phút và chèn nó vào trong website của bạn"
|
||||
msgstr "uMap cho phép bạn tạo bản đồ với các layer của <a href=\"%(osm_url)s\" />OpenStreetMap</a> trong vài phút và chèn nó vào trong website của bạn"
|
||||
|
||||
#: templates/umap/about_summary.html:11
|
||||
msgid "Choose the layers of your map"
|
||||
|
@ -89,9 +84,7 @@ msgstr "Quản lý màu và biểu tượng POI"
|
|||
|
||||
#: templates/umap/about_summary.html:14
|
||||
msgid "Manage map options: display a minimap, locate user on load…"
|
||||
msgstr ""
|
||||
"Quản lý thiết lập bản đồ: hiển thị bản đồ con, xác định vị trí người dùng "
|
||||
"khi tải bản đồ..."
|
||||
msgstr "Quản lý thiết lập bản đồ: hiển thị bản đồ con, xác định vị trí người dùng khi tải bản đồ..."
|
||||
|
||||
#: templates/umap/about_summary.html:15
|
||||
msgid "Batch import geostructured data (geojson, gpx, kml, osm...)"
|
||||
|
@ -122,14 +115,10 @@ msgstr "Xem thử demo"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
"Đây là một bản demo được dùng để kiểm tra và xuất bản thử. Nếu bạn cần một "
|
||||
"bản ổ định, hãy sử dụng <a href=\"%(stable_url)s\">%(stable_url)s</a>. Bạn "
|
||||
"cũng có thể chạy nó trên máy tính của mình vì nó là phần mềm <a href="
|
||||
"\"%(repo_url)s\">nguồn mở</a>"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr "Đây là một bản demo được dùng để kiểm tra và xuất bản thử. Nếu bạn cần một bản ổ định, hãy sử dụng <a href=\"%(stable_url)s\">%(stable_url)s</a>. Bạn cũng có thể chạy nó trên máy tính của mình vì nó là phần mềm <a href=\"%(repo_url)s\">nguồn mở</a>"
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
msgid "Map of the uMaps"
|
||||
|
@ -173,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -217,5 +206,182 @@ msgstr "Tìm"
|
|||
msgid "View the map"
|
||||
msgstr "Xem bản đồ"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "Thiết lập bản đồ"
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "Link chỉnh sửa bí mật là %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "Ai cũng có thể chỉnh sửa"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "Chỉ có thể sửa với liên kết chỉnh sửa bí mật"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "tên"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "Bản quyền không được đặt"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "chi tiết"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "Liên kết đến trang có chi tiết về bản quyền"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "Mẫu URL sử dụng định dạng tile của OSM"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "Thứ tự các titlelayer trong hộp chỉnh sửa"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "Chỉ chỉnh sửa bởi người có quyền"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "Chỉ người sở hữu có thể chỉnh sửa"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "mọi người"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "bất kì ai với liên kết"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "chỉ người có quyền"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "mô tả"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "trung tâm"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "thu phóng"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "xác định"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "Xác định người dùng khi tải trang?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "Chọn bản quyền cho bản đồ"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "bản quyền"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "nền"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "chủ nhân"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "người chỉnh sửa"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "trạng thái chỉnh sửa"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "chia sẻ trạng thái"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "thiết lập"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "Bản đồ chưa đặt tên của bản đã được đính kèm vào tài khoản của bạn %s"
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "Sao chép của"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "hiển thị khi tải trang"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "Hiển thị layer này khi tải trang"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "Bạn đã đăng nhập, Đang tiếp tục..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "Quyền hạn"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "Vui lòng đăng nhập để thực thi"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "Tên truy cập hoặc mật khẩu không đúng. Vui lòng thử lại."
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "Bản đồ của bạn đã được tạo! Nếu bạn muốn chỉnh sửa bản đồ từ máy tính khác, vui lòng sử dụng liên kết này %(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "Chúc mừng, bản đồ của bạn đã được tạo!"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "Bản đồ đã được cập nhật!"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "Bản đồ được cập nhật thành công!"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "Chỉ chủ nhân của bản đồ mới có quyền xóa."
|
||||
|
||||
#: views.py:335
|
||||
#, 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 "Bản đồ của bạn đã được sao chép. Nếu bạn muốn chỉnh sửa bản đồ từ máy tính khác, vui lòng sử dụng liên kết này %(anonymous_url)s"
|
||||
|
||||
#: views.py:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "Chúc mừng, bản đồ của bạn đã được sao chép!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "Đã xóa layer"
|
||||
|
|
|
@ -9,14 +9,13 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2014-06-23 01:07+0000\n"
|
||||
"Last-Translator: sun wei <sunwei.r@gmail.com>\n"
|
||||
"Language-Team: Chinese (http://www.transifex.com/projects/p/umap/language/"
|
||||
"zh/)\n"
|
||||
"Language: zh\n"
|
||||
"PO-Revision-Date: 2017-09-20 05:52+0000\n"
|
||||
"Last-Translator: yohanboniface <yohanboniface@free.fr>\n"
|
||||
"Language-Team: Chinese (http://www.transifex.com/yohanboniface/umap/language/zh/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: zh\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: templates/404.html:7
|
||||
|
@ -116,9 +115,9 @@ msgstr "试用示例"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"This is a demo instance, used for tests and pre-rolling releases. If you "
|
||||
"need a stable instance, please use <a href=\"%(stable_url)s\">"
|
||||
"%(stable_url)s</a>. You can also host your own instance, it's <a href="
|
||||
"\"%(repo_url)s\">open source</a>!"
|
||||
"need a stable instance, please use <a "
|
||||
"href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
|
||||
"instance, it's <a href=\"%(repo_url)s\">open source</a>!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/umap/home.html:17
|
||||
|
@ -163,8 +162,8 @@ msgstr ""
|
|||
|
||||
#: templates/umap/password_change.html:7
|
||||
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."
|
||||
"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:12
|
||||
|
@ -206,6 +205,3 @@ msgstr "搜索"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "浏览地图"
|
||||
|
||||
#~ msgid "Map settings"
|
||||
#~ msgstr "地图设置"
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#
|
||||
# Translators:
|
||||
# Supaplex <bejokeup@gmail.com>, 2014
|
||||
# Hsin-lin Cheng <lancetw@gmail.com>, 2014
|
||||
# Hsin-lin Cheng (lancetw) <lancetw@gmail.com>, 2014
|
||||
# Sean Young <assanges@icloud.com>, 2016
|
||||
# Yuan CHAO <yuanchao@gmail.com>, 2014
|
||||
msgid ""
|
||||
|
@ -12,7 +12,7 @@ msgstr ""
|
|||
"Project-Id-Version: uMap\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2016-09-09 21:37+0200\n"
|
||||
"PO-Revision-Date: 2016-12-04 11:18+0000\n"
|
||||
"PO-Revision-Date: 2017-09-23 20:04+0000\n"
|
||||
"Last-Translator: Sean Young <assanges@icloud.com>\n"
|
||||
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/yohanboniface/umap/language/zh_TW/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -208,3 +208,183 @@ msgstr "搜尋"
|
|||
#: views.py:190
|
||||
msgid "View the map"
|
||||
msgstr "檢視地圖"
|
||||
|
||||
#: forms.py:43
|
||||
#, python-format
|
||||
msgid "Secret edit link is %s"
|
||||
msgstr "不公開的私密編輯連結 %s"
|
||||
|
||||
#: forms.py:47 models.py:113
|
||||
msgid "Everyone can edit"
|
||||
msgstr "所有人皆可編輯"
|
||||
|
||||
#: forms.py:48
|
||||
msgid "Only editable with secret edit link"
|
||||
msgstr "僅能由私密連結編輯"
|
||||
|
||||
#: models.py:20
|
||||
msgid "name"
|
||||
msgstr "名稱"
|
||||
|
||||
#: models.py:42
|
||||
msgid "No licence set"
|
||||
msgstr "未指定授權條款"
|
||||
|
||||
#: models.py:51
|
||||
msgid "details"
|
||||
msgstr "詳情"
|
||||
|
||||
#: models.py:52
|
||||
msgid "Link to a page where the licence is detailed."
|
||||
msgstr "連結至授權條款說明網址"
|
||||
|
||||
#: models.py:66
|
||||
msgid "URL template using OSM tile format"
|
||||
msgstr "URL 樣板,使用 OSM 地圖磚格式"
|
||||
|
||||
#: models.py:74
|
||||
msgid "Order of the tilelayers in the edit box"
|
||||
msgstr "編輯方塊中地圖磚的圖層順序"
|
||||
|
||||
#: models.py:114
|
||||
msgid "Only editors can edit"
|
||||
msgstr "僅編輯群可編輯"
|
||||
|
||||
#: models.py:115
|
||||
msgid "Only owner can edit"
|
||||
msgstr "僅擁有者可編輯"
|
||||
|
||||
#: models.py:118
|
||||
msgid "everyone (public)"
|
||||
msgstr "所有人(公開)"
|
||||
|
||||
#: models.py:119
|
||||
msgid "anyone with link"
|
||||
msgstr "任何有連結的人"
|
||||
|
||||
#: models.py:120
|
||||
msgid "editors only"
|
||||
msgstr "只有編輯者允許"
|
||||
|
||||
#: models.py:123 models.py:257
|
||||
msgid "description"
|
||||
msgstr "描述"
|
||||
|
||||
#: models.py:124
|
||||
msgid "center"
|
||||
msgstr "中心"
|
||||
|
||||
#: models.py:125
|
||||
msgid "zoom"
|
||||
msgstr "縮放"
|
||||
|
||||
#: models.py:126
|
||||
msgid "locate"
|
||||
msgstr "定位"
|
||||
|
||||
#: models.py:126
|
||||
msgid "Locate user on load?"
|
||||
msgstr "載入時使用定位功能?"
|
||||
|
||||
#: models.py:129
|
||||
msgid "Choose the map licence."
|
||||
msgstr "選擇地圖授權"
|
||||
|
||||
#: models.py:130
|
||||
msgid "licence"
|
||||
msgstr "授權"
|
||||
|
||||
#: models.py:135
|
||||
msgid "background"
|
||||
msgstr "地圖背景"
|
||||
|
||||
#: models.py:136
|
||||
msgid "owner"
|
||||
msgstr "擁有者"
|
||||
|
||||
#: models.py:137
|
||||
msgid "editors"
|
||||
msgstr "編輯者"
|
||||
|
||||
#: models.py:138
|
||||
msgid "edit status"
|
||||
msgstr "編輯狀態"
|
||||
|
||||
#: models.py:139
|
||||
msgid "share status"
|
||||
msgstr "分享狀態"
|
||||
|
||||
#: models.py:140
|
||||
msgid "settings"
|
||||
msgstr "設定"
|
||||
|
||||
#: models.py:178
|
||||
#, python-format
|
||||
msgid "Your anonymous map has been attached to your account %s"
|
||||
msgstr "你的匿名地圖已經加入你的帳號 %s "
|
||||
|
||||
#: models.py:211
|
||||
msgid "Clone of"
|
||||
msgstr "複製"
|
||||
|
||||
#: models.py:262
|
||||
msgid "display on load"
|
||||
msgstr "載入時顯示"
|
||||
|
||||
#: models.py:263
|
||||
msgid "Display this layer on load."
|
||||
msgstr "載入此圖層時顯示"
|
||||
|
||||
#: templates/leaflet_storage/login_popup_end.html:2
|
||||
msgid "You are logged in. Continuing..."
|
||||
msgstr "您已登入,繼續中..."
|
||||
|
||||
#: templates/leaflet_storage/map_update_permissions.html:2
|
||||
msgid "Map permissions"
|
||||
msgstr "地圖權限"
|
||||
|
||||
#: templates/registration/login.html:2
|
||||
msgid "Please log in to proceed"
|
||||
msgstr "請先登入"
|
||||
|
||||
#: templates/registration/login.html:4
|
||||
msgid "Your username and password didn't match. Please try again."
|
||||
msgstr "使用者代號或密碼不正確,請重新輸入。"
|
||||
|
||||
#: views.py:232
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Your map has been created! If you want to edit this map from another "
|
||||
"computer, please use this link: %(anonymous_url)s"
|
||||
msgstr "您的地圖已建立完成!如果您想在不同的機器編輯這個地圖,請使用這個連結:%(anonymous_url)s"
|
||||
|
||||
#: views.py:237
|
||||
msgid "Congratulations, your map has been created!"
|
||||
msgstr "恭喜您的地圖已經新增完成"
|
||||
|
||||
#: views.py:264
|
||||
msgid "Map has been updated!"
|
||||
msgstr "地圖已經更新"
|
||||
|
||||
#: views.py:291
|
||||
msgid "Map editors updated with success!"
|
||||
msgstr "地圖編輯者更新完成"
|
||||
|
||||
#: views.py:306
|
||||
msgid "Only its owner can delete the map."
|
||||
msgstr "只有擁有者可以刪除此地圖"
|
||||
|
||||
#: views.py:335
|
||||
#, 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:340
|
||||
msgid "Congratulations, your map has been cloned!"
|
||||
msgstr "恭喜,您的地圖已被複製!"
|
||||
|
||||
#: views.py:526
|
||||
msgid "Layer successfully deleted."
|
||||
msgstr "圖層已刪除"
|
||||
|
|
28
umap/management/commands/anonymous_edit_url.py
Normal file
|
@ -0,0 +1,28 @@
|
|||
import sys
|
||||
|
||||
from django.core.management.base import BaseCommand
|
||||
from django.conf import settings
|
||||
|
||||
from umap.models import Map
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
help = ('Retrieve anonymous edit url of a map. '
|
||||
'Eg.: python manage.py anonymous_edit_url 1234')
|
||||
|
||||
def add_arguments(self, parser):
|
||||
parser.add_argument('pk', help='PK of the map to retrieve.')
|
||||
|
||||
def abort(self, msg):
|
||||
self.stderr.write(msg)
|
||||
sys.exit(1)
|
||||
|
||||
def handle(self, *args, **options):
|
||||
pk = options['pk']
|
||||
try:
|
||||
map_ = Map.objects.get(pk=pk)
|
||||
except Map.DoesNotExist:
|
||||
self.abort('Map with pk {} not found'.format(pk))
|
||||
if map_.owner:
|
||||
self.abort('Map is not anonymous (owner: {})'.format(map_.owner))
|
||||
print(settings.SITE_URL + map_.get_anonymous_edit_url())
|
40
umap/management/commands/generate_js_locale.py
Normal file
|
@ -0,0 +1,40 @@
|
|||
import io
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
from django.core.management.base import BaseCommand
|
||||
from django.conf import settings
|
||||
from django.contrib.staticfiles import finders
|
||||
from django.template.loader import render_to_string
|
||||
from django.utils.translation import to_locale
|
||||
|
||||
ROOT = Path(settings.PROJECT_DIR) / 'static/umap/locale/'
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
|
||||
def handle(self, *args, **options):
|
||||
self.verbosity = options['verbosity']
|
||||
for code, name in settings.LANGUAGES:
|
||||
code = to_locale(code)
|
||||
if self.verbosity > 0:
|
||||
print("Processing", name)
|
||||
path = ROOT / '{code}.json'.format(code=code)
|
||||
if not path.exists():
|
||||
print(path, 'doest not exist', 'Skipping')
|
||||
else:
|
||||
with path.open(encoding="utf-8") as f:
|
||||
if self.verbosity > 1:
|
||||
print("Found file", path)
|
||||
self.render(code, f.read())
|
||||
|
||||
def render(self, code, json):
|
||||
path = ROOT / '{code}.js'.format(code=code)
|
||||
with path.open("w", encoding="utf-8") as f:
|
||||
content = render_to_string('umap/locale.js', {
|
||||
"locale": json,
|
||||
"locale_code": code
|
||||
})
|
||||
if self.verbosity > 1:
|
||||
print("Exporting to", path)
|
||||
f.write(content)
|
|
@ -3,7 +3,7 @@ import os
|
|||
from django.core.files import File
|
||||
from django.core.management.base import BaseCommand
|
||||
|
||||
from leaflet_storage.models import Pictogram
|
||||
from umap.models import Pictogram
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
|
|
8
umap/managers.py
Normal file
|
@ -0,0 +1,8 @@
|
|||
from django.db.models import Manager
|
||||
|
||||
|
||||
class PublicManager(Manager):
|
||||
|
||||
def get_queryset(self):
|
||||
return super(PublicManager, self).get_queryset().filter(
|
||||
share_status=self.model.PUBLIC)
|
|
@ -1,29 +0,0 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.3 on 2016-11-26 16:02
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
def add_tilelayer(apps, *args):
|
||||
TileLayer = apps.get_model('leaflet_storage', 'TileLayer')
|
||||
if TileLayer.objects.count():
|
||||
return
|
||||
TileLayer(
|
||||
name='Positron',
|
||||
url_template=('https://cartodb-basemaps-{s}.global.ssl.fastly.net/'
|
||||
'light_all/{z}/{x}/{y}.png'),
|
||||
attribution=('© [[http://www.openstreetmap.org/copyright|'
|
||||
'OpenStreetMap]] contributors, © '
|
||||
'[[https://carto.com/attributions|CARTO]]')).save()
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('leaflet_storage', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(add_tilelayer),
|
||||
]
|
107
umap/migrations/0001_initial.py
Normal file
|
@ -0,0 +1,107 @@
|
|||
# Generated by Django 2.0.5 on 2018-05-19 09:27
|
||||
|
||||
from django.conf import settings
|
||||
import django.contrib.gis.db.models.fields
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import umap.fields
|
||||
import umap.models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='DataLayer',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=200, verbose_name='name')),
|
||||
('description', models.TextField(blank=True, null=True, verbose_name='description')),
|
||||
('geojson', models.FileField(blank=True, null=True, upload_to=umap.models.upload_to)),
|
||||
('display_on_load', models.BooleanField(default=False, help_text='Display this layer on load.', verbose_name='display on load')),
|
||||
('rank', models.SmallIntegerField(default=0)),
|
||||
],
|
||||
options={
|
||||
'ordering': ('rank',),
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Licence',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=200, verbose_name='name')),
|
||||
('details', models.URLField(help_text='Link to a page where the licence is detailed.', verbose_name='details')),
|
||||
],
|
||||
options={
|
||||
'ordering': ('name',),
|
||||
'abstract': False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Map',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=200, verbose_name='name')),
|
||||
('slug', models.SlugField()),
|
||||
('description', models.TextField(blank=True, null=True, verbose_name='description')),
|
||||
('center', django.contrib.gis.db.models.fields.PointField(geography=True, srid=4326, verbose_name='center')),
|
||||
('zoom', models.IntegerField(default=7, verbose_name='zoom')),
|
||||
('locate', models.BooleanField(default=False, help_text='Locate user on load?', verbose_name='locate')),
|
||||
('modified_at', models.DateTimeField(auto_now=True)),
|
||||
('edit_status', models.SmallIntegerField(choices=[(1, 'Everyone can edit'), (2, 'Only editors can edit'), (3, 'Only owner can edit')], default=3, verbose_name='edit status')),
|
||||
('share_status', models.SmallIntegerField(choices=[(1, 'everyone (public)'), (2, 'anyone with link'), (3, 'editors only')], default=1, verbose_name='share status')),
|
||||
('settings', umap.fields.DictField(blank=True, null=True, verbose_name='settings')),
|
||||
('editors', models.ManyToManyField(blank=True, to=settings.AUTH_USER_MODEL, verbose_name='editors')),
|
||||
('licence', models.ForeignKey(default=umap.models.get_default_licence, help_text='Choose the map licence.', on_delete=django.db.models.deletion.SET_DEFAULT, to='umap.Licence', verbose_name='licence')),
|
||||
('owner', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='owned_maps', to=settings.AUTH_USER_MODEL, verbose_name='owner')),
|
||||
],
|
||||
options={
|
||||
'ordering': ('name',),
|
||||
'abstract': False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Pictogram',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=200, verbose_name='name')),
|
||||
('attribution', models.CharField(max_length=300)),
|
||||
('pictogram', models.ImageField(upload_to='pictogram')),
|
||||
],
|
||||
options={
|
||||
'ordering': ('name',),
|
||||
'abstract': False,
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='TileLayer',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=200, verbose_name='name')),
|
||||
('url_template', models.CharField(help_text='URL template using OSM tile format', max_length=200)),
|
||||
('minZoom', models.IntegerField(default=0)),
|
||||
('maxZoom', models.IntegerField(default=18)),
|
||||
('attribution', models.CharField(max_length=300)),
|
||||
('rank', models.SmallIntegerField(blank=True, help_text='Order of the tilelayers in the edit box', null=True)),
|
||||
],
|
||||
options={
|
||||
'ordering': ('rank', 'name'),
|
||||
},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='map',
|
||||
name='tilelayer',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='maps', to='umap.TileLayer', verbose_name='background'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='datalayer',
|
||||
name='map',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='umap.Map'),
|
||||
),
|
||||
]
|
|
@ -1,25 +0,0 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.3 on 2016-11-26 16:11
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
def add_licence(apps, *args):
|
||||
Licence = apps.get_model('leaflet_storage', 'Licence')
|
||||
if Licence.objects.count():
|
||||
return
|
||||
Licence(
|
||||
name='ODbL',
|
||||
details='http://opendatacommons.org/licenses/odbl/').save()
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('umap', '0001_add_tilelayer'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(add_licence),
|
||||
]
|
18
umap/migrations/0002_tilelayer_tms.py
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 2.0.5 on 2018-05-19 09:27
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('umap', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='tilelayer',
|
||||
name='tms',
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
]
|
356
umap/models.py
Normal file
|
@ -0,0 +1,356 @@
|
|||
import os
|
||||
import time
|
||||
|
||||
from django.contrib.gis.db import models
|
||||
from django.conf import settings
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.core.signing import Signer
|
||||
from django.contrib import messages
|
||||
from django.template.defaultfilters import slugify
|
||||
from django.core.files.base import File
|
||||
|
||||
from .fields import DictField
|
||||
from .managers import PublicManager
|
||||
|
||||
|
||||
class NamedModel(models.Model):
|
||||
name = models.CharField(max_length=200, verbose_name=_("name"))
|
||||
|
||||
class Meta:
|
||||
abstract = True
|
||||
ordering = ('name', )
|
||||
|
||||
def __unicode__(self):
|
||||
return self.name
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
|
||||
def get_default_licence():
|
||||
"""
|
||||
Returns a default Licence, creates it if it doesn't exist.
|
||||
Needed to prevent a licence deletion from deleting all the linked
|
||||
maps.
|
||||
"""
|
||||
return Licence.objects.get_or_create(
|
||||
# can't use ugettext_lazy for database storage, see #13965
|
||||
name=getattr(settings, "UMAP_DEFAULT_LICENCE_NAME",
|
||||
'No licence set')
|
||||
)[0]
|
||||
|
||||
|
||||
class Licence(NamedModel):
|
||||
"""
|
||||
The licence one map is published on.
|
||||
"""
|
||||
details = models.URLField(
|
||||
verbose_name=_('details'),
|
||||
help_text=_('Link to a page where the licence is detailed.')
|
||||
)
|
||||
|
||||
@property
|
||||
def json(self):
|
||||
return {
|
||||
'name': self.name,
|
||||
'url': self.details
|
||||
}
|
||||
|
||||
|
||||
class TileLayer(NamedModel):
|
||||
url_template = models.CharField(
|
||||
max_length=200,
|
||||
help_text=_("URL template using OSM tile format")
|
||||
)
|
||||
minZoom = models.IntegerField(default=0)
|
||||
maxZoom = models.IntegerField(default=18)
|
||||
attribution = models.CharField(max_length=300)
|
||||
rank = models.SmallIntegerField(
|
||||
blank=True,
|
||||
null=True,
|
||||
help_text=_('Order of the tilelayers in the edit box')
|
||||
)
|
||||
# See https://wiki.openstreetmap.org/wiki/TMS#The_Y_coordinate
|
||||
tms = models.BooleanField(default=False)
|
||||
|
||||
@property
|
||||
def json(self):
|
||||
return dict((field.name, getattr(self, field.name))
|
||||
for field in self._meta.fields)
|
||||
|
||||
@classmethod
|
||||
def get_default(cls):
|
||||
"""
|
||||
Returns the default tile layer (used for a map when no layer is set).
|
||||
"""
|
||||
return cls.objects.order_by('rank')[0] # FIXME, make it administrable
|
||||
|
||||
@classmethod
|
||||
def get_list(cls, selected=None):
|
||||
l = []
|
||||
for t in cls.objects.all():
|
||||
fields = t.json
|
||||
if selected and selected.pk == t.pk:
|
||||
fields['selected'] = True
|
||||
l.append(fields)
|
||||
return l
|
||||
|
||||
class Meta:
|
||||
ordering = ('rank', 'name', )
|
||||
|
||||
|
||||
class Map(NamedModel):
|
||||
"""
|
||||
A single thematical map.
|
||||
"""
|
||||
ANONYMOUS = 1
|
||||
EDITORS = 2
|
||||
OWNER = 3
|
||||
PUBLIC = 1
|
||||
OPEN = 2
|
||||
PRIVATE = 3
|
||||
EDIT_STATUS = (
|
||||
(ANONYMOUS, _('Everyone can edit')),
|
||||
(EDITORS, _('Only editors can edit')),
|
||||
(OWNER, _('Only owner can edit')),
|
||||
)
|
||||
SHARE_STATUS = (
|
||||
(PUBLIC, _('everyone (public)')),
|
||||
(OPEN, _('anyone with link')),
|
||||
(PRIVATE, _('editors only')),
|
||||
)
|
||||
slug = models.SlugField(db_index=True)
|
||||
description = models.TextField(blank=True, null=True, verbose_name=_("description"))
|
||||
center = models.PointField(geography=True, verbose_name=_("center"))
|
||||
zoom = models.IntegerField(default=7, verbose_name=_("zoom"))
|
||||
locate = models.BooleanField(default=False, verbose_name=_("locate"), help_text=_("Locate user on load?"))
|
||||
licence = models.ForeignKey(
|
||||
Licence,
|
||||
help_text=_("Choose the map licence."),
|
||||
verbose_name=_('licence'),
|
||||
on_delete=models.SET_DEFAULT,
|
||||
default=get_default_licence
|
||||
)
|
||||
modified_at = models.DateTimeField(auto_now=True)
|
||||
tilelayer = models.ForeignKey(TileLayer, blank=True, null=True, related_name="maps", verbose_name=_("background"), on_delete=models.PROTECT)
|
||||
owner = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, related_name="owned_maps", verbose_name=_("owner"), on_delete=models.PROTECT)
|
||||
editors = models.ManyToManyField(settings.AUTH_USER_MODEL, blank=True, verbose_name=_("editors"))
|
||||
edit_status = models.SmallIntegerField(choices=EDIT_STATUS, default=OWNER, verbose_name=_("edit status"))
|
||||
share_status = models.SmallIntegerField(choices=SHARE_STATUS, default=PUBLIC, verbose_name=_("share status"))
|
||||
settings = DictField(blank=True, null=True, verbose_name=_("settings"))
|
||||
|
||||
objects = models.Manager()
|
||||
public = PublicManager()
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse("map", kwargs={'slug': self.slug or "map", 'pk': self.pk})
|
||||
|
||||
def get_anonymous_edit_url(self):
|
||||
signer = Signer()
|
||||
signature = signer.sign(self.pk)
|
||||
return reverse('map_anonymous_edit_url', kwargs={'signature': signature})
|
||||
|
||||
def is_anonymous_owner(self, request):
|
||||
if self.owner:
|
||||
# edit cookies are only valid while map hasn't owner
|
||||
return False
|
||||
key, value = self.signed_cookie_elements
|
||||
try:
|
||||
has_anonymous_cookie = int(request.get_signed_cookie(key, False)) == value
|
||||
except ValueError:
|
||||
has_anonymous_cookie = False
|
||||
return has_anonymous_cookie
|
||||
|
||||
def can_edit(self, user=None, request=None):
|
||||
"""
|
||||
Define if a user can edit or not the instance, according to his account
|
||||
or the request.
|
||||
"""
|
||||
can = False
|
||||
if request and not self.owner:
|
||||
if (getattr(settings, "UMAP_ALLOW_ANONYMOUS", False)
|
||||
and self.is_anonymous_owner(request)):
|
||||
can = True
|
||||
if user and user.is_authenticated:
|
||||
# TODO: only when using the anonymous-edit URL with an
|
||||
# authenticated user
|
||||
# if user is authenticated, attach as owner
|
||||
self.owner = user
|
||||
self.save()
|
||||
msg = _("Your anonymous map has been attached to your account %s" % user)
|
||||
messages.info(request, msg)
|
||||
if self.edit_status == self.ANONYMOUS:
|
||||
can = True
|
||||
elif not user.is_authenticated:
|
||||
pass
|
||||
elif user == self.owner:
|
||||
can = True
|
||||
elif self.edit_status == self.EDITORS and user in self.editors.all():
|
||||
can = True
|
||||
return can
|
||||
|
||||
def can_view(self, request):
|
||||
if self.owner is None:
|
||||
can = True
|
||||
elif self.share_status in [self.PUBLIC, self.OPEN]:
|
||||
can = True
|
||||
elif request.user == self.owner:
|
||||
can = True
|
||||
else:
|
||||
can = not (self.share_status == self.PRIVATE and request.user not in self.editors.all())
|
||||
return can
|
||||
|
||||
@property
|
||||
def signed_cookie_elements(self):
|
||||
return ('anonymous_owner|%s' % self.pk, self.pk)
|
||||
|
||||
def get_tilelayer(self):
|
||||
return self.tilelayer or TileLayer.get_default()
|
||||
|
||||
def clone(self, **kwargs):
|
||||
new = self.__class__.objects.get(pk=self.pk)
|
||||
new.pk = None
|
||||
new.name = u"%s %s" % (_("Clone of"), self.name)
|
||||
if "owner" in kwargs:
|
||||
# can be None in case of anonymous cloning
|
||||
new.owner = kwargs["owner"]
|
||||
new.save()
|
||||
for editor in self.editors.all():
|
||||
new.editors.add(editor)
|
||||
for datalayer in self.datalayer_set.all():
|
||||
datalayer.clone(map_inst=new)
|
||||
return new
|
||||
|
||||
|
||||
class Pictogram(NamedModel):
|
||||
"""
|
||||
An image added to an icon of the map.
|
||||
"""
|
||||
attribution = models.CharField(max_length=300)
|
||||
pictogram = models.ImageField(upload_to="pictogram")
|
||||
|
||||
@property
|
||||
def json(self):
|
||||
return {
|
||||
"id": self.pk,
|
||||
"attribution": self.attribution,
|
||||
"name": self.name,
|
||||
"src": self.pictogram.url
|
||||
}
|
||||
|
||||
|
||||
# Must be out of Datalayer for Django migration to run, because of python 2
|
||||
# serialize limitations.
|
||||
def upload_to(instance, filename):
|
||||
if instance.pk:
|
||||
return instance.upload_to()
|
||||
name = "%s.geojson" % slugify(instance.name)[:50] or "untitled"
|
||||
return os.path.join(instance.storage_root(), name)
|
||||
|
||||
|
||||
class DataLayer(NamedModel):
|
||||
"""
|
||||
Layer to store Features in.
|
||||
"""
|
||||
map = models.ForeignKey(Map, on_delete=models.CASCADE)
|
||||
description = models.TextField(
|
||||
blank=True,
|
||||
null=True,
|
||||
verbose_name=_("description")
|
||||
)
|
||||
geojson = models.FileField(upload_to=upload_to, blank=True, null=True)
|
||||
display_on_load = models.BooleanField(
|
||||
default=False,
|
||||
verbose_name=_("display on load"),
|
||||
help_text=_("Display this layer on load.")
|
||||
)
|
||||
rank = models.SmallIntegerField(default=0)
|
||||
|
||||
class Meta:
|
||||
ordering = ('rank',)
|
||||
|
||||
def save(self, force_insert=False, force_update=False, **kwargs):
|
||||
is_new = not bool(self.pk)
|
||||
super(DataLayer, self).save(force_insert, force_update, **kwargs)
|
||||
|
||||
if is_new:
|
||||
force_insert, force_update = False, True
|
||||
filename = self.upload_to()
|
||||
old_name = self.geojson.name
|
||||
new_name = self.geojson.storage.save(filename, self.geojson)
|
||||
self.geojson.storage.delete(old_name)
|
||||
self.geojson.name = new_name
|
||||
super(DataLayer, self).save(force_insert, force_update, **kwargs)
|
||||
self.purge_old_versions()
|
||||
|
||||
def upload_to(self):
|
||||
root = self.storage_root()
|
||||
name = '%s_%s.geojson' % (self.pk, int(time.time() * 1000))
|
||||
return os.path.join(root, name)
|
||||
|
||||
def storage_root(self):
|
||||
path = ["datalayer", str(self.map.pk)[-1]]
|
||||
if len(str(self.map.pk)) > 1:
|
||||
path.append(str(self.map.pk)[-2])
|
||||
path.append(str(self.map.pk))
|
||||
return os.path.join(*path)
|
||||
|
||||
@property
|
||||
def metadata(self):
|
||||
return {
|
||||
"name": self.name,
|
||||
"id": self.pk,
|
||||
"displayOnLoad": self.display_on_load
|
||||
}
|
||||
|
||||
def clone(self, map_inst=None):
|
||||
new = self.__class__.objects.get(pk=self.pk)
|
||||
new.pk = None
|
||||
if map_inst:
|
||||
new.map = map_inst
|
||||
new.geojson = File(new.geojson.file.file)
|
||||
new.save()
|
||||
return new
|
||||
|
||||
def is_valid_version(self, name):
|
||||
return name.startswith('%s_' % self.pk) and name.endswith('.geojson')
|
||||
|
||||
def version_metadata(self, name):
|
||||
els = name.split('.')[0].split('_')
|
||||
return {
|
||||
"name": name,
|
||||
"at": els[1],
|
||||
"size": self.geojson.storage.size(self.get_version_path(name))
|
||||
}
|
||||
|
||||
def get_versions(self):
|
||||
root = self.storage_root()
|
||||
names = self.geojson.storage.listdir(root)[1]
|
||||
names = [name for name in names if self.is_valid_version(name)]
|
||||
names.sort(reverse=True) # Recent first.
|
||||
return names
|
||||
|
||||
@property
|
||||
def versions(self):
|
||||
names = self.get_versions()
|
||||
return [self.version_metadata(name) for name in names]
|
||||
|
||||
def get_version(self, name):
|
||||
path = self.get_version_path(name)
|
||||
with self.geojson.storage.open(path, 'r') as f:
|
||||
return f.read()
|
||||
|
||||
def get_version_path(self, name):
|
||||
return '{root}/{name}'.format(root=self.storage_root(), name=name)
|
||||
|
||||
def purge_old_versions(self):
|
||||
root = self.storage_root()
|
||||
names = self.get_versions()[settings.UMAP_KEEP_VERSIONS:]
|
||||
for name in names:
|
||||
for ext in ['', '.gz']:
|
||||
path = os.path.join(root, name + ext)
|
||||
try:
|
||||
self.geojson.storage.delete(path)
|
||||
except FileNotFoundError:
|
||||
pass
|
|
@ -35,4 +35,14 @@ else:
|
|||
print('Loaded local config from', path)
|
||||
for key in dir(d):
|
||||
if key.isupper():
|
||||
globals()[key] = getattr(d, key)
|
||||
value = getattr(d, key)
|
||||
if key.startswith('LEAFLET_STORAGE'):
|
||||
# Retrocompat pre 1.0, remove me in 1.1.
|
||||
globals()['UMAP' + key[15:]] = value
|
||||
elif key == 'UMAP_CUSTOM_TEMPLATES':
|
||||
globals()['TEMPLATES'][0]['DIRS'].insert(0, value)
|
||||
elif key == 'UMAP_CUSTOM_STATICS':
|
||||
globals()['STATICFILES_DIRS'].insert(0, value)
|
||||
print(globals()['STATICFILES_DIRS'])
|
||||
else:
|
||||
globals()[key] = value
|
||||
|
|
|
@ -1,17 +1,31 @@
|
|||
# -*- coding:utf-8 -*-
|
||||
|
||||
"""Base settings shared by all environments"""
|
||||
# Import global settings to make it easier to extend settings.
|
||||
from django.conf.global_settings import * # pylint: disable=W0614,W0401
|
||||
from django.template.defaultfilters import slugify
|
||||
from django.conf.locale import LANG_INFO
|
||||
|
||||
#==============================================================================
|
||||
# =============================================================================
|
||||
# Generic Django project settings
|
||||
#==============================================================================
|
||||
# =============================================================================
|
||||
|
||||
DEBUG = True
|
||||
|
||||
SITE_ID = 1
|
||||
# Add languages we're missing from Django
|
||||
LANG_INFO.update({
|
||||
'am-et': {
|
||||
'bidi': False,
|
||||
'name': 'Amharic',
|
||||
'code': 'am-et',
|
||||
'name_local': 'አማርኛ'
|
||||
},
|
||||
'zh': {
|
||||
'bidi': False,
|
||||
'code': 'zh',
|
||||
'name': 'Chinese',
|
||||
'name_local': '简体中文',
|
||||
},
|
||||
})
|
||||
# Local time zone for this installation. Choices can be found here:
|
||||
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
|
||||
TIME_ZONE = 'UTC'
|
||||
|
@ -20,27 +34,32 @@ USE_I18N = True
|
|||
USE_L10N = True
|
||||
LANGUAGE_CODE = 'en'
|
||||
LANGUAGES = (
|
||||
('am-et', 'Amharic'),
|
||||
('bg', 'Bulgarian'),
|
||||
('ca', 'Catalan'),
|
||||
('cs-cz', 'Czech'),
|
||||
('da', 'Danish'),
|
||||
('de', 'Deutsch'),
|
||||
('el', 'Greek'),
|
||||
('en', 'English'),
|
||||
('fr', u'Francais'),
|
||||
('it', u'Italiano'),
|
||||
('pt', u'Portuguese'),
|
||||
('nl', u'Dutch'),
|
||||
('es', u'Español'),
|
||||
('fi', u'Finnish'),
|
||||
('de', u'Deutsch'),
|
||||
('da', u'Danish'),
|
||||
('ja', u'Japanese'),
|
||||
('lt', u'Lithuanian'),
|
||||
('cs-cz', u'Czech'),
|
||||
('ca', u'Catalan'),
|
||||
('zh', u'Chinese'),
|
||||
('zh-tw', u'Chinese'),
|
||||
('ru', u'Russian'),
|
||||
('bg', u'Bulgarian'),
|
||||
('vi', u'Vietnamese'),
|
||||
('uk-ua', u'Ukrainian'),
|
||||
('am-et', u'Amharic'),
|
||||
('es', 'Español'),
|
||||
('fi', 'Finnish'),
|
||||
('fr', 'Francais'),
|
||||
('hr', 'Croatian'),
|
||||
('hu', 'Hungarian'),
|
||||
('it', 'Italiano'),
|
||||
('ja', 'Japanese'),
|
||||
('lt', 'Lithuanian'),
|
||||
('nl', 'Dutch'),
|
||||
('pl', 'Polish'),
|
||||
('pt', 'Portuguese'),
|
||||
('ru', 'Russian'),
|
||||
('sk-sk', 'Slovak'),
|
||||
('sl', 'Slovenian'),
|
||||
('uk-ua', 'Ukrainian'),
|
||||
('vi', 'Vietnamese'),
|
||||
('zh', 'Chinese'),
|
||||
('zh-tw', 'Chinese'),
|
||||
)
|
||||
|
||||
# Make this unique, and don't share it with anybody.
|
||||
|
@ -56,10 +75,10 @@ INSTALLED_APPS = (
|
|||
'django.contrib.admin',
|
||||
'django.contrib.gis',
|
||||
|
||||
'leaflet_storage',
|
||||
'umap',
|
||||
'compressor',
|
||||
'social_django',
|
||||
'agnocomplete',
|
||||
)
|
||||
|
||||
# =============================================================================
|
||||
|
@ -88,14 +107,8 @@ MEDIA_URL = '/uploads/'
|
|||
STATIC_ROOT = os.path.join('static')
|
||||
MEDIA_ROOT = os.path.join('uploads')
|
||||
|
||||
|
||||
STATICFILES_DIRS = (
|
||||
os.path.join(PROJECT_DIR, 'static'),
|
||||
)
|
||||
|
||||
STATICFILES_FINDERS = [
|
||||
'compressor.finders.CompressorFinder',
|
||||
# 'npm.finders.NpmFinder',
|
||||
] + STATICFILES_FINDERS
|
||||
|
||||
# =============================================================================
|
||||
|
@ -132,7 +145,7 @@ TEMPLATES = [
|
|||
# Middleware
|
||||
# =============================================================================
|
||||
|
||||
MIDDLEWARE_CLASSES = (
|
||||
MIDDLEWARE = (
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.middleware.locale.LocaleMiddleware',
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
|
@ -141,30 +154,28 @@ MIDDLEWARE_CLASSES = (
|
|||
'django.contrib.messages.middleware.MessageMiddleware',
|
||||
)
|
||||
|
||||
|
||||
# =============================================================================
|
||||
# Auth / security
|
||||
# =============================================================================
|
||||
|
||||
ENABLE_ACCOUNT_LOGIN = False
|
||||
AUTHENTICATION_BACKENDS += (
|
||||
)
|
||||
|
||||
# =============================================================================
|
||||
# Miscellaneous project settings
|
||||
# =============================================================================
|
||||
LEAFLET_STORAGE_ALLOW_ANONYMOUS = False
|
||||
LEAFLET_STORAGE_EXTRA_URLS = {
|
||||
UMAP_ALLOW_ANONYMOUS = False
|
||||
UMAP_EXTRA_URLS = {
|
||||
'routing': 'http://www.openstreetmap.org/directions?engine=osrm_car&route={lat},{lng}&locale={locale}#map={zoom}/{lat}/{lng}', # noqa
|
||||
'ajax_proxy': '/ajax-proxy/?url={url}'
|
||||
}
|
||||
LEAFLET_STORAGE_KEEP_VERSIONS = 10
|
||||
UMAP_KEEP_VERSIONS = 10
|
||||
SITE_URL = "http://umap.org"
|
||||
SITE_NAME = 'uMap'
|
||||
UMAP_DEMO_SITE = False
|
||||
UMAP_EXCLUDE_DEFAULT_MAPS = False
|
||||
UMAP_MAPS_PER_PAGE = 5
|
||||
UMAP_MAPS_PER_PAGE_OWNER = 10
|
||||
MAP_SHORT_URL_NAME = "umap_short_url"
|
||||
UMAP_USE_UNACCENT = False
|
||||
UMAP_FEEDBACK_LINK = "https://wiki.openstreetmap.org/wiki/UMap#Feedback_and_help" # noqa
|
||||
USER_MAPS_URL = 'user_maps'
|
||||
|
|
|
@ -69,7 +69,7 @@ SOCIAL_AUTH_BACKEND_ERROR_URL = "/"
|
|||
UMAP_DEMO_SITE = True
|
||||
|
||||
# Whether to allow non authenticated people to create maps.
|
||||
LEAFLET_STORAGE_ALLOW_ANONYMOUS = True
|
||||
UMAP_ALLOW_ANONYMOUS = True
|
||||
|
||||
# This setting will exclude empty maps (in fact, it will exclude all maps where
|
||||
# the default center has not been updated)
|
||||
|
@ -110,4 +110,4 @@ LEAFLET_LATITUDE = 51
|
|||
LEAFLET_ZOOM = 6
|
||||
|
||||
# Number of old version to keep per datalayer.
|
||||
LEAFLET_STORAGE_KEEP_VERSIONS = 10
|
||||
UMAP_KEEP_VERSIONS = 10
|
||||
|
|
813
umap/static/umap/base.css
Normal file
|
@ -0,0 +1,813 @@
|
|||
/*
|
||||
* Generic
|
||||
*/
|
||||
body, div, ul, ol, li, a, section, nav,
|
||||
h1, h2, h3, h4, h5, h6, label,
|
||||
hr, input, textarea {
|
||||
-moz-box-sizing:border-box;
|
||||
-webkit-box-sizing:border-box;
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: "fira_sans", -apple-system, BlinkMacSystemFont,
|
||||
"Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
|
||||
"Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
||||
}
|
||||
body, div, ul, ol, li, a, section, nav,
|
||||
h1, h2, h3, h4, h5, h6, label, hr {
|
||||
padding: 0;
|
||||
}
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: SeaGreen;
|
||||
}
|
||||
hr {
|
||||
clear: both;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
max-width: 980px;
|
||||
margin: 28px auto;
|
||||
-moz-border-bottom-colors: none;
|
||||
-moz-border-left-colors: none;
|
||||
-moz-border-right-colors: none;
|
||||
-moz-border-top-colors: none;
|
||||
border-color: #ddd;
|
||||
border-image: none;
|
||||
border-style: solid;
|
||||
border-width: 1px 0 0;
|
||||
}
|
||||
h1, h2 {
|
||||
margin-bottom: 28px;
|
||||
}
|
||||
h3, h4, h5 {
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
p {
|
||||
line-height: 21px;
|
||||
margin-top: 14px;
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
|
||||
/*
|
||||
* List
|
||||
*/
|
||||
ul {
|
||||
list-style-image:none;
|
||||
list-style-position:inside;
|
||||
list-style-type:none;
|
||||
}
|
||||
|
||||
/* ************************************************* */
|
||||
/* *********************** GRID ******************** */
|
||||
/* ************************************************* */
|
||||
.wrapper {
|
||||
width: 100%;
|
||||
clear: both;
|
||||
}
|
||||
.wrapper:after {
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
font-size: 0;
|
||||
content: " ";
|
||||
clear: both;
|
||||
height: 0;
|
||||
}
|
||||
.row {
|
||||
width: 100%;
|
||||
max-width: 1200px;
|
||||
clear: both;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-top: 0;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
.col {
|
||||
float: left;
|
||||
}
|
||||
.right {
|
||||
float: right;
|
||||
}
|
||||
.col + .col {
|
||||
padding-left: 20px;
|
||||
}
|
||||
.half {
|
||||
width: 50%;
|
||||
}
|
||||
.third {
|
||||
width: 33.33%;
|
||||
}
|
||||
.two-third {
|
||||
width: 66.66%
|
||||
}
|
||||
.quarter {
|
||||
width: 25%;
|
||||
}
|
||||
.wide {
|
||||
width: 100%;
|
||||
}
|
||||
.col + .wide {
|
||||
padding-left: inherit;
|
||||
}
|
||||
.mshow, .tshow {
|
||||
display: none;
|
||||
}
|
||||
.center {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
float: none;
|
||||
}
|
||||
|
||||
|
||||
/* *********** */
|
||||
/* forms */
|
||||
/* *********** */
|
||||
input[type="text"], input[type="password"], input[type="date"],
|
||||
input[type="datetime"], input[type="email"], input[type="number"],
|
||||
input[type="search"], input[type="tel"], input[type="time"],
|
||||
input[type="url"], textarea {
|
||||
background-color: white;
|
||||
border: 1px solid #CCCCCC;
|
||||
border-radius: 2px 2px 2px 2px;
|
||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
|
||||
color: rgba(0, 0, 0, 0.75);
|
||||
display: block;
|
||||
font-family: inherit;
|
||||
font-size: 14px;
|
||||
height: 32px;
|
||||
margin: 0 0 14px;
|
||||
padding: 7px;
|
||||
width: 100%;
|
||||
}
|
||||
input[type="range"] {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 5px;
|
||||
width: 100%;
|
||||
}
|
||||
input[type="checkbox"] {
|
||||
margin: 0 5px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
textarea {
|
||||
height: inherit;
|
||||
padding: 7px;
|
||||
}
|
||||
select {
|
||||
width: 100%;
|
||||
height: 28px;
|
||||
line-height: 28px;
|
||||
color: #efefef;
|
||||
border: 1px solid #222;
|
||||
background-color: #393F3F;
|
||||
margin-top: 5px;
|
||||
}
|
||||
select[multiple="multiple"] {
|
||||
height: auto;
|
||||
}
|
||||
.button, input[type="submit"] {
|
||||
display: block;
|
||||
margin-bottom: 14px;
|
||||
text-align: center;
|
||||
border-radius: 2px;
|
||||
font-weight: normal;
|
||||
cursor: pointer;
|
||||
padding: 7px;
|
||||
width: 100%;
|
||||
min-height: 32px;
|
||||
line-height: 32px;
|
||||
border: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
.dark .button {
|
||||
background-color: #2a2e30;
|
||||
color: #eeeeec;
|
||||
border: 1px solid #1b1f20;
|
||||
}
|
||||
.dark .button:hover, .dark input[type="submit"]:hover {
|
||||
background-color: #2e3436;
|
||||
}
|
||||
.help-text, .helptext {
|
||||
display: block;
|
||||
padding: 7px 7px;
|
||||
margin-bottom: 14px;
|
||||
background: #393F3F;
|
||||
color: #ddd;
|
||||
font-size: 10px;
|
||||
border-radius: 0 2px;
|
||||
}
|
||||
input + .help-text {
|
||||
margin-top: -14px;
|
||||
}
|
||||
.formbox {
|
||||
min-height: 36px;
|
||||
line-height: 28px;
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
.formbox.with-switch {
|
||||
padding-top: 2px;
|
||||
}
|
||||
.formbox select {
|
||||
width: calc(100% - 14px);
|
||||
}
|
||||
label {
|
||||
display: block;
|
||||
font-size: 12px;
|
||||
line-height: 21px;
|
||||
width: 100%;
|
||||
}
|
||||
input[type="checkbox"] + label {
|
||||
display: inline;
|
||||
padding: 0 14px;
|
||||
}
|
||||
select + .error,
|
||||
input + .error {
|
||||
display: block;
|
||||
padding: 7px 7px;
|
||||
margin-top: -14px;
|
||||
margin-bottom: 14px;
|
||||
background: #ddd;
|
||||
color: #fff;
|
||||
background-color: #cc0000;
|
||||
font-size: 11px;
|
||||
border-radius: 0 2px;
|
||||
}
|
||||
input[type="file"] + .error {
|
||||
margin-top: 0;
|
||||
}
|
||||
.fieldset {
|
||||
border: 1px solid #222;
|
||||
margin-bottom: 5px;
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
}
|
||||
.fieldset .fields {
|
||||
visibility: hidden;
|
||||
opacity: 0;
|
||||
transition: visibility 0s, opacity 0.5s linear;
|
||||
height: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
.fieldset.toggle.on .fields {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
height: initial;
|
||||
padding: 10px;
|
||||
}
|
||||
.fieldset.toggle .legend {
|
||||
text-align: center;
|
||||
display: block;
|
||||
cursor: pointer;
|
||||
background-color: #232729;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
color: #fff;
|
||||
margin: 0;
|
||||
font-family: fira_sans;
|
||||
font-weight: normal;
|
||||
font-size: 1.2em;
|
||||
padding: 0 5px;
|
||||
}
|
||||
/* Switch */
|
||||
input.switch:empty {
|
||||
display: none;
|
||||
}
|
||||
input.switch:empty ~ label {
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
float: left;
|
||||
line-height: 2em;
|
||||
height: 2em;
|
||||
text-indent: 6em;
|
||||
margin: 0.2em 0;
|
||||
cursor: pointer;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
text-shadow: 0 1px rgba(0, 0, 0, 0.1);
|
||||
width: 80px;
|
||||
}
|
||||
input.switch:empty ~ label:before,
|
||||
input.switch:empty ~ label:after {
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
content: ' ';
|
||||
width: 6em;
|
||||
-webkit-transition: all 100ms ease-in;
|
||||
transition: all 100ms ease-in;
|
||||
color: #c9c9c7;
|
||||
font-weight: bold;
|
||||
background-color: #ededed;
|
||||
}
|
||||
.dark input.switch:empty ~ label:before,
|
||||
.dark input.switch:empty ~ label:after {
|
||||
background-color: #272c2e;
|
||||
}
|
||||
input.switch:empty ~ label:after {
|
||||
width: 3em;
|
||||
margin-left: 0.1em;
|
||||
background-color: #ededed;
|
||||
content: "OFF";
|
||||
text-indent: 3.5em;
|
||||
border: 1px solid #374E75;
|
||||
font-weight: bold;
|
||||
}
|
||||
.dark input.switch:empty ~ label:after {
|
||||
border: 1px solid #202425;
|
||||
background-color: #2c3233;
|
||||
}
|
||||
input.switch:checked:empty ~ label:after {
|
||||
content: ' ';
|
||||
}
|
||||
.dark input.switch:checked ~ label:before,
|
||||
input.switch:checked ~ label:before {
|
||||
background-color: #215d9c;
|
||||
content: "ON";
|
||||
text-indent: 0.7em;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
}
|
||||
input.switch:checked ~ label:after {
|
||||
margin-left: 3em;
|
||||
}
|
||||
.button-bar {
|
||||
margin-top: 5px;
|
||||
text-align: center;
|
||||
display: grid;
|
||||
grid-gap: 7px;
|
||||
width: 100%
|
||||
}
|
||||
.button-bar.half {
|
||||
grid-template-columns: 1fr 1fr;
|
||||
}
|
||||
.button-bar.third {
|
||||
grid-template-columns: 1fr 1fr 1fr;
|
||||
}
|
||||
.button-bar .button {
|
||||
display: inline-block;
|
||||
}
|
||||
.umap-multiplechoice input[type='radio'] {
|
||||
display: none;
|
||||
}
|
||||
.umap-multiplechoice label {
|
||||
border: 1px solid #374E75;
|
||||
cursor: pointer;
|
||||
background-color: #c9c9c7;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
text-align: center;
|
||||
width: calc(100% / 3);
|
||||
display: inline-block;
|
||||
}
|
||||
.umap-multiplechoice.by4 label {
|
||||
width: calc(100% / 4);
|
||||
}
|
||||
.dark .umap-multiplechoice label {
|
||||
border: 1px solid black;
|
||||
background-color: #2c3233;
|
||||
}
|
||||
.umap-multiplechoice input[type='radio']:checked + label {
|
||||
background-color: #215d9c;
|
||||
box-shadow: inset 0 0 6px 0px #2c3233;
|
||||
color: #ededed;
|
||||
}
|
||||
.inheritable .header,
|
||||
.inheritable {
|
||||
clear: both;
|
||||
overflow: hidden;
|
||||
}
|
||||
.inheritable .header {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
.inheritable .header label {
|
||||
padding-top: 6px;
|
||||
}
|
||||
.inheritable + .inheritable {
|
||||
border-top: 1px solid #222;
|
||||
padding-top: 5px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
.inheritable .define,
|
||||
.inheritable .undefine {
|
||||
float: right;
|
||||
width: initial;
|
||||
min-height: 18px;
|
||||
line-height: 18px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.inheritable .quick-actions {
|
||||
float: right;
|
||||
}
|
||||
.inheritable .quick-actions .formbox {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.inheritable .quick-actions input {
|
||||
width: 100px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.inheritable .define,
|
||||
.inheritable.undefined .undefine,
|
||||
.inheritable.undefined .show-on-defined {
|
||||
display: none;
|
||||
}
|
||||
.inheritable.undefined .define {
|
||||
display: block;
|
||||
}
|
||||
i.info {
|
||||
background-repeat: no-repeat;
|
||||
background-image: url('./img/16.png');
|
||||
background-position: -170px -50px;
|
||||
display: inline-block;
|
||||
margin-left: 5px;
|
||||
vertical-align: middle;
|
||||
width: 16px;
|
||||
height: 18px;
|
||||
}
|
||||
.dark i.info {
|
||||
background-image: url('./img/16-white.png');
|
||||
}
|
||||
.with-transition {
|
||||
/*transition: top .7s, right .7s, left .7s, width .7s, visibility .7s;*/
|
||||
transition: all .7s;
|
||||
}
|
||||
|
||||
.umap-delete:before, .umap-empty:before, .umap-to-polygon:before,
|
||||
.umap-clone:before, .umap-edit:before, .umap-download:before,
|
||||
.umap-to-polyline:before {
|
||||
background-repeat: no-repeat;
|
||||
text-indent: 38px;
|
||||
height: 24px;
|
||||
line-height: 24px;
|
||||
display: inline-block;
|
||||
background-image: url('./img/24.png');
|
||||
vertical-align: bottom;
|
||||
content: " ";
|
||||
}
|
||||
.dark .umap-delete:before, .dark .umap-empty:before,
|
||||
.dark .umap-to-polygon:before,
|
||||
.dark .umap-clone:before,
|
||||
.dark .umap-edit:before, .dark .umap-download:before,
|
||||
.dark .umap-to-polyline:before {
|
||||
background-image: url('./img/24-white.png');
|
||||
vertical-align: middle;
|
||||
}
|
||||
.umap-to-polygon:before {
|
||||
background-position: -80px -48px;
|
||||
}
|
||||
.umap-to-polyline:before {
|
||||
background-position: -120px -48px;
|
||||
}
|
||||
.umap-clone:before {
|
||||
background-position: -160px -88px;
|
||||
}
|
||||
.umap-delete:before {
|
||||
background-position: -40px -8px;
|
||||
}
|
||||
.umap-edit:before {
|
||||
background-position: -6px -6px;
|
||||
}
|
||||
.umap-empty:before {
|
||||
background-position: -160px -126px;
|
||||
}
|
||||
.umap-download:before {
|
||||
background-position: -88px -168px;
|
||||
}
|
||||
.umap-edit-actions {
|
||||
padding-top: 5px;
|
||||
clear: both;
|
||||
}
|
||||
.umap-edit-actions li {
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
cursor: pointer;
|
||||
margin-bottom: 5px;
|
||||
border-radius: 2px;
|
||||
border: 1px solid #222;
|
||||
}
|
||||
.umap-edit-actions li i {
|
||||
background-image: url('./img/24-white.png');
|
||||
background-repeat: no-repeat;
|
||||
display: table-cell;
|
||||
width: 36px;
|
||||
height: 36px;
|
||||
}
|
||||
.umap-edit-actions li span {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.umap-edit-actions li:hover {
|
||||
background-color: #353c3e;
|
||||
}
|
||||
.umap-form-iconfield {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
padding-bottom: 5px;
|
||||
padding-top: 5px;
|
||||
line-height: 30px;
|
||||
}
|
||||
.umap-icon-list, .umap-pictogram-list {
|
||||
clear: both;
|
||||
}
|
||||
.umap-icon-choice {
|
||||
display: block;
|
||||
float: left;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
background-image: url('./img/icon-bg.png');
|
||||
text-align: center;
|
||||
box-shadow: 0 0 4px 0 black inset;
|
||||
margin-bottom: 5px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.umap-icon-choice img {
|
||||
vertical-align: middle;
|
||||
max-width: 24px;
|
||||
}
|
||||
.umap-icon-choice:hover,
|
||||
.umap-icon-choice.selected,
|
||||
.umap-color-picker span:hover {
|
||||
box-shadow: 0 0 4px 0 black;
|
||||
}
|
||||
.umap-icon-choice .leaflet-marker-icon {
|
||||
bottom: 0;
|
||||
left: 30px;
|
||||
position: absolute;
|
||||
}
|
||||
.umap-color-picker {
|
||||
clear: both;
|
||||
margin-bottom: 20px;
|
||||
overflow: hidden;
|
||||
display: none;
|
||||
}
|
||||
.umap-color-picker span {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
display: block;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
float: left;
|
||||
}
|
||||
|
||||
|
||||
/* *********** */
|
||||
/* Panel */
|
||||
/* *********** */
|
||||
.leaflet-ui-container {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
#umap-ui-container {
|
||||
width: 400px;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
right: -400px;
|
||||
padding: 0 20px 40px 20px;
|
||||
border-left: 1px solid #ddd;
|
||||
overflow-x: auto;
|
||||
z-index: 1010;
|
||||
background-color: #fff;
|
||||
opacity: 0.98;
|
||||
cursor: initial;
|
||||
}
|
||||
#umap-ui-container.dark {
|
||||
border-left: 1px solid #222;
|
||||
background-color: #323737;
|
||||
color: #efefef;
|
||||
}
|
||||
#umap-ui-container.fullwidth {
|
||||
width: 100%;
|
||||
z-index: 10000;
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
transition: all .7s;
|
||||
}
|
||||
.umap-edit-enabled #umap-ui-container {
|
||||
top: 46px;
|
||||
}
|
||||
.umap-caption-bar-enabled #umap-ui-container {
|
||||
bottom: 46px;
|
||||
}
|
||||
.umap-ui #umap-ui-container {
|
||||
right: 0;
|
||||
}
|
||||
.leaflet-top,
|
||||
.leaflet-right {
|
||||
transition: all .7s;
|
||||
}
|
||||
.umap-ui .leaflet-right {
|
||||
right: 400px;
|
||||
}
|
||||
#umap-ui-container,
|
||||
#umap-alert-container,
|
||||
#umap-tooltip-container {
|
||||
-moz-box-sizing:border-box;
|
||||
-webkit-box-sizing:border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
#umap-ui-container .umap-popup-content img {
|
||||
/* See https://github.com/Leaflet/Leaflet/commit/61d746818b99d362108545c151a27f09d60960ee#commitcomment-6061847 */
|
||||
max-width: 99% !important;
|
||||
}
|
||||
#umap-ui-container .umap-popup-content {
|
||||
max-height: inherit;
|
||||
}
|
||||
#umap-ui-container .body {
|
||||
clear: both;
|
||||
height: calc(100% - 46px); /* Minus size of toolbox */
|
||||
}
|
||||
#umap-ui-container .toolbox {
|
||||
padding: 5px 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
#umap-ui-container .toolbox li {
|
||||
color: #2e3436;
|
||||
line-height: 32px;
|
||||
cursor: pointer;
|
||||
float: right;
|
||||
display: inline;
|
||||
padding: 0 7px;
|
||||
border: 1px solid #b6b6b3;
|
||||
border-radius: 2px;
|
||||
}
|
||||
#umap-ui-container.dark .toolbox li {
|
||||
color: #d3dfeb;
|
||||
border: 1px solid #202425;
|
||||
}
|
||||
#umap-ui-container .toolbox li:hover {
|
||||
color: #2e3436;
|
||||
background-color: #d4d4d2;
|
||||
}
|
||||
#umap-ui-container.dark .toolbox li:hover {
|
||||
color: #eeeeec;
|
||||
background-color: #353c3e;
|
||||
}
|
||||
#umap-ui-container .toolbox li + li {
|
||||
margin-right: 5px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
.dark input, .dark textarea {
|
||||
background-color: #232729;
|
||||
border-color: #1b1f20;
|
||||
/*box-shadow: inset 0 0 0 1px #215d9c;*/
|
||||
color: #efefef;
|
||||
}
|
||||
|
||||
/* *********** */
|
||||
/* Alerts */
|
||||
/* *********** */
|
||||
#umap-alert-container {
|
||||
min-height: 46px;
|
||||
line-height: 46px;
|
||||
padding-left: 10px;
|
||||
width: calc(100% - 500px);
|
||||
position: absolute;
|
||||
top: -46px;
|
||||
left: 250px; /* Keep save/cancel button accessible. */
|
||||
right: 250px;
|
||||
box-shadow: 0 1px 7px #999999;
|
||||
visibility: hidden;
|
||||
background: none repeat scroll 0 0 rgba(20, 22, 23, 0.8);
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
font-size: 0.8em;
|
||||
z-index: 1002;
|
||||
border-radius: 2px;
|
||||
}
|
||||
#umap-alert-container.error {
|
||||
background-color: #c60f13;
|
||||
}
|
||||
.umap-alert #umap-alert-container {
|
||||
visibility: visible;
|
||||
top: 23px;
|
||||
}
|
||||
.umap-alert .umap-action {
|
||||
margin-left: 10px;
|
||||
background-color: #fff;
|
||||
color: #999;
|
||||
padding: 5px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.umap-alert .umap-action:hover {
|
||||
color: #000;
|
||||
}
|
||||
.umap-alert .error .umap-action {
|
||||
background-color: #666;
|
||||
color: #eee;
|
||||
}
|
||||
.umap-alert .error .umap-action:hover {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/* *********** */
|
||||
/* Tooltip */
|
||||
/* *********** */
|
||||
#umap-tooltip-container {
|
||||
line-height: 20px;
|
||||
padding: 5px 10px;
|
||||
width: auto;
|
||||
position: absolute;
|
||||
box-shadow: 0 1px 7px #999999;
|
||||
display: none;
|
||||
background-color: rgba(40, 40, 40, 0.8);
|
||||
color: #eeeeec;
|
||||
font-size: 0.8em;
|
||||
border-radius: 2px;
|
||||
z-index: 1004;
|
||||
font-weight: normal;
|
||||
max-width: 300px;
|
||||
}
|
||||
.umap-tooltip #umap-tooltip-container {
|
||||
display: block;
|
||||
}
|
||||
#umap-tooltip-container.tooltip-top:after {
|
||||
top: 100%;
|
||||
left: calc(50% - 11px);
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
border-top-color: rgba(30, 30, 30, 0.8);
|
||||
border-width: 11px;
|
||||
margin-left: calc(-50% + 21px);
|
||||
}
|
||||
#umap-tooltip-container.tooltip.tooltip-left:after {
|
||||
left: 100%;
|
||||
top: 50%;
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
border-color: rgba(136, 183, 213, 0);
|
||||
border-left-color: #333;
|
||||
border-width: 11px;
|
||||
margin-top: -10px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* *********** */
|
||||
/* Close link */
|
||||
/* *********** */
|
||||
.umap-close-icon {
|
||||
background-repeat: no-repeat;
|
||||
background-image: url('./img/16.png');
|
||||
background-position: -52px -13px;
|
||||
display: inline;
|
||||
padding: 0 10px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.dark .umap-close-icon {
|
||||
background-image: url('./img/16-white.png');
|
||||
}
|
||||
.dark .umap-close-link {
|
||||
border: 1px solid #202425;
|
||||
color: #eeeeec;
|
||||
padding: 0 7px;
|
||||
line-height: 32px;
|
||||
background-color: #323737;
|
||||
}
|
||||
.dark .umap-close-link:hover {
|
||||
background-color: #2e3436;
|
||||
}
|
||||
.umap-alert .umap-close-link {
|
||||
color: #fff;
|
||||
float: right;
|
||||
padding-right: 10px;
|
||||
}
|
||||
.umap-alert .umap-close-icon {
|
||||
background-position: -128px -90px;
|
||||
}
|
||||
|
||||
|
||||
/* *********** */
|
||||
/* Mobile */
|
||||
/* *********** */
|
||||
@media all and (orientation:portrait) {
|
||||
.umap-ui #umap-ui-container {
|
||||
height: 50%;
|
||||
max-height: 400px;
|
||||
width: 100%;
|
||||
top: inherit!important;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
}
|
||||
.umap-ui .leaflet-right {
|
||||
right: 0;
|
||||
}
|
||||
#umap-alert-container {
|
||||
width: 100%;
|
||||
left: 0;
|
||||
right: 0;
|
||||
}
|
||||
}
|
|
@ -1,164 +1,6 @@
|
|||
/* ************************************************* */
|
||||
/* *********************** FONT ******************** */
|
||||
/* ************************************************* */
|
||||
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-Light.woff2') format('woff2'),
|
||||
url('./font/FiraSans-Light.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-SemiBold.woff2') format('woff2'),
|
||||
url('./font/FiraSans-SemiBold.woff') format('woff');
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-LightItalic.woff2') format('woff2'),
|
||||
url('./font/FiraSans-LightItalic.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Generic
|
||||
*/
|
||||
body, div, ul, ol, li, a, section, nav,
|
||||
h1, h2, h3, h4, h5, h6, label,
|
||||
hr, input, textarea {
|
||||
-moz-box-sizing:border-box;
|
||||
-webkit-box-sizing:border-box;
|
||||
box-sizing: border-box;
|
||||
margin: 0;
|
||||
font-family: "fira_sans", -apple-system, BlinkMacSystemFont,
|
||||
"Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell",
|
||||
"Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
|
||||
}
|
||||
body, div, ul, ol, li, a, section, nav,
|
||||
h1, h2, h3, h4, h5, h6, label, hr {
|
||||
padding: 0;
|
||||
}
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: SeaGreen;
|
||||
}
|
||||
hr {
|
||||
clear: both;
|
||||
width: 100%;
|
||||
height: 0;
|
||||
max-width: 980px;
|
||||
margin: 28px auto;
|
||||
-moz-border-bottom-colors: none;
|
||||
-moz-border-left-colors: none;
|
||||
-moz-border-right-colors: none;
|
||||
-moz-border-top-colors: none;
|
||||
border-color: #ddd;
|
||||
border-image: none;
|
||||
border-style: solid;
|
||||
border-width: 1px 0 0;
|
||||
}
|
||||
h1, h2 {
|
||||
margin-bottom: 28px;
|
||||
}
|
||||
h3, h4, h5 {
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
p {
|
||||
line-height: 21px;
|
||||
margin-top: 14px;
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
|
||||
/*
|
||||
* List
|
||||
*/
|
||||
ul {
|
||||
list-style-image:none;
|
||||
list-style-position:inside;
|
||||
list-style-type:none;
|
||||
}
|
||||
|
||||
/* ************************************************* */
|
||||
/* *********************** GRID ******************** */
|
||||
/* ************************************************* */
|
||||
.wrapper {
|
||||
width: 100%;
|
||||
clear: both;
|
||||
}
|
||||
.wrapper:after {
|
||||
visibility: hidden;
|
||||
display: block;
|
||||
font-size: 0;
|
||||
content: " ";
|
||||
clear: both;
|
||||
height: 0;
|
||||
}
|
||||
.row {
|
||||
width: 100%;
|
||||
max-width: 1200px;
|
||||
clear: both;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
margin-top: 0;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
.col {
|
||||
float: left;
|
||||
}
|
||||
.right {
|
||||
float: right;
|
||||
}
|
||||
.col + .col {
|
||||
padding-left: 20px;
|
||||
}
|
||||
.half {
|
||||
width: 50%;
|
||||
}
|
||||
.third {
|
||||
width: 33.33%;
|
||||
}
|
||||
.two-third {
|
||||
width: 66.66%
|
||||
}
|
||||
.quarter {
|
||||
width: 25%;
|
||||
}
|
||||
.wide {
|
||||
width: 100%;
|
||||
}
|
||||
.col + .wide {
|
||||
padding-left: inherit;
|
||||
}
|
||||
.mshow, .tshow {
|
||||
display: none;
|
||||
}
|
||||
.center {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
float: none;
|
||||
}
|
||||
|
||||
/*
|
||||
* Content
|
||||
*/
|
||||
.tintbox, .tintbox a {
|
||||
font-family: serif;
|
||||
}
|
||||
.tintbox {
|
||||
background-color: #f2f2f2;
|
||||
padding: 28px;
|
||||
}
|
||||
.tintbox p {
|
||||
color: #6f6f6f;
|
||||
}
|
||||
body.content {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
@ -166,23 +8,6 @@ body.content {
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
Foundation use a position:relative; on body, which break the 100% rule
|
||||
on #map
|
||||
*/
|
||||
body.map_detail {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: inherit;
|
||||
}
|
||||
|
||||
/* Global alert */
|
||||
.alert-box.global {
|
||||
z-index: 1001;
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
/* Search form */
|
||||
input::-webkit-input-placeholder, ::-webkit-input-placeholder {
|
||||
color: #a5a5a5;
|
||||
|
@ -192,19 +17,19 @@ input:-moz-placeholder, :-moz-placeholder {
|
|||
color: #a5a5a5;
|
||||
}
|
||||
|
||||
#storage-ui-container textarea {
|
||||
#umap-ui-container textarea {
|
||||
height: 100px;
|
||||
margin-bottom: 14px;
|
||||
}
|
||||
#storage-ui-container select {
|
||||
#umap-ui-container select {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#storage-ui-container.warning .button {
|
||||
#umap-ui-container.warning .button {
|
||||
background-color: #c60f13;
|
||||
border: 1px solid #7f0a0c;
|
||||
}
|
||||
#storage-ui-container.warning .button:hover {
|
||||
#umap-ui-container.warning .button:hover {
|
||||
background-color: #970b0e;
|
||||
}
|
||||
|
||||
|
@ -241,34 +66,6 @@ input:-moz-placeholder, :-moz-placeholder {
|
|||
background-image: url("./openstreetmap.png");
|
||||
}
|
||||
|
||||
/*
|
||||
* Navigation
|
||||
*/
|
||||
header {
|
||||
margin: 14px 0;
|
||||
}
|
||||
|
||||
footer {
|
||||
height: 140px;
|
||||
margin-top: 40px;
|
||||
background-color: #2E3641;
|
||||
text-align: center;
|
||||
line-height: 140px;
|
||||
color: #8F96A3;
|
||||
}
|
||||
footer a.branding {
|
||||
background-image: url("./img/logo_filigree.png");
|
||||
background-position: left center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 60px auto;
|
||||
font-size: 30px;
|
||||
font-weight: bold;
|
||||
height: 140px;
|
||||
padding-left: 70px;
|
||||
color: #8F96A3;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
||||
/* **************************** */
|
||||
/* home */
|
||||
|
@ -346,21 +143,6 @@ h2.section {
|
|||
display: inline-block;
|
||||
height: 128px;
|
||||
}
|
||||
.button-bar {
|
||||
text-align: center;
|
||||
}
|
||||
.button-bar .button {
|
||||
display: inline-block;
|
||||
}
|
||||
.button-bar .button + .button {
|
||||
margin-left: 14px;
|
||||
}
|
||||
.button-bar .button.half {
|
||||
width: calc(50% - 7px);
|
||||
}
|
||||
.button-bar .button.third {
|
||||
width: calc(100% / 3 - 10px);
|
||||
}
|
||||
.demo-instance-warning {
|
||||
background-color: #c0392b;
|
||||
color: #efefef;
|
||||
|
@ -374,6 +156,9 @@ h2.section {
|
|||
color: #efefef;
|
||||
text-decoration: underline;
|
||||
}
|
||||
body.content #umap-ui-container {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
|
||||
/* **************************** */
|
||||
|
@ -479,21 +264,9 @@ ul.umap-autocomplete {
|
|||
/* **************************** */
|
||||
/* Override Leaflet.Storage */
|
||||
/* **************************** */
|
||||
body.content #storage-ui-container {
|
||||
/* width: 100%;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
bottom: inherit;
|
||||
height: 30%;*/
|
||||
background-color: #fff;
|
||||
}
|
||||
#id_editors + br + span.helptext {
|
||||
display: none;
|
||||
}
|
||||
.storage-loader {
|
||||
background-color: #79c1c0 !important;
|
||||
}
|
||||
.leaflet-container a.button {
|
||||
color: #eeeeec;
|
||||
}
|
30
umap/static/umap/font.css
Normal file
|
@ -0,0 +1,30 @@
|
|||
/* ************************************************* */
|
||||
/* *********************** FONT ******************** */
|
||||
/* ************************************************* */
|
||||
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-Light.woff2') format('woff2'),
|
||||
url('./font/FiraSans-Light.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-SemiBold.woff2') format('woff2'),
|
||||
url('./font/FiraSans-SemiBold.woff') format('woff');
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'fira_sans';
|
||||
src: url('./font/FiraSans-LightItalic.woff2') format('woff2'),
|
||||
url('./font/FiraSans-LightItalic.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
BIN
umap/static/umap/img/16-white.png
Normal file
After Width: | Height: | Size: 13 KiB |
718
umap/static/umap/img/16-white.svg
Normal file
|
@ -0,0 +1,718 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="240"
|
||||
height="240"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="16-white.svg"
|
||||
inkscape:export-filename="/home/ybon/Code/js/Leaflet.Storage/src/img/16-white.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="15.839192"
|
||||
inkscape:cx="167.09394"
|
||||
inkscape:cy="38.63729"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2031"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="55"
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:snap-grids="true"
|
||||
inkscape:snap-to-guides="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3004"
|
||||
empspacing="4"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="40,40"
|
||||
id="guide3084" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="120,120"
|
||||
id="guide3086" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="80,80"
|
||||
id="guide3088" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="80,80"
|
||||
id="guide3090" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="120,120"
|
||||
id="guide14621" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="40,40"
|
||||
id="guide17864" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="160,160"
|
||||
id="guide3026" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="160,160"
|
||||
id="guide3028" />
|
||||
<sodipodi:guide
|
||||
position="200,168"
|
||||
orientation="1,0"
|
||||
id="guide4869"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
<sodipodi:guide
|
||||
position="-60,200"
|
||||
orientation="0,1"
|
||||
id="guide5766" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-812.36218)">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="13.786797"
|
||||
y="953.80786"
|
||||
id="text4457"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
y="953.80786"
|
||||
x="13.786797"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459" /></text>
|
||||
<g
|
||||
id="g3001"
|
||||
transform="translate(-15.255701,-111.38651)">
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 35.255701,935.74851 c -4.412356,0 -8.00014,3.58778 -8.00014,8.00014 0,4.41235 3.587784,8.00014 8.00014,8.00014 4.412356,0 8.00014,-3.58779 8.00014,-8.00014 0,-4.41236 -3.587784,-8.00014 -8.00014,-8.00014 z m 0,1.00028 c 3.871916,0 6.99986,3.12794 6.99986,6.99986 0,3.87191 -3.127944,6.99986 -6.99986,6.99986 -3.871916,0 -6.999861,-3.12795 -6.999861,-6.99986 0,-3.87192 3.127945,-6.99986 6.999861,-6.99986 z"
|
||||
id="path3014"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="text3784"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
transform="translate(27.255701,-100.61365)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3789"
|
||||
style="font-weight:bold;font-size:12px;-inkscape-font-specification:'Sans Bold';fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 9,1046.0464 -2.3698034,0 0,-0.3223 c 0,-0.3596 0.072207,-0.6775 0.2166302,-0.9539 0.1444174,-0.2807 0.4485749,-0.636 0.9124728,-1.0658 l 0.4201314,-0.3816 c 0.249449,-0.228 0.4310681,-0.4429 0.5448577,-0.6446 0.1181576,-0.2019 0.1772384,-0.4036 0.177243,-0.6053 -4.6e-6,-0.3071 -0.1050376,-0.5462 -0.3150985,-0.7171 -0.2100697,-0.1756 -0.5032861,-0.2632 -0.87965,-0.2632 -0.3544889,0 -0.7374207,0.075 -1.1487968,0.2237 -0.4113804,0.1446 -0.840264,0.3618 -1.2866522,0.6513 l 0,-2.0659 c 0.5295391,-0.184 1.0131273,-0.32 1.4507661,-0.4077 0.437634,-0.088 0.8599531,-0.1317 1.2669587,-0.1317 1.0678292,0 1.8818328,0.2194 2.442012,0.6579 0.560169,0.4341 0.840256,1.0702 0.840263,1.9078 -7e-6,0.4298 -0.08535,0.8159 -0.256017,1.158 -0.170685,0.3377 -0.461713,0.7017 -0.873085,1.092 l -0.4201313,0.375 c -0.297598,0.272 -0.4923463,0.4913 -0.5842451,0.658 -0.091909,0.1622 -0.1378603,0.342 -0.1378556,0.5394 l 0,0.296 m -2.3698034,0.9739 2.3698034,0 0,2.342 -2.3698034,0 0,-2.342"
|
||||
sodipodi:nodetypes="ccsccccccsccccsccccccccccccc" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 99.999997,867.86202 c -3,0 -5,1.5 -8,4.5 3,3 5,4.5 8,4.5 3.000003,0 5.000003,-1.5 8.000003,-4.5 -3,-3 -5,-4.5 -8.000003,-4.5 z m 0,2.5 c 1.104563,0 1.999993,0.8954 1.999993,2 0,1.1046 -0.89543,2 -1.999993,2 -1.104569,0 -2,-0.8954 -2,-2 0,-1.1046 0.895431,-2 2,-2 z"
|
||||
id="path2990-6"
|
||||
inkscape:label="eye-on"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/eye-on.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<g
|
||||
id="eye-off"
|
||||
style="fill:#b3b3b3"
|
||||
inkscape:label="eye-off"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/eye-off.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
transform="translate(131,-171.00018)">
|
||||
<path
|
||||
id="path2990"
|
||||
transform="translate(0,1034.3622)"
|
||||
d="M 9,4.5 C 6.0000002,4.4999664 4.0000001,6 1,9 c 3.0000001,2.999999 5.0000002,4.500033 8,4.5 3,-3.3e-5 5,-1.500001 8,-4.5 C 14,6 12,4.5000336 9,4.5 Z M 9,7 c 1.104569,0 2,0.8954305 2,2 0,1.104569 -0.895431,2 -2,2 C 7.8954305,11 7,10.104569 7,9 7,7.8954305 7.8954305,7 9,7 Z"
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect3787"
|
||||
d="m 2,1047.8622 13,-10 1,1 -13,10 z"
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 134,827.36214 0,2 12,0 0,-2 -12,0 z m 0,3 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z"
|
||||
id="table"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="table"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/browse-data.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 59,867.36202 0,4 -4,0 0,2 4,0 0,4 2,0 0,-4 4,0 0,-2 -4,0 0,-4 z"
|
||||
id="rect5280"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/add-layer-grey-18.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccc" />
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:Sans;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;display:inline;overflow:visible;visibility:visible;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker:none;enable-background:accumulate"
|
||||
d="m 21.517525,906.362 c -2.466762,0 -4.48249,2.0158 -4.48249,4.4826 0,0.8297 0.233748,1.5964 0.63035,2.26462 l -3.66537,3.66532 1.587549,1.5876 3.66537,-3.66542 c 0.668139,0.3966 1.434831,0.6303 2.264591,0.6303 2.466762,0 4.48249,-2.0157 4.48249,-4.48242 0,-2.4668 -2.015728,-4.4826 -4.48249,-4.4826 z m 0,1.4943 c 1.659256,0 2.988326,1.329 2.988326,2.9883 0,1.6592 -1.32907,2.98832 -2.988326,2.98832 -1.659256,0 -2.988326,-1.32912 -2.988326,-2.98832 0,-1.6593 1.32907,-2.9883 2.988326,-2.9883 z m 0,1.4941 c -0.816354,0 -1.494163,0.6779 -1.494163,1.4942 0,0.8163 0.677809,1.4942 1.494163,1.4942 0.816354,0 1.494163,-0.6779 1.494163,-1.4942 0,-0.8163 -0.677809,-1.4942 -1.494163,-1.4942 z"
|
||||
id="path4354"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom_to.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path4392"
|
||||
d="m 61.51751,906.36205 c -2.466762,0 -4.482491,2.0157 -4.482491,4.4825 0,0.8298 0.233749,1.5964 0.630351,2.2645 L 54,916.77459 l 1.587549,1.5875 3.665369,-3.66544 c 0.668139,0.39662 1.434831,0.63042 2.264592,0.63042 2.466762,0 4.48249,-2.01572 4.48249,-4.48252 0,-2.4668 -2.015728,-4.4825 -4.48249,-4.4825 z m 0,1.4942 c 1.659256,0 2.988327,1.329 2.988327,2.9883 0,1.6593 -1.329071,2.9883 -2.988327,2.9883 -1.659256,0 -2.988327,-1.329 -2.988327,-2.9883 0,-1.6593 1.329071,-2.9883 2.988327,-2.9883 z m 0,1.4941 c -0.816355,0 -1.494164,0.6779 -1.494164,1.4942 0,0.8163 0.677809,1.4942 1.494164,1.4942 0.816355,0 1.494163,-0.6779 1.494163,-1.4942 0,-0.8163 -0.677808,-1.4942 -1.494163,-1.4942 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:Sans;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;display:inline;overflow:visible;visibility:visible;fill:#b3b3b3;fill-opacity:1;stroke:none;stroke-width:3;marker:none;enable-background:accumulate"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom_to-off.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
d="m 60,945.36215 c -3.865993,0 -7,3.134 -7,7 0,3.86602 3.134007,7.00005 7,7.00005 3.865993,0 7,-3.13404 7,-7.00005 0,-3.866 -3.134007,-7 -7,-7 z m -0.15625,2.9687 a 1.0001,1.0001 0 0 1 0.09375,0 1.0001,1.0001 0 0 1 0.65625,1.8125 l -1.625,1.2188 5.03125,0 a 1.0001,1.0001 0 1 1 0,2 l -5,0 1.59375,1.1875 a 1.0001,1.0001 0 1 1 -1.1875,1.59372 l -3.71875,-2.78122 a 1.0043849,1.0043849 0 0 1 -0.15625,-1.9063 l 3.875,-2.9062 a 1.0001,1.0001 0 0 1 0.4375,-0.2188 z"
|
||||
id="path5321"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/arrow-left-16.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/arrow-right-16.png"
|
||||
id="path5338"
|
||||
d="m 20.000015,959.36218 c 3.865993,0 7,-3.134 7,-7.00002 0,-3.866 -3.134007,-7 -7,-7 -3.865993,0 -7,3.134 -7,7 0,3.86602 3.134007,7.00002 7,7.00002 z m 0.15625,-2.9687 a 1.0001,1.0001 0 0 1 -0.09375,0 1.0001,1.0001 0 0 1 -0.65625,-1.81252 l 1.625,-1.2188 -5.03125,0 a 1.0001,1.0001 0 1 1 0,-2 l 5,0 -1.59375,-1.1875 a 1.0001,1.0001 0 1 1 1.1875,-1.5937 l 3.71875,2.7812 a 1.0043849,1.0043849 0 0 1 0.15625,1.9063 l -3.875,2.90622 a 1.0001,1.0001 0 0 1 -0.4375,0.2188 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
d="m 20.000015,985.3621 c -3.865993,0 -7,3.134 -7,7 0,3.8661 3.134007,7.0001 7,7.0001 3.865993,0 7,-3.134 7,-7.0001 0,-3.866 -3.134007,-7 -7,-7 z m -0.15625,1.7187 a 1.250125,1.250125 0 0 1 0.125,0 1.250125,1.250125 0 0 1 1.28125,1.2813 l 0,2.75 2.75,0 a 1.250125,1.250125 0 1 1 0,2.5 l -2.75,0 0,2.7501 a 1.250125,1.250125 0 1 1 -2.5,0 l 0,-2.7501 -2.75,0 a 1.2515615,1.2515615 0 0 1 -0.125,-2.5 1.250125,1.250125 0 0 1 0.125,0 l 2.75,0 0,-2.75 a 1.250125,1.250125 0 0 1 1.09375,-1.2813 z"
|
||||
id="path5340"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom-grey-16.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 94,827.36214 0,2 12,0 0,-2 -12,0 z m 0,3 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z"
|
||||
id="table-5"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="table"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/browse-data.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<g
|
||||
transform="translate(32,-48.000118)"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="text3784-6" />
|
||||
<g
|
||||
id="text4356"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
transform="translate(20,-164.00004)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4384"
|
||||
style="font-variant:normal;font-stretch:normal;font-size:20px;font-family:Arial;-inkscape-font-specification:Arial;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 35.742187,999.43835 3.076172,-3.07617 -3.066406,-3.0664 1.191406,-1.19141 3.066407,3.06641 3.05664,-3.05664 1.171875,1.18164 -3.046875,3.05664 3.066406,3.0664 -1.191406,1.19138 L 40,997.54382 36.923828,1000.62 35.742187,999.43835" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 19.192256,877.3618 2e-6,-4.19993 -4.192255,10e-6 -3e-6,-1.62667 4.192263,0 0,-4.17331 1.608812,0.007 0.0067,4.16664 4.192255,0 -3.9e-5,1.62662 -4.19222,4e-5 -1.5e-5,4.19994 -1.615475,0"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:20px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="path4384-3" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 103.71429,906.36213 -1.14285,1.14286 2.28571,2.28572 L 106,908.64785 Z M 102,908.07641 l -6.285714,6.28574 2.285715,2.2857 6.285719,-6.28572 z M 95.714286,914.36215 94,918.36214 l 4.000001,-1.71429 z"
|
||||
id="path3684"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:30.4761982px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="81.647079"
|
||||
y="988.79706"
|
||||
id="text4457-6"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
y="988.79706"
|
||||
x="81.647079"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459-6" /></text>
|
||||
<g
|
||||
id="text4356-2"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none"
|
||||
transform="translate(100,-84.00004)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4384-2"
|
||||
style="font-variant:normal;font-stretch:normal;font-size:20px;font-family:Arial;-inkscape-font-specification:Arial;fill:#f2f2f2;fill-opacity:1"
|
||||
d="m 35.742187,999.43835 3.076172,-3.07617 -3.066406,-3.0664 1.191406,-1.19141 3.066407,3.06641 3.05664,-3.05664 1.171875,1.18164 -3.046875,3.05664 3.066406,3.0664 -1.191406,1.19138 L 40,997.54382 36.923828,1000.62 35.742187,999.43835" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;stroke:none"
|
||||
d="m 103.71429,946.36216 -1.14285,1.1428 2.28571,2.2858 L 106,948.64786 Z M 102,948.07646 95.714286,954.36218 98,956.64788 l 6.28572,-6.2857 z m -6.285714,6.28572 -1.714286,4 4,-1.7143 z"
|
||||
id="path3684-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<path
|
||||
id="table-5-8-8-6"
|
||||
style="fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 54,986.3622 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="table-5-8-8-6-1"
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 94,986.3622 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z" />
|
||||
<circle
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path3764"
|
||||
cx="180"
|
||||
cy="868.36218"
|
||||
r="1.5" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 179,871.36218 2,0 0,6 -2,0 z"
|
||||
id="rect4274"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<g
|
||||
id="g4717"
|
||||
transform="translate(1.210815,-42.477)">
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 141.26953,173.42383 -6.75586,2.67969 0.95313,6.3457 5.87109,3.12695 4.14844,-7.87305 -4.2168,-4.27929 z m -1.44726,2.48828 2.99023,1.60156 -0.5918,2.43164 -3.35742,1.50391 -1.73828,-3.81055 2.69727,-1.72656 z"
|
||||
transform="translate(-1.210815,854.83918)"
|
||||
id="path3862"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 219,905.36213 0,1 c -1.42857,0 -3.28571,0.59991 -4,2 l 0,1 10,0 0,-1 c -0.71429,-1.40009 -2.57143,-2 -4,-2 l 0,-1 z m -4,5 2,9 6,0 2,-9 z"
|
||||
id="delete-30"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
<g
|
||||
id="g4797"
|
||||
transform="translate(1.7400753,-40.674381)">
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 180.94531,986.19141 -1.46679,13.33593 1.98828,0.21875 1.46679,-13.33593 -1.98828,-0.21875 z"
|
||||
id="path4349-2-2-9-3-8"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 174.01172,986.32617 -1.9668,0.36719 2.46289,13.1875 1.96485,-0.36719 -2.46094,-13.1875 z"
|
||||
id="path4349-2-2-3-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g4621">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<g
|
||||
id="g4400-8-39-2-3"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8-3"
|
||||
d="m 183.28778,905.517 -1.46679,13.33593 1.98828,0.21875 1.46679,-13.33593 -1.98828,-0.21875 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-3-3-8"
|
||||
d="m 176.35419,905.65176 -1.9668,0.36719 2.46289,13.1875 1.96485,-0.36719 -2.46094,-13.1875 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 179.62695,985.084 -1.46679,13.3359 1.98828,0.2188 1.46679,-13.336 -1.98828,-0.2187 z"
|
||||
id="path4349-2-2-9-3-8-7"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect4918"
|
||||
d="m 214.53906,984.2997 -1.32226,1.1269 4.66601,5.4766 0,2.7305 -3.44726,4.8613 1.30859,0.9297 3.75195,-5.293 2.38672,0 0,-4 -2.375,0 -4.96875,-5.832 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<g
|
||||
id="g4621-0-6"
|
||||
transform="translate(42.310073,1.98329)"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
id="g4400-8-39-2-3-1-1-8">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 175.80573,948.24562 8.38854,8.34969"
|
||||
id="path4353-1-6-1-3-6-5-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176,956.36218 8.15542,-8.19427"
|
||||
id="path4355-9-7-1-7-3-31-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
id="g4400-8-39-2-3-3-7">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9"
|
||||
transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)"
|
||||
d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 -1.58203,-1.58008 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 182.41602,823.62195 0,4 4,0 0,-4 -4,0 z m 0.5371,4.54882 -1.29296,2.41797 1.21093,0.64649 1.29102,-2.41992 -1.20899,-0.64454 z m -1.93945,3.62891 -0.28711,0.53906 -2.51758,0 0,2.34571 -4.24609,4.24804 1.41406,1.41407 4.00782,-4.00782 2.82421,0 0,-3.86328 0.0156,-0.0293 -0.0156,-0.008 0,-0.0996 -0.18554,0 -1.00977,-0.53906 z"
|
||||
id="path4873"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g4244"
|
||||
transform="matrix(0.51357238,-0.54309229,0.54309229,0.51357238,-430.0199,562.22551)">
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 220.49219,133.52344 c -0.33017,0.01 -0.66239,0.0456 -0.99414,0.10742 -2.22487,0.41425 -4.02666,1.95747 -4.83203,4.00976 l -0.87696,-1.8164 a 0.50004998,0.50004998 0 0 0 -0.83398,-0.11328 0.50004998,0.50004998 0 0 0 -0.0664,0.54883 l 1.45899,3.01953 a 0.50004998,0.50004998 0 0 0 0.60742,0.25586 l 2.84375,-0.94532 a 0.50028339,0.50028339 0 1 0 -0.31641,-0.94922 l -2.00195,0.66797 c 0.61312,-1.89015 2.20733,-3.32407 4.20117,-3.69531 2.24744,-0.41845 4.51458,0.59912 5.69531,2.55664 1.18073,1.95754 1.02202,4.43774 -0.39648,6.23047 -1.41851,1.79275 -3.79606,2.51535 -5.97266,1.81641 a 0.50004998,0.50004998 0 1 0 -0.30469,0.95117 c 2.57038,0.82539 5.38736,-0.0294 7.0625,-2.14649 0.4188,-0.52924 0.74532,-1.11137 0.97657,-1.7207 0.69373,-1.828 0.53599,-3.91467 -0.50977,-5.64844 -1.22005,-2.02271 -3.42908,-3.19767 -5.74023,-3.1289 z"
|
||||
transform="matrix(0.91921787,0.9720541,-0.9720541,0.91921787,152.1356,647.93271)"
|
||||
id="path4240"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g4140"
|
||||
transform="translate(0,-40)">
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 227.55273,53.105469 -6.05468,3.027343 -3.44141,0 0,3.517579 -2.95117,5.902343 1.78906,0.894532 3.15625,-6.314454 2.00586,0 0,-2.042968 6.39063,-3.195313 -0.89454,-1.789062 z"
|
||||
transform="translate(0,852.36218)"
|
||||
id="path4349-2-2-9-3-8-3-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2.48200011;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217,907.36218 6,6"
|
||||
id="path4353-1-6-1-3-5-1-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:1.48223662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217,907.36218 6,6"
|
||||
id="path4353-1-6-1-3-5-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 223.11523,825.44531 -1.46875,13.33594 1.98829,0.21875 1.46679,-13.33594 -1.98633,-0.21875 z"
|
||||
id="path4349-2-2-9-3-8-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217.65868,838.95182 -2.4614,-13.1887"
|
||||
id="path4349-2-2-3-3-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<g
|
||||
id="g4621-0-6-2"
|
||||
transform="translate(-1.3846587,-0.287334)"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
id="g4400-8-39-2-3-1-1-8-9">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 175.80573,948.24562 8.38854,8.34969"
|
||||
id="path4353-1-6-1-3-6-5-5-7"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176,956.36218 8.15542,-8.19427"
|
||||
id="path4355-9-7-1-7-3-31-4-6"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
id="g4400-8-39-2-3-3-7-9">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9-1"
|
||||
transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)"
|
||||
d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 -1.58203,-1.58008 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4621-0-6-9"
|
||||
transform="translate(1.6890431,-40.40456)"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
id="g4400-8-39-2-3-1-1-8-0">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 175.80573,948.24562 8.38854,8.34969"
|
||||
id="path4353-1-6-1-3-6-5-5-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176,956.36218 8.15542,-8.19427"
|
||||
id="path4355-9-7-1-7-3-31-4-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
id="g4400-8-39-2-3-3-7-8">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9-4"
|
||||
transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)"
|
||||
d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 -1.58203,-1.58008 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4621-0-6-0"
|
||||
transform="translate(2.4363388,-80.091107)"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
id="g4400-8-39-2-3-1-1-8-2">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 175.80573,948.24562 8.38854,8.34969"
|
||||
id="path4353-1-6-1-3-6-5-5-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176,956.36218 8.15542,-8.19427"
|
||||
id="path4355-9-7-1-7-3-31-4-69"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
id="g4400-8-39-2-3-3-7-2">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9-8"
|
||||
transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)"
|
||||
d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 -1.58203,-1.58008 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4621-0-6-5"
|
||||
transform="translate(-4.5930092,-80.174546)"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
id="g4400-8-39-2-3-1-1-8-6">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 175.80573,948.24562 8.38854,8.34969"
|
||||
id="path4353-1-6-1-3-6-5-5-2"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 176,956.36218 8.15542,-8.19427"
|
||||
id="path4355-9-7-1-7-3-31-4-0"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
id="g4400-8-39-2-3-3-7-0">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9-6"
|
||||
transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)"
|
||||
d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 -1.58203,-1.58008 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||
d="m 180,864.36204 c -4.41236,0 -8.00014,3.58778 -8.00014,8.00014 0,4.41235 3.58778,8.00014 8.00014,8.00014 4.41236,0 8.00014,-3.58779 8.00014,-8.00014 0,-4.41236 -3.58778,-8.00014 -8.00014,-8.00014 z m 0,1.00028 c 3.87192,0 6.99986,3.12794 6.99986,6.99986 0,3.87191 -3.12794,6.99986 -6.99986,6.99986 -3.87192,0 -6.99986,-3.12795 -6.99986,-6.99986 0,-3.87192 3.12794,-6.99986 6.99986,-6.99986 z"
|
||||
id="path3014-4"
|
||||
inkscape:connector-curvature="0" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4237"
|
||||
width="2"
|
||||
height="2"
|
||||
x="133"
|
||||
y="945.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4239"
|
||||
width="2"
|
||||
height="2"
|
||||
x="137"
|
||||
y="945.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4241"
|
||||
width="2"
|
||||
height="2"
|
||||
x="141"
|
||||
y="945.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4243"
|
||||
width="2"
|
||||
height="2"
|
||||
x="145"
|
||||
y="945.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4237-6"
|
||||
width="2"
|
||||
height="2"
|
||||
x="133"
|
||||
y="949.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4239-3"
|
||||
width="2"
|
||||
height="2"
|
||||
x="137"
|
||||
y="949.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4241-8"
|
||||
width="2"
|
||||
height="2"
|
||||
x="141"
|
||||
y="949.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4243-2"
|
||||
width="2"
|
||||
height="2"
|
||||
x="145"
|
||||
y="949.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4237-1"
|
||||
width="2"
|
||||
height="2"
|
||||
x="133"
|
||||
y="953.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4239-5"
|
||||
width="2"
|
||||
height="2"
|
||||
x="137"
|
||||
y="953.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4241-82"
|
||||
width="2"
|
||||
height="2"
|
||||
x="141"
|
||||
y="953.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4243-5"
|
||||
width="2"
|
||||
height="2"
|
||||
x="145"
|
||||
y="953.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4237-6-6"
|
||||
width="2"
|
||||
height="2"
|
||||
x="133"
|
||||
y="957.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4239-3-7"
|
||||
width="2"
|
||||
height="2"
|
||||
x="137"
|
||||
y="957.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4241-8-2"
|
||||
width="2"
|
||||
height="2"
|
||||
x="141"
|
||||
y="957.36218" />
|
||||
<rect
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4243-2-5"
|
||||
width="2"
|
||||
height="2"
|
||||
x="145"
|
||||
y="957.36218" />
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 219,1025.3621 0,1 c -1.42857,0 -3.28571,0.5999 -4,2 l 0,1 10,0 0,-1 c -0.71429,-1.4001 -2.57143,-2 -4,-2 l 0,-1 z m -4,5 2,9 6,0 2,-9 z"
|
||||
id="delete-30-7"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.1772268;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 179.96039,1032.4893 -7.74718,7.7842 15.49436,0 z"
|
||||
id="path4407"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 55 KiB |
BIN
umap/static/umap/img/16.png
Normal file
After Width: | Height: | Size: 11 KiB |
681
umap/static/umap/img/16.svg
Normal file
|
@ -0,0 +1,681 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="240"
|
||||
height="240"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="16.svg"
|
||||
inkscape:export-filename="/home/ybon/Code/js/Leaflet.Storage/src/img/16.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="5.6"
|
||||
inkscape:cx="145.59281"
|
||||
inkscape:cy="90.138309"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2031"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="55"
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true"
|
||||
inkscape:snap-grids="true"
|
||||
inkscape:snap-to-guides="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3004"
|
||||
empspacing="4"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="40,40"
|
||||
id="guide3084" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="120,120"
|
||||
id="guide3086" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="80,80"
|
||||
id="guide3088" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="80,80"
|
||||
id="guide3090" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="120,120"
|
||||
id="guide14621" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="40,40"
|
||||
id="guide17864" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="160,160"
|
||||
id="guide3026" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="160,160"
|
||||
id="guide3028" />
|
||||
<sodipodi:guide
|
||||
position="200,168"
|
||||
orientation="1,0"
|
||||
id="guide4869"
|
||||
inkscape:label=""
|
||||
inkscape:color="rgb(0,0,255)" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-812.36218)">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="13.786797"
|
||||
y="953.80786"
|
||||
id="text4457"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
y="953.80786"
|
||||
x="13.786797"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459" /></text>
|
||||
<g
|
||||
id="g3001"
|
||||
transform="translate(-15.255701,-111.38651)">
|
||||
<circle
|
||||
transform="matrix(1.0714286,0,0,1.0714286,26.684272,934.10579)"
|
||||
id="path3014"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:0.93333334;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
cx="8"
|
||||
cy="9"
|
||||
r="7" />
|
||||
<g
|
||||
id="text3784"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
transform="translate(27.255701,-100.61365)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3789"
|
||||
style="font-weight:bold;font-size:12px;-inkscape-font-specification:'Sans Bold';fill:#4d4d4d"
|
||||
d="m 9,1046.0464 -2.3698034,0 0,-0.3223 c 0,-0.3596 0.072207,-0.6775 0.2166302,-0.9539 0.1444174,-0.2807 0.4485749,-0.636 0.9124728,-1.0658 l 0.4201314,-0.3816 c 0.249449,-0.228 0.4310681,-0.4429 0.5448577,-0.6446 0.1181576,-0.2019 0.1772384,-0.4036 0.177243,-0.6053 -4.6e-6,-0.3071 -0.1050376,-0.5462 -0.3150985,-0.7171 -0.2100697,-0.1756 -0.5032861,-0.2632 -0.87965,-0.2632 -0.3544889,0 -0.7374207,0.075 -1.1487968,0.2237 -0.4113804,0.1446 -0.840264,0.3618 -1.2866522,0.6513 l 0,-2.0659 c 0.5295391,-0.184 1.0131273,-0.32 1.4507661,-0.4077 0.437634,-0.088 0.8599531,-0.1317 1.2669587,-0.1317 1.0678292,0 1.8818328,0.2194 2.442012,0.6579 0.560169,0.4341 0.840256,1.0702 0.840263,1.9078 -7e-6,0.4298 -0.08535,0.8159 -0.256017,1.158 -0.170685,0.3377 -0.461713,0.7017 -0.873085,1.092 l -0.4201313,0.375 c -0.297598,0.272 -0.4923463,0.4913 -0.5842451,0.658 -0.091909,0.1622 -0.1378603,0.342 -0.1378556,0.5394 l 0,0.296 m -2.3698034,0.9739 2.3698034,0 0,2.342 -2.3698034,0 0,-2.342"
|
||||
sodipodi:nodetypes="ccsccccccsccccsccccccccccccc" />
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 99.999997,867.86202 c -3,0 -5,1.5 -8,4.5 3,3 5,4.5 8,4.5 3.000003,0 5.000003,-1.5 8.000003,-4.5 -3,-3 -5,-4.5 -8.000003,-4.5 z m 0,2.5 c 1.104563,0 1.999993,0.8954 1.999993,2 0,1.1046 -0.89543,2 -1.999993,2 -1.104569,0 -2,-0.8954 -2,-2 0,-1.1046 0.895431,-2 2,-2 z"
|
||||
id="path2990-6"
|
||||
inkscape:label="eye-on"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/eye-on.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<g
|
||||
id="eye-off"
|
||||
style="fill:#b3b3b3"
|
||||
inkscape:label="eye-off"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/eye-off.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
transform="translate(131,-171.00018)">
|
||||
<path
|
||||
id="path2990"
|
||||
transform="translate(0,1034.3622)"
|
||||
d="M 9,4.5 C 6.0000002,4.4999664 4.0000001,6 1,9 c 3.0000001,2.999999 5.0000002,4.500033 8,4.5 3,-3.3e-5 5,-1.500001 8,-4.5 C 14,6 12,4.5000336 9,4.5 Z M 9,7 c 1.104569,0 2,0.8954305 2,2 0,1.104569 -0.895431,2 -2,2 C 7.8954305,11 7,10.104569 7,9 7,7.8954305 7.8954305,7 9,7 Z"
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect3787"
|
||||
d="m 2,1047.8622 13,-10 1,1 -13,10 z"
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 134,827.36214 0,2 12,0 0,-2 -12,0 z m 0,3 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z"
|
||||
id="table"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="table"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/browse-data.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 59,867.36202 0,4 -4,0 0,2 4,0 0,4 2,0 0,-4 4,0 0,-2 -4,0 0,-4 z"
|
||||
id="rect5280"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/add-layer-grey-18.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccc" />
|
||||
<path
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:Sans;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;display:inline;overflow:visible;visibility:visible;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:3;marker:none;enable-background:accumulate"
|
||||
d="m 21.517525,906.362 c -2.466762,0 -4.48249,2.0158 -4.48249,4.4826 0,0.8297 0.233748,1.5964 0.63035,2.26462 l -3.66537,3.66532 1.587549,1.5876 3.66537,-3.66542 c 0.668139,0.3966 1.434831,0.6303 2.264591,0.6303 2.466762,0 4.48249,-2.0157 4.48249,-4.48242 0,-2.4668 -2.015728,-4.4826 -4.48249,-4.4826 z m 0,1.4943 c 1.659256,0 2.988326,1.329 2.988326,2.9883 0,1.6592 -1.32907,2.98832 -2.988326,2.98832 -1.659256,0 -2.988326,-1.32912 -2.988326,-2.98832 0,-1.6593 1.32907,-2.9883 2.988326,-2.9883 z m 0,1.4941 c -0.816354,0 -1.494163,0.6779 -1.494163,1.4942 0,0.8163 0.677809,1.4942 1.494163,1.4942 0.816354,0 1.494163,-0.6779 1.494163,-1.4942 0,-0.8163 -0.677809,-1.4942 -1.494163,-1.4942 z"
|
||||
id="path4354"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom_to.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
id="path4392"
|
||||
d="m 61.51751,906.36205 c -2.466762,0 -4.482491,2.0157 -4.482491,4.4825 0,0.8298 0.233749,1.5964 0.630351,2.2645 L 54,916.77459 l 1.587549,1.5875 3.665369,-3.66544 c 0.668139,0.39662 1.434831,0.63042 2.264592,0.63042 2.466762,0 4.48249,-2.01572 4.48249,-4.48252 0,-2.4668 -2.015728,-4.4825 -4.48249,-4.4825 z m 0,1.4942 c 1.659256,0 2.988327,1.329 2.988327,2.9883 0,1.6593 -1.329071,2.9883 -2.988327,2.9883 -1.659256,0 -2.988327,-1.329 -2.988327,-2.9883 0,-1.6593 1.329071,-2.9883 2.988327,-2.9883 z m 0,1.4941 c -0.816355,0 -1.494164,0.6779 -1.494164,1.4942 0,0.8163 0.677809,1.4942 1.494164,1.4942 0.816355,0 1.494163,-0.6779 1.494163,-1.4942 0,-0.8163 -0.677808,-1.4942 -1.494163,-1.4942 z"
|
||||
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:Sans;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;display:inline;overflow:visible;visibility:visible;fill:#b3b3b3;fill-opacity:1;stroke:none;stroke-width:3;marker:none;enable-background:accumulate"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom_to-off.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
d="m 60,945.36215 c -3.865993,0 -7,3.134 -7,7 0,3.86602 3.134007,7.00005 7,7.00005 3.865993,0 7,-3.13404 7,-7.00005 0,-3.866 -3.134007,-7 -7,-7 z m -0.15625,2.9687 a 1.0001,1.0001 0 0 1 0.09375,0 1.0001,1.0001 0 0 1 0.65625,1.8125 l -1.625,1.2188 5.03125,0 a 1.0001,1.0001 0 1 1 0,2 l -5,0 1.59375,1.1875 a 1.0001,1.0001 0 1 1 -1.1875,1.59372 l -3.71875,-2.78122 a 1.0043849,1.0043849 0 0 1 -0.15625,-1.9063 l 3.875,-2.9062 a 1.0001,1.0001 0 0 1 0.4375,-0.2188 z"
|
||||
id="path5321"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/arrow-left-16.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
inkscape:export-ydpi="89.996864"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/arrow-right-16.png"
|
||||
id="path5338"
|
||||
d="m 20.000015,959.36218 c 3.865993,0 7,-3.134 7,-7.00002 0,-3.866 -3.134007,-7 -7,-7 -3.865993,0 -7,3.134 -7,7 0,3.86602 3.134007,7.00002 7,7.00002 z m 0.15625,-2.9687 a 1.0001,1.0001 0 0 1 -0.09375,0 1.0001,1.0001 0 0 1 -0.65625,-1.81252 l 1.625,-1.2188 -5.03125,0 a 1.0001,1.0001 0 1 1 0,-2 l 5,0 -1.59375,-1.1875 a 1.0001,1.0001 0 1 1 1.1875,-1.5937 l 3.71875,2.7812 a 1.0043849,1.0043849 0 0 1 0.15625,1.9063 l -3.875,2.90622 a 1.0001,1.0001 0 0 1 -0.4375,0.2188 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:none"
|
||||
d="m 20.000015,985.3621 c -3.865993,0 -7,3.134 -7,7 0,3.8661 3.134007,7.0001 7,7.0001 3.865993,0 7,-3.134 7,-7.0001 0,-3.866 -3.134007,-7 -7,-7 z m -0.15625,1.7187 a 1.250125,1.250125 0 0 1 0.125,0 1.250125,1.250125 0 0 1 1.28125,1.2813 l 0,2.75 2.75,0 a 1.250125,1.250125 0 1 1 0,2.5 l -2.75,0 0,2.7501 a 1.250125,1.250125 0 1 1 -2.5,0 l 0,-2.7501 -2.75,0 a 1.2515615,1.2515615 0 0 1 -0.125,-2.5 1.250125,1.250125 0 0 1 0.125,0 l 2.75,0 0,-2.75 a 1.250125,1.250125 0 0 1 1.09375,-1.2813 z"
|
||||
id="path5340"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/zoom-grey-16.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
style="fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 94,827.36214 0,2 12,0 0,-2 -12,0 z m 0,3 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z"
|
||||
id="table-5"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="table"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/browse-data.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<g
|
||||
transform="translate(32,-48.000118)"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="text3784-6" />
|
||||
<g
|
||||
id="text4356"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
transform="translate(20,-164.00004)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4384"
|
||||
style="font-variant:normal;font-stretch:normal;font-size:20px;font-family:Arial;-inkscape-font-specification:Arial;fill:#4d4d4d"
|
||||
d="m 35.742187,999.43835 3.076172,-3.07617 -3.066406,-3.0664 1.191406,-1.19141 3.066407,3.06641 3.05664,-3.05664 1.171875,1.18164 -3.046875,3.05664 3.066406,3.0664 -1.191406,1.19138 L 40,997.54382 36.923828,1000.62 35.742187,999.43835" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 19.192256,877.3618 2e-6,-4.19993 -4.192255,10e-6 -3e-6,-1.62667 4.192263,0 0,-4.17331 1.608812,0.007 0.0067,4.16664 4.192255,0 -3.9e-5,1.62662 -4.19222,4e-5 -1.5e-5,4.19994 -1.615475,0"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:20px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="path4384-3" />
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="m 103.71429,906.36213 -1.14285,1.14286 2.28571,2.28572 L 106,908.64785 Z M 102,908.07641 l -6.285714,6.28574 2.285715,2.2857 6.285719,-6.28572 z M 95.714286,914.36215 94,918.36214 l 4.000001,-1.71429 z"
|
||||
id="path3684"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;font-size:30.4761982px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="81.647079"
|
||||
y="988.79706"
|
||||
id="text4457-6"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
y="988.79706"
|
||||
x="81.647079"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459-6" /></text>
|
||||
<g
|
||||
id="text4356-2"
|
||||
style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:Sans;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none"
|
||||
transform="translate(100,-84.00004)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4384-2"
|
||||
style="font-variant:normal;font-stretch:normal;font-size:20px;font-family:Arial;-inkscape-font-specification:Arial;fill:#ffffff"
|
||||
d="m 35.742187,999.43835 3.076172,-3.07617 -3.066406,-3.0664 1.191406,-1.19141 3.066407,3.06641 3.05664,-3.05664 1.171875,1.18164 -3.046875,3.05664 3.066406,3.0664 -1.191406,1.19138 L 40,997.54382 36.923828,1000.62 35.742187,999.43835" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 134,947.36216 0,2 12,0 0,-2 -12,0 z m 0,3.00002 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z m -5,2 0,1 4,0 0,-1 -4,0 z m 5,0 0,1 7,0 0,-1 -7,0 z"
|
||||
id="table-0"
|
||||
inkscape:connector-curvature="0"
|
||||
inkscape:label="table"
|
||||
inkscape:export-filename="/home/ybon/Code/js/leaflet-storage/src/img/browse-data.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864" />
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;stroke:none"
|
||||
d="m 103.71429,946.36216 -1.14285,1.1428 2.28571,2.2858 L 106,948.64786 Z M 102,948.07646 95.714286,954.36218 98,956.64788 l 6.28572,-6.2857 z m -6.285714,6.28572 -1.714286,4 4,-1.7143 z"
|
||||
id="path3684-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<path
|
||||
id="table-5-8-8-6"
|
||||
style="fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 54,986.3622 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="table-5-8-8-6-1"
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 94,986.3622 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z m -2,2 0,1 1,0 0,-1 z m 2,0 0,1 10,0 0,-1 z" />
|
||||
<circle
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
id="path3762"
|
||||
cx="180"
|
||||
cy="872.36218"
|
||||
r="8" />
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none"
|
||||
id="path3764"
|
||||
cx="180"
|
||||
cy="868.36218"
|
||||
r="1.5" />
|
||||
<path
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none"
|
||||
d="m 179,871.36218 2,0 0,6 -2,0 z"
|
||||
id="rect4274"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<g
|
||||
id="g4717"
|
||||
transform="translate(1.210815,-42.477)">
|
||||
<path
|
||||
sodipodi:nodetypes="cccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3862"
|
||||
d="m 140.0582,1028.2632 4.21686,4.2783 -4.14879,7.8737 -5.87101,-3.1269 -0.95195,-6.3455 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3864"
|
||||
d="m 135.91434,1032.4783 1.7373,3.8107 3.35847,-1.5041 0.59077,-2.4329 -2.98985,-1.6008"
|
||||
style="fill:#ffffff;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 219,905.36213 0,1 c -1.42857,0 -3.28571,0.59991 -4,2 l 0,1 10,0 0,-1 c -0.71429,-1.40009 -2.57143,-2 -4,-2 l 0,-1 z m -4,5 2,9 6,0 2,-9 z"
|
||||
id="delete-30"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
<g
|
||||
id="g4797"
|
||||
transform="translate(1.7400753,-40.674381)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8"
|
||||
d="m 180.4719,999.63731 1.46774,-13.3359"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-3-3"
|
||||
d="m 175.49003,999.69763 -2.4614,-13.1887"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<g
|
||||
id="g4621">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-6"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-3"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
id="g4400-8-39-2-3"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4779"
|
||||
transform="translate(2.3424661,-37.674411)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8-3"
|
||||
d="m 180.4719,956.63731 1.46774,-13.3359"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-3-3-8"
|
||||
d="m 175.49003,956.69763 -2.4614,-13.1887"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<g
|
||||
id="g4621-7"
|
||||
transform="translate(0,-43)">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1-3"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-6-1"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-3-3"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
id="g4400-8-39-2-3-6"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-5"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-0"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4621-7-8"
|
||||
transform="translate(-7.3214314,-41.982144)">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1-3-3"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-6-1-4"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-3-3-1"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
id="g4400-8-39-2-3-6-1"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-5-9"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-0-1"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4859"
|
||||
transform="translate(-2.300712,-40.87945)">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8-7"
|
||||
d="m 181.45436,1039.4096 1.46774,-13.3359"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<g
|
||||
transform="translate(0.9824624,39.77233)"
|
||||
id="g4621-0">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1-1"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-6-5"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-3-31"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
id="g4400-8-39-2-3-3"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-8"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
id="g4976"
|
||||
transform="translate(1.4371075,-38.784271)">
|
||||
<rect
|
||||
y="1028.9158"
|
||||
x="216.44643"
|
||||
height="4"
|
||||
width="4"
|
||||
id="rect4918"
|
||||
style="fill:#808080;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:4, 2;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8-7-0-0"
|
||||
d="m 218.99033,1031.3352 -6.55062,-7.6872"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:1.73726761;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:transform-center-x="-3.7509278"
|
||||
inkscape:transform-center-y="-0.64197712" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4349-2-2-9-3-8-7-0"
|
||||
d="m 213.65253,1037.7441 5.63872,-7.9526"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#808080;stroke-width:1.60523391;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<g
|
||||
style="fill:#4d4d4d;fill-opacity:1"
|
||||
transform="translate(40.872965,40.767561)"
|
||||
id="g4621-0-6">
|
||||
<g
|
||||
id="g4400-8-39-2-3-1-1-8"
|
||||
transform="matrix(0.57449139,0,0,0.57449139,77.909804,445.56677)"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#ffffff;stroke-width:4.22441769;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-6-5-5"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-3-31-4"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:4.22441769;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<g
|
||||
id="g4400-8-39-2-3-3-7"
|
||||
transform="matrix(0.52631038,0,0,0.52631038,86.648567,491.41283)"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:#000000;stroke-width:2.81627846;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4353-1-6-1-3-3-9"
|
||||
d="m 176,948.36218 8,8"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4355-9-7-1-7-8-7"
|
||||
d="m 176,956.36218 8,-8"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:evenodd;stroke:#4d4d4d;stroke-width:2.81627846;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#464646;stroke-width:1.37150156;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.74300319, 1.3715016;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="m 185.49562,824.86263 -4.65031,8.70807"
|
||||
id="path4873"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<rect
|
||||
style="fill:#464646;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:4, 2;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4918-7"
|
||||
width="4"
|
||||
height="4"
|
||||
x="182.41608"
|
||||
y="823.62122" />
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#464646;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="m 181.02836,833.2798 -6.35851,6.35851"
|
||||
id="path4873-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<g
|
||||
id="g4244"
|
||||
transform="matrix(0.51357238,-0.54309229,0.54309229,0.51357238,-430.0199,562.22551)">
|
||||
<path
|
||||
transform="matrix(-0.90185488,0.43203909,-0.43203909,-0.90185488,0,0)"
|
||||
sodipodi:open="true"
|
||||
d="m 231.87666,-980.51414 a 8,8 0 0 1 -8.12623,-4.12713 8,8 0 0 1 1.012,-9.05786 8,8 0 0 1 8.83671,-2.23192 8,8 0 0 1 5.1918,7.49093"
|
||||
sodipodi:end="0"
|
||||
sodipodi:start="1.4346606"
|
||||
sodipodi:ry="8"
|
||||
sodipodi:rx="8"
|
||||
sodipodi:cy="-988.44012"
|
||||
sodipodi:cx="230.79094"
|
||||
sodipodi:type="arc"
|
||||
id="path4240"
|
||||
style="fill:none;fill-opacity:1;stroke:#464646;stroke-width:1.33785295;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4242"
|
||||
d="m 216,980.36218 -1.59512,4.19351 3.53553,1.89404"
|
||||
style="fill:none;fill-rule:evenodd;stroke:#464646;stroke-width:1.33785295;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
<rect
|
||||
style="fill:#464646;fill-opacity:1;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:4, 2;stroke-dashoffset:0;stroke-opacity:1"
|
||||
id="rect4918-7-3"
|
||||
width="4"
|
||||
height="4"
|
||||
x="178.20859"
|
||||
y="832.3382" />
|
||||
<g
|
||||
id="g4140"
|
||||
transform="translate(0,-40)">
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 216,918.36218 4,-8"
|
||||
id="path4349-2-2-9-3-8-3-5"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 220,910.36218 8,-4"
|
||||
id="path4349-2-2-9-3-8-3-8"
|
||||
inkscape:connector-curvature="0" />
|
||||
<rect
|
||||
style="fill:#808080;fill-opacity:1;stroke:none"
|
||||
id="rect4918-1"
|
||||
width="4"
|
||||
height="4"
|
||||
x="218.05635"
|
||||
y="908.49438" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2.48200011;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217,907.36218 6,6"
|
||||
id="path4353-1-6-1-3-5-1-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:1.48223662;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217,907.36218 6,6"
|
||||
id="path4353-1-6-1-3-5-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;stroke:#464646;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 222.64055,838.8915 1.46774,-13.3359"
|
||||
id="path4349-2-2-9-3-8-9"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:none;stroke:#808080;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 217.65868,838.95182 -2.4614,-13.1887"
|
||||
id="path4349-2-2-3-3-3"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 219,1025.3621 0,1 c -1.42857,0 -3.28571,0.5999 -4,2 l 0,1 10,0 0,-1 c -0.71429,-1.4001 -2.57143,-2 -4,-2 l 0,-1 z m -4,5 2,9 6,0 2,-9 z"
|
||||
id="delete-30-6"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 37 KiB |
BIN
umap/static/umap/img/24-white.png
Normal file
After Width: | Height: | Size: 19 KiB |
475
umap/static/umap/img/24-white.svg
Normal file
|
@ -0,0 +1,475 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="200"
|
||||
height="200"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.92.2 2405546, 2018-03-11"
|
||||
sodipodi:docname="24-white.svg"
|
||||
inkscape:export-filename="/home/ybon/Code/py/umap/umap/static/umap/img/24-white.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="22.4"
|
||||
inkscape:cx="124.98783"
|
||||
inkscape:cy="45.00337"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2031"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="55"
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3004"
|
||||
empspacing="4"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="80,112"
|
||||
id="guide3084"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,40"
|
||||
id="guide3086"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="40,104"
|
||||
id="guide3088"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,80"
|
||||
id="guide3090"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="120,84"
|
||||
id="guide3512"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="160,84"
|
||||
id="guide3872"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,120"
|
||||
id="guide25561"
|
||||
inkscape:locked="false" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="-12,160"
|
||||
id="guide25563"
|
||||
inkscape:locked="false" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-852.36218)">
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 26,861.36218 -2,2 4,4 2,-2 z m -3,3 -11,11 4,4 11,-11 z m -11,11 -3,7 7,-3 z"
|
||||
id="path3684"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="13.786797"
|
||||
y="953.80786"
|
||||
id="text4457"><tspan
|
||||
y="953.80786"
|
||||
x="13.786797"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459"
|
||||
style="font-size:40px;line-height:1.25;font-family:sans-serif"> </tspan></text>
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 58,862.36216 0,2 c -2,0 -4,0 -5,2 l 0,1 14,0 0,-1 c -1,-2 -3,-2 -5,-2 l 0,-2 z m -5,6 3,14.00002 8,0 3,-14.00002 z"
|
||||
id="delete-30"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
<g
|
||||
id="g3505"
|
||||
transform="translate(-41.170559,-15.03125)">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect4452"
|
||||
d="m 47.999998,965.36218 3.000002,0 0,8 2,0 0,-8 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,8 2,0 0,-8 3,0 0,11 -24,0 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
<text
|
||||
id="text4455"
|
||||
y="964.36218"
|
||||
x="49.170559"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-weight:bold;font-size:8px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'Sans Bold';fill:#4d4d4d;fill-opacity:1"
|
||||
y="964.36218"
|
||||
x="49.170559"
|
||||
id="tspan4457"
|
||||
sodipodi:role="line">0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
x="65.048965"
|
||||
y="964.36218"
|
||||
id="text4459"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4461"
|
||||
x="65.048965"
|
||||
y="964.36218"
|
||||
style="font-weight:bold;font-size:8px;line-height:1.25;font-family:sans-serif;-inkscape-font-specification:'Sans Bold';fill:#4d4d4d;fill-opacity:1">1</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
id="g3702"
|
||||
transform="translate(16.000002,8.0000032)">
|
||||
<circle
|
||||
transform="matrix(0.02040816,0,0,0.02040816,74,934.36218)"
|
||||
id="circle3841"
|
||||
r="440"
|
||||
cy="490"
|
||||
cx="490"
|
||||
sodipodi:cx="490"
|
||||
sodipodi:cy="490"
|
||||
sodipodi:rx="440"
|
||||
sodipodi:ry="440"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:100;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1"
|
||||
id="path3843"
|
||||
d="m 83.918365,938.74993 c -2.653058,0 -4.877549,1.85717 -5.448974,4.34692 l 2.673466,0 c 0.489792,-1.06125 1.551017,-1.79592 2.775508,-1.79592 1.693875,0 3.061225,1.36734 3.061225,3.06125 0,1.69384 -1.36735,3.06117 -3.061225,3.06117 -1.224491,0 -2.285716,-0.73467 -2.775508,-1.7755 l -2.673466,0 c 0.571425,2.46942 2.795916,4.32658 5.448974,4.32658 3.102041,0 5.612241,-2.51025 5.612241,-5.61225 0,-3.10208 -2.5102,-5.61225 -5.612241,-5.61225 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g3692"
|
||||
transform="translate(72,8.0001016)"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
sodipodi:nodetypes="sccccsssccs"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect2985"
|
||||
d="m 105.25387,934.36268 c -3.17753,0 -6.346004,2.1278 -7.25387,6.3794 0,2.551 1.806672,7.6679 7.25387,13.6201 1.46368,-1.5994 2.66945,-3.1177 3.64397,-4.5613 -1.4505,-2.1639 -2.41497,-4.0873 -2.96285,-5.7095 -0.22599,0.041 -0.44225,0.063 -0.68112,0.063 -2.0056,0 -3.64396,-1.5346 -3.64396,-3.413 0,-1.8785 1.63836,-3.3811 3.64396,-3.3811 0.51205,0 0.98854,0.076 1.43034,0.2552 0.64347,-0.9222 1.4345,-1.6571 2.31579,-2.169 -1.14444,-0.7114 -2.44633,-1.0845 -3.74613,-1.0845 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
id="path3378"
|
||||
d="m 111,934.36218 c -3.0625,0 -6.125,2.1277 -7,6.383 0,2.5532 1.75,7.6596 7,13.617 5.25,-5.9574 7,-11.0638 7,-13.617 -0.875,-4.2553 -3.9375,-6.383 -7,-6.383 z m 0,2.9788 c 1.933,0 3.5,1.5241 3.5,3.4042 0,1.8801 -1.567,3.4043 -3.5,3.4043 -1.93299,0 -3.5,-1.5242 -3.5,-3.4043 0,-1.8801 1.56701,-3.4042 3.5,-3.4042 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g25565"
|
||||
transform="translate(88.000001,-96.00002)">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
id="rect7231"
|
||||
d="m 11.999999,957.36218 c -7.3730698,6.5006 -6.8762698,2.8816 -11.9999998343861,5 l 0,2 11.9999998343861,6 12,-6 0,-2 c -7.38473,-0.182 -5.29117,-2.2182 -12,-5 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect7902"
|
||||
d="M -8.343861e-7,971.36218 11.999999,977.3622 l 12,-6.00002 0,2 -12,6.00002 L -8.343861e-7,973.36218 z"
|
||||
style="fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
<path
|
||||
style="fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m -8.343861e-7,968.36218 11.9999998343861,6 12,-6 0,2 -12,6.00002 L -8.343861e-7,970.36218 z"
|
||||
id="path7953"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7955"
|
||||
d="m -8.343861e-7,965.36218 11.9999998343861,6 12,-6 0,2 -12,6 -11.9999998343861,-6 z"
|
||||
style="fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 180,900.61217 c -3.5,0 -7,2.5 -8,7.5 0,3 2,9 8,16 6,-7 8,-13 8,-16 -1,-5 -4.5,-7.5 -8,-7.5 z m 0,3.5 c 2.20914,0 4,1.79086 4,4 0,2.20914 -1.79086,4 -4,4 -2.20914,0 -4,-1.79086 -4,-4 0,-2.20914 1.79086,-4 4,-4 z"
|
||||
id="rect2985-3" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 131,900.36217 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-0.34375 10,4 0,1.34375 0,0.4375 -7.09375,11.0625 -2.40625,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.375 7.09375,-11.125 2.40625,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.5625 -10,-4 0,-1.5625 0,-0.5 -0.5,0 -3,0 -0.5,0 z m 1,1 2,0 0,2 -2,0 0,-2 z m 14,5 2,0 0,2 -2,0 0,-2 z m -10,15 2,0 0,2 -2,0 0,-2 z"
|
||||
id="rect4058" />
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 92,901.36217 0,0.5 0,3 0,0.5 0.5,0 1.3125,0 -1.59375,14 -1.71875,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5937 10,-0.6875 0,1.2812 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -1.15625,0 1.375,-8 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.8125 -10,-3.5937 0,-2.2188 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z m -2,12 2,0 0,2 -2,0 z m -14,1 c 2,0 0,0 2,0 l 0,2 -2,0 z"
|
||||
id="rect4058-1"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<g
|
||||
transform="matrix(0.2444191,0,0,0.2444191,127.75289,860.16787)"
|
||||
id="Layer_1" />
|
||||
<g
|
||||
transform="matrix(0.2444191,0,0,0.2444191,127.75289,860.16787)"
|
||||
id="Isolation_Mode"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.99828532;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 98.762,43.652 C 98.576,42.266 97.281,41.07 95.886,40.993 l -6.172,-0.337 c -1.395,-0.076 -2.899,-1.224 -3.341,-2.55 l -2.28,-5.518 c -0.629,-1.249 -0.379,-3.121 0.553,-4.161 l 4.122,-4.6 c 0.933,-1.042 0.962,-2.77 0.066,-3.842 l -8.813,-8.813 c -1.073,-0.897 -2.803,-0.867 -3.845,0.065 l -4.598,4.122 c -1.039,0.934 -2.915,1.182 -4.161,0.551 l -5.521,-2.279 c -1.324,-0.442 -2.472,-1.945 -2.549,-3.34 L 59.01,4.121 C 58.933,2.725 57.738,1.43 56.351,1.243 c 0,0 -3.252,-0.44 -6.248,-0.44 -2.991,0 -6.243,0.44 -6.243,0.44 -1.386,0.188 -2.582,1.483 -2.658,2.878 l -0.338,6.17 c -0.076,1.396 -1.224,2.898 -2.551,3.34 l -5.517,2.279 c -1.249,0.631 -3.122,0.382 -4.161,-0.551 l -4.601,-4.122 c -1.042,-0.932 -2.769,-0.962 -3.842,-0.065 l -8.813,8.813 c -0.897,1.073 -0.867,2.801 0.066,3.842 l 4.122,4.6 c 0.933,1.041 1.182,2.913 0.551,4.161 l -2.279,5.518 c -0.442,1.326 -1.946,2.474 -3.34,2.55 l -6.17,0.337 c -1.396,0.077 -2.691,1.272 -2.879,2.659 0,0 -0.439,3.253 -0.439,6.243 0,2.99 0.44,6.24 0.44,6.24 0.188,1.389 1.483,2.582 2.879,2.659 l 6.169,0.339 c 1.396,0.075 2.898,1.225 3.341,2.549 l 2.278,5.517 c 0.631,1.248 0.381,3.122 -0.551,4.163 l -4.122,4.598 c -0.933,1.042 -0.963,2.771 -0.066,3.845 l 8.814,8.813 c 1.073,0.896 2.801,0.866 3.842,-0.066 l 4.6,-4.122 c 1.041,-0.932 2.913,-1.182 4.161,-0.553 l 5.517,2.28 c 1.327,0.441 2.475,1.946 2.55,3.343 l 0.338,6.168 c 0.076,1.395 1.272,2.692 2.658,2.88 0,0 3.252,0.439 6.244,0.439 2.996,0 6.25,-0.439 6.25,-0.439 1.385,-0.188 2.58,-1.485 2.657,-2.88 L 59.347,89.5 c 0.077,-1.396 1.225,-2.901 2.551,-3.343 l 5.517,-2.28 c 1.248,-0.629 3.122,-0.379 4.163,0.553 l 4.598,4.122 c 1.042,0.933 2.771,0.964 3.843,0.067 l 8.815,-8.814 C 89.73,78.732 89.7,77.002 88.768,75.96 l -4.122,-4.598 c -0.932,-1.041 -1.182,-2.915 -0.553,-4.163 l 2.28,-5.517 c 0.441,-1.324 1.946,-2.474 3.341,-2.549 l 6.172,-0.339 c 1.395,-0.077 2.692,-1.271 2.876,-2.659 0,0 0.441,-3.25 0.441,-6.24 0,-2.99 -0.441,-6.243 -0.441,-6.243 z M 50.104,62.361 c -6.886,0 -12.468,-5.585 -12.468,-12.467 0,-6.885 5.582,-12.467 12.468,-12.467 6.89,0 12.475,5.582 12.475,12.467 -10e-4,6.882 -5.586,12.467 -12.475,12.467 z"
|
||||
id="path27812"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.99828532;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 180,860.36218 c -6.62742,0 -12,5.37258 -12,12 0,6.62742 5.37258,12 12,12 6.62742,0 12,-5.37258 12,-12 0,-6.62742 -5.37258,-12 -12,-12 z m 0,5 7,7 -5,0 0,6 -4,0 0,-6 -5,0 z"
|
||||
id="path4700"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ssssscccccccc" />
|
||||
<polygon
|
||||
points="37.37,62.644 37.37,90.703 28.965,82.305 11.27,100 0,88.737 17.702,71.042 9.297,62.644 "
|
||||
id="polygon3044"
|
||||
transform="matrix(0.24,0,0,0.24,8,900.36218)"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:1.04166667;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<polygon
|
||||
points="71.042,17.708 62.644,9.31 62.644,37.357 90.71,37.37 82.298,28.958 100,11.263 88.743,0 "
|
||||
id="polygon3048"
|
||||
transform="matrix(0.24,0,0,0.24,8,900.36218)"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:1.04166667;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 20,909.43106 c -1.618801,0 -2.93112,1.31256 -2.93112,2.93112 0,1.62192 1.31256,2.93448 2.93112,2.93448 1.6188,0 2.9328,-1.31256 2.9328,-2.93448 0,-1.6188 -1.314,-2.93112 -2.9328,-2.93112 z"
|
||||
id="path3052"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
d="M 52.09375 54 C 48.729514 53.992 46.007497 56.6898 46 60 C 46.0075 63.31752 48.729514 65.99461 52.09375 66 C 54.336949 65.996659 56.291025 64.786304 57.34375 63 L 59.8125 63 L 61.78125 61.09375 L 63.28125 62.53125 L 64.71875 61.125 L 66.1875 62.5625 L 67.6875 61.125 L 69.15625 62.5625 L 71.71875 60.09375 C 72.087686 59.71854 72.096762 59.4354 71.71875 59.0625 L 69.625 57 L 57.375 57 C 56.327602 55.196673 54.352273 53.995338 52.09375 54 z M 49.4375 58.375 C 50.321767 58.371 51.024542 59.08352 51.03125 59.96875 C 51.02495 60.84166 50.322161 61.55442 49.4375 61.5625 C 48.538239 61.5535 47.804214 60.84166 47.8125 59.96875 C 47.8043 59.08352 48.538239 58.37077 49.4375 58.375 z "
|
||||
transform="translate(0,852.36218)"
|
||||
id="path3652"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<polygon
|
||||
points="0,50 12.5,50 12.5,87.5 43.75,87.5 43.75,62.5 56.25,62.5 56.25,87.5 87.5,87.5 87.5,50 100,50 50,0 "
|
||||
id="polygon3866"
|
||||
transform="matrix(0.24,0,0,0.24,128,941.86218)"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 32.000004,992.36245 c 0,-0.45066 -0.02933,-0.89466 -0.07867,-1.33333 l -1.348,0 c -0.601333,-4.82267 -4.417333,-8.63867 -9.24,-9.24133 v -1.34667 c -0.438667,-0.0493 -0.882667,-0.0787 -1.333333,-0.0787 -0.450667,0 -0.894667,0.0293 -1.333333,0.0787 v 1.348 c -4.822667,0.60133 -8.638667,4.41733 -9.2413342,9.24 l -1.3466668,0 C 8.029334,991.46779 8,991.91179 8,992.36245 c 0,0.45067 0.029333,0.89467 0.078667,1.33334 h 1.3480008 c 0.6013332,4.82266 4.4173332,8.63871 9.2400002,9.24141 v 1.348 c 0.438666,0.048 0.882666,0.077 1.333333,0.077 0.450666,0 0.894666,-0.029 1.333333,-0.079 v -1.348 c 4.821333,-0.6026 8.638667,-4.41735 9.241333,-9.24001 h 1.348 c 0.048,-0.43734 0.07733,-0.88134 0.07733,-1.33334 z m -10.666667,7.88005 v -1.21338 c 0,-0.73733 -0.597333,-1.33333 -1.333333,-1.33333 -0.736,0 -1.333333,0.596 -1.333333,1.33333 v 1.21338 c -3.346667,-0.56271 -5.982667,-3.19738 -6.545334,-6.54538 l 1.212,-0.001 c 0.737334,0 1.333334,-0.59734 1.333334,-1.33334 0,-0.736 -0.596,-1.33333 -1.333334,-1.33333 h -1.213333 c 0.564,-3.34667 3.2,-5.98267 6.546667,-6.54667 v 1.21334 c 0,0.736 0.597333,1.33333 1.333333,1.33333 0.736,0 1.333333,-0.59733 1.333333,-1.33333 v -1.21334 c 3.348,0.56267 5.984,3.19867 6.546667,6.54667 H 26.66667 c -0.737333,0 -1.333333,0.59733 -1.333333,1.33333 0,0.736 0.596,1.33334 1.333333,1.33334 l 1.213334,0.001 c -0.564,3.348 -3.198667,5.98267 -6.546667,6.54538 z"
|
||||
id="path4611"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<g
|
||||
id="g4758"
|
||||
transform="translate(36.000001,-11.999806)">
|
||||
<path
|
||||
transform="matrix(1.3996164,0,0,1.3996164,46.585677,990.77388)"
|
||||
d="M 20.301507,9.7085428 A 7.8592963,7.8592963 0 0 1 12.442211,17.567839 7.8592963,7.8592963 0 0 1 4.5829148,9.7085428 7.8592963,7.8592963 0 0 1 12.442211,1.8492465 7.8592963,7.8592963 0 0 1 20.301507,9.7085428 Z"
|
||||
sodipodi:ry="7.8592963"
|
||||
sodipodi:rx="7.8592963"
|
||||
sodipodi:cy="9.7085428"
|
||||
sodipodi:cx="12.442211"
|
||||
id="path4309"
|
||||
style="fill:none;stroke:#464646;stroke-width:1.42896295;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,44.942766,1049.7278)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,37.400316,1044.6618)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819-2"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,45.211124,1039.6862)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819-0"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4850"
|
||||
d="m 66.386295,999.47498 -8.019134,4.91992 8.13935,5.3224"
|
||||
style="fill:none;stroke:#464646;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="search"
|
||||
d="m 72,1001.1668 -6.436799,-6.4386 c 0.866371,-1.42919 1.374087,-3.10412 1.374087,-4.89829 0,-5.23345 -4.235188,-9.47135 -9.468644,-9.47316 C 52.238801,980.35875 48,984.59646 48,989.82901 c 0,5.22894 4.239705,9.46687 9.471354,9.46687 1.795077,0 3.467289,-0.50773 4.896485,-1.3741 l 6.440412,6.44042 L 72,1001.1668 z M 51.612738,989.82901 c 0.0054,-3.23602 2.6226,-5.8532 5.857713,-5.85862 3.234209,0.007 5.852292,2.6226 5.857713,5.85862 -0.0063,3.2333 -2.623504,5.85231 -5.857713,5.85683 -3.236016,0 -5.853196,-2.62353 -5.857713,-5.85683 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<g
|
||||
id="g13779"
|
||||
transform="translate(0.8783882,0.74457185)">
|
||||
<g
|
||||
inkscape:export-ydpi="28.799999"
|
||||
inkscape:export-xdpi="28.799999"
|
||||
inkscape:export-filename="/home/ybon/Work/osmtouch64.png"
|
||||
id="g4200"
|
||||
transform="matrix(0.15420392,0,0,0.15420392,123.6912,976.19847)">
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="M 128.96875,25.03125 C 116.4464,25.02855 103.92273,29.677098 94.375,38.96875 77.24854,55.63759 76.65542,83.22095 90.25,101.8125 L 77.03125,114.25 c 0.14747,0.11709 9,8.5625 9,8.5625 l 12.5,-12.25 c 21.41449,14.9813 47.90478,12.41882 65.03125,-4.25 19.09544,-18.58519 19.09526,-48.75856 0,-67.34375 -9.54772,-9.292593 -22.0714,-13.93479 -34.59375,-13.9375 z m 0,7.9375 c 10.43487,0.0027 20.85607,3.880217 28.8125,11.625 15.91286,15.48761 15.94433,40.63733 0.0312,56.125 -15.91287,15.48766 -41.77464,15.48761 -57.6875,0 -15.912892,-15.48767 -15.912892,-40.63734 0,-56.125 7.95643,-7.743803 18.40888,-11.627705 28.84375,-11.625 z"
|
||||
id="path4189"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="m 63.879368,116.05569 -39.21875,37.9375 c -3.223956,3.12021 -3.215175,8.18323 0,11.3125 l 8.96875,8.71875 c 3.215174,3.12926 8.369796,3.12021 11.59375,0 l 39.21875,-37.9375 c 3.22396,-3.12021 3.21518,-8.18324 0,-11.3125 l -8.96875,-8.71875 c -3.48388,-3.074 -8.57545,-2.83371 -11.59375,0 z"
|
||||
id="path4169"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:export-ydpi="28.799999"
|
||||
inkscape:export-xdpi="28.799999"
|
||||
inkscape:export-filename="/home/ybon/Work/osmtouch64.png"
|
||||
d="m 136.26913,998.21967 c -1.72863,1.6788 -1.93723,1.87263 -3.54806,3.46653 l 4.95517,-1.1486 c 0.14934,-0.65943 0.32405,-1.47613 0.3714,-1.66783 -0.78224,-0.026 -1.22826,-0.2704 -1.77851,-0.6501 z m 5.35377,-1.9131 c -0.18365,2.1461 -1.13564,2.3061 -2.93951,2.5878 -0.12852,0.5649 -0.21541,0.9577 -0.36624,1.62393 l 4.62612,1.1276 c 0.62063,-2.60243 1.11924,-4.71073 1.10834,-4.72243 -0.0163,-0.017 -1.23829,-0.3245 -2.42871,-0.6169 z m -2.2215,-0.5252 c -0.006,0.01 -0.26454,1.1303 -0.59754,2.5925 2.113,-0.3337 2.1769,-1.0052 2.24078,-2.207 -0.86704,-0.2111 -1.63385,-0.3935 -1.64324,-0.3855 z m -0.62164,-0.034 c -0.51393,0.043 -0.7713,0.095 -1.33482,0.2505 0.18112,0.3385 0.26544,1.0343 -0.75604,1.847 0.53504,0.3261 1.00256,0.4526 1.47405,0.5095 0.43221,-1.9749 0.65371,-2.2826 0.61681,-2.6071 z m -10.11963,-0.024 -0.89631,3.4985 3.04553,-2.9636 c -0.68349,-0.1707 -1.30768,-0.3263 -2.14922,-0.5349 z m 21.21268,-0.1205 c -2.83532,0.7227 -5.14796,1.32 -5.15619,1.33 -0.007,0.01 -0.51887,2.1316 -1.1469,4.75143 l 5.055,-1.2336 z m -8.24991,-0.7325 0,0.7855 c 1.04505,0.2593 2.11678,0.518 2.33715,0.5204 0,0 -0.117,-0.4693 -0.2554,-1.0505 -0.003,0 -0.006,0 -0.01,0 -0.90225,0.023 -1.21656,-0.03 -2.07211,-0.2554 z m -2.56846,-1.171 -0.01,0.01 0.37105,1.4312 c 0.0872,-0.01 0.81259,0.1734 1.62878,0.3758 9e-5,-0.3205 6.2e-4,-0.5828 0.005,-0.8143 -0.69971,-0.2361 -1.37206,-0.5709 -1.99501,-1.0024 z m -10.83283,-0.4626 0.49635,1.8553 c 0,0 1.37566,0.3324 2.63592,0.6361 l 0.14457,-0.1398 c -1.8692,-0.6628 -1.89514,-2.0501 -3.27684,-2.3516 z m 21.08739,-0.4144 c -1.86844,1.552 -2.86815,1.9475 -4.96826,2.2793 0.12835,0.5155 0.24073,0.9576 0.27468,1.0602 0.0287,0.087 1.76628,-0.3099 5.24775,-1.1903 z m -12.12428,-0.9445 c -0.23088,-0.3157 -0.43555,-0.6442 -0.612,-0.9831 -1.36011,0.296 -3.60183,0.8253 -3.66716,0.8819 -0.0276,0.024 0.17181,0.9075 0.44815,2.0047 0.67591,-0.6232 1.45236,-0.5109 1.96721,-0.1653 m 1.91729,1.8404 c 0.47244,-0.158 1.12276,-0.2812 1.53673,-0.3307 -0.0519,-0.3724 -0.0877,-0.6071 -0.23612,-0.9927 m -11.00149,-3.6479 0.49635,1.9613 c 2.50401,0.9496 2.69056,2.8506 4.03339,2.5878 l 0.86258,-0.8385 c -0.26762,-1.1089 -0.5801,-2.2764 -0.65536,-2.3516 -0.0174,-0.017 -4.73696,-1.359 -4.73696,-1.359 z m 8.26437,-4.2309 -1.67697,0.4144 c -0.35276,1.4788 -0.8278,3.3283 -1.11316,4.4237 1.37526,-0.3807 1.74872,-0.4606 3.29611,-0.771 -0.54316,-1.295 -0.7139,-2.7021 -0.50598,-4.0671 z m -7.08374,-1.0602 -1.18544,4.6358 c 1.82562,0.517 2.88589,0.8108 4.73213,1.2432 0.38982,-1.204 0.82942,-2.5341 1.14689,-4.443 -1.23121,-0.383 -1.96932,-0.6187 -4.69358,-1.436 z m 8.886,-5.2477 -4.61166,1.1228 c 0.65055,2.8245 1.12699,4.8412 1.15653,4.8718 0.0283,0.029 0.85135,-0.1466 1.7878,-0.3614 0.44052,-1.7435 0.82365,-2.3477 2.12994,-3.6719 -0.14019,-0.6014 -0.29567,-1.2597 -0.46261,-1.9613 z m 0.61681,-0.063 c 0.19042,0.7975 0.20798,0.855 0.37588,1.5565 0.53081,-0.4268 1.10819,-0.7739 1.7107,-1.0457 z m -10.77981,0 1.20471,4.6358 c 2.64567,0.7792 4.75728,1.3919 4.77069,1.3782 0.0142,-0.015 -0.46615,-2.1739 -1.06979,-4.8574 z m 21.18376,-0.043 -1.8649,0.4529 c 0.85846,0.3551 1.66426,0.8652 2.3757,1.5276 z m -10.27066,8.6587 c 0.41381,2.527 3.18363,4.4267 6.07178,4.112 1.0773,-2.5454 1.8315,-2.422 2.24706,-4.9716 0.0167,-2.2665 -2.96358,-0.8684 -4.31818,-0.7964 -2.32675,-0.074 -2.21097,-2.8133 -2.46342,-3.2185 -0.71838,0.5281 -1.97222,2.1788 -1.53724,4.8745 z m 2.65684,-5.7481 c 0.75831,2.395 0.92104,3.2135 3.33948,2.2745 1.81917,-0.5274 3.26924,0.1901 3.50475,1.0508 0.38584,1.2833 -0.24196,3.1638 -1.92416,6.0907 2.63491,-1.4075 3.4684,-4.4853 2.52192,-6.8474 -1.28937,-2.6947 -4.29141,-4.0352 -7.44199,-2.5686 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="path5801"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g7291"
|
||||
transform="translate(0,3.6429698)"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<path
|
||||
id="path3378-6"
|
||||
d="m 178.57143,979.21934 c -3.0625,0 -6.125,2.1197 -7,6.375 0,2.5532 1.75,7.6676 7,13.625 3.4166,-3.877 5.31568,-7.3755 6.25,-10.0625 -1.31416,-0.1622 -2.497,-0.7235 -3.40625,-1.5938 -0.63462,0.8653 -1.6677,1.4375 -2.84375,1.4375 -1.933,0 -3.5,-1.5261 -3.5,-3.4062 0,-1.8801 1.567,-3.4063 3.5,-3.4063 0.36776,0 0.72951,0.085 1.0625,0.1875 0.14352,-1.0312 0.55799,-1.956 1.15625,-2.75 -0.72276,-0.259 -1.46314,-0.4062 -2.21875,-0.4062 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6764"
|
||||
d="m 185.57143,978.21934 c -2.76142,0 -5,2.2386 -5,5 0,2.7615 2.23858,5 5,5 2.76142,0 5,-2.2385 5,-5 0,-2.7614 -2.23858,-5 -5,-5 z m -1.81818,2.2727 1.81818,1.8182 1.81818,-1.8182 0.90909,0.9091 -1.81818,1.8182 1.81818,1.8182 -0.90909,0.9091 -1.81818,-1.8182 -1.81818,1.8182 -0.90909,-0.9091 1.81818,-1.8182 -1.81818,-1.8182 0.90909,-0.9091 z"
|
||||
style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-opacity:1;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 10.1875,1017.3622 0,0.5 0,3 0,0.5 0.5,0 1.3125,0 -1.59375,14 -1.71875,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5938 c 0,0 13.716518,-10.9062 13.71875,-10.9062 l 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.8125 -10,-3.5938 0,-2.2187 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z m -16,13 2,0 0,2 -2,0 z"
|
||||
id="rect4058-1-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 18,1043.3622 -3.5,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5937 10,-0.6875 0,1.2812 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -1.15625,0 -2.4375,-8 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.6875,0 c 0,3 0,3 0,3 0,0 -7.8125,10 -8,10 z m 9.1875,-12 2,0 0,2 -2,0 z m 1.8125,12 2,0 0,2 -2,0 z m -14,1 c 2,0 0,0 2,0 l 0,2 -2,0 z"
|
||||
id="rect4058-1-2-0"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 51,1020.3622 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-0.3438 10,4 0,1.3438 0,0.4375 1.09375,0.062 2.40625,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.5625 -10,-4 0,-1.5625 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z"
|
||||
id="rect4058-9"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="m 55.09375,1030.5184 0,1.3438 0,0.4375 7.09375,11.0625 2.40625,0 0.5,0 0,0.5 0,3 0,0.5 -0.5,0 -3,0 -0.5,0 0,-0.5 0,-3 0,-0.375 -7.09375,-11.125 -2.40625,0 -0.5,0 0,-0.5 0,-3 0,-0.5 0.5,0 3,0 0.5,0 0,0.5 0,0.5625 z m -1,-1.1562 -2,0 0,2 2,0 z m 10,15 -2,0 0,2 2,0 z"
|
||||
id="rect4058-9-5"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccc" />
|
||||
<g
|
||||
transform="matrix(0.30998724,0,0,0.31293167,40.532594,935.93484)"
|
||||
id="g5939"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none">
|
||||
<ellipse
|
||||
cx="62.837002"
|
||||
cy="23.440001"
|
||||
rx="32.162998"
|
||||
ry="9.2799997"
|
||||
id="ellipse5941"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,50.482 c -17.766,0 -32.163,-4.154 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.052 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.069 32.135,-9.121 l 0.028,0 0,-11.832 c -0.021,5.123 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5943"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,41.189 0,-0.146 -0.026,0 C 94.978,41.092 95,41.141 95,41.189 Z"
|
||||
id="path5945"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,64.884 c -17.766,0 -32.163,-4.155 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.053 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.068 32.135,-9.121 l 0.028,0 0,-11.833 c -0.021,5.123 -14.413,9.271 -32.161,9.271 z"
|
||||
id="path5947"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,55.59 0,-0.146 -0.026,0 C 94.978,55.492 95,55.542 95,55.59 Z"
|
||||
id="path5949"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,79.285 c -17.766,0 -32.163,-4.154 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.052 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.069 32.135,-9.121 l 0.028,0 0,-11.832 c -0.021,5.123 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5951"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,69.992 0,-0.146 -0.026,0 C 94.978,69.895 95,69.943 95,69.992 Z"
|
||||
id="path5953"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,35.762 c -17.766,0 -32.163,-4.154 -32.163,-9.281 0,-0.057 0.024,-0.105 0.028,-0.161 l -0.03,0 0,12 0.028,0 c 0.298,5.052 14.555,9.125 32.135,9.125 17.576,0 31.837,-4.073 32.135,-9.125 l 0.028,0 0,-11.828 c -0.021,5.119 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5955"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,26.469 0,-0.149 -0.026,0 C 94.978,26.371 95,26.42 95,26.469 Z"
|
||||
id="path5957"
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-opacity:1;stroke-width:0.80268166;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 100.125,1044.2372 c 6.62742,0 12,-5.3726 12,-12 0,-6.6274 -5.37258,-12 -12,-12 -6.62742,0 -12,5.3726 -12,12 0,6.6274 5.37258,12 12,12 z m 0,-5 -7,-7 h 5 v -6 h 4 v 6 h 5 z"
|
||||
id="path4700-3"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ssssscccccccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 38 KiB |
BIN
umap/static/umap/img/24.png
Normal file
After Width: | Height: | Size: 14 KiB |
461
umap/static/umap/img/24.svg
Normal file
|
@ -0,0 +1,461 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="200"
|
||||
height="200"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="24.svg"
|
||||
inkscape:export-filename="/home/ybon/Code/js/Leaflet.Storage/src/img/24.png"
|
||||
inkscape:export-xdpi="89.996864"
|
||||
inkscape:export-ydpi="89.996864">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="31.678384"
|
||||
inkscape:cx="65.861168"
|
||||
inkscape:cy="104.42429"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="true"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2031"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="55"
|
||||
inkscape:window-maximized="1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true">
|
||||
<inkscape:grid
|
||||
type="xygrid"
|
||||
id="grid3004"
|
||||
empspacing="4"
|
||||
visible="true"
|
||||
enabled="true"
|
||||
snapvisiblegridlinesonly="true" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="80,112"
|
||||
id="guide3084" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,40"
|
||||
id="guide3086" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="40,104"
|
||||
id="guide3088" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,80"
|
||||
id="guide3090" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="120,84"
|
||||
id="guide3512" />
|
||||
<sodipodi:guide
|
||||
orientation="1,0"
|
||||
position="160,84"
|
||||
id="guide3872" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="0,120"
|
||||
id="guide25561" />
|
||||
<sodipodi:guide
|
||||
orientation="0,1"
|
||||
position="-12,160"
|
||||
id="guide25563" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(0,-852.36218)">
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="m 26,861.36218 -2,2 4,4 2,-2 z m -3,3 -11,11 4,4 11,-11 z m -11,11 -3,7 7,-3 z"
|
||||
id="path3684"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="13.786797"
|
||||
y="953.80786"
|
||||
id="text4457"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
y="953.80786"
|
||||
x="13.786797"
|
||||
sodipodi:role="line"
|
||||
id="tspan4459" /></text>
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 58,862.36216 0,2 c -2,0 -4,0 -5,2 l 0,1 14,0 0,-1 c -1,-2 -3,-2 -5,-2 l 0,-2 z m -5,6 3,14.00002 8,0 3,-14.00002 z"
|
||||
id="delete-30"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:label="delete-30" />
|
||||
<g
|
||||
id="g3505"
|
||||
transform="translate(-41.170559,-15.03125)">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect4452"
|
||||
d="m 47.999998,965.36218 3.000002,0 0,8 2,0 0,-8 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,5 1,0 0,-5 2,0 0,8 2,0 0,-8 3,0 0,11 -24,0 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4455"
|
||||
y="964.36218"
|
||||
x="49.170559"
|
||||
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
xml:space="preserve"><tspan
|
||||
style="font-size:8px;font-weight:bold;fill:#4d4d4d;fill-opacity:1;-inkscape-font-specification:Sans Bold"
|
||||
y="964.36218"
|
||||
x="49.170559"
|
||||
id="tspan4457"
|
||||
sodipodi:role="line">0</tspan></text>
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Sans"
|
||||
x="65.048965"
|
||||
y="964.36218"
|
||||
id="text4459"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan4461"
|
||||
x="65.048965"
|
||||
y="964.36218"
|
||||
style="font-size:8px;font-weight:bold;fill:#4d4d4d;fill-opacity:1;-inkscape-font-specification:Sans Bold">1</tspan></text>
|
||||
</g>
|
||||
<g
|
||||
id="g3702"
|
||||
transform="translate(16.000002,8.0000032)">
|
||||
<circle
|
||||
transform="matrix(0.02040816,0,0,0.02040816,74,934.36218)"
|
||||
id="circle3841"
|
||||
r="440"
|
||||
cy="490"
|
||||
cx="490"
|
||||
sodipodi:cx="490"
|
||||
sodipodi:cy="490"
|
||||
sodipodi:rx="440"
|
||||
sodipodi:ry="440"
|
||||
style="fill:none;stroke:#4d4d4d;stroke-width:100;stroke-opacity:1" />
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1"
|
||||
id="path3843"
|
||||
d="m 83.918365,938.74993 c -2.653058,0 -4.877549,1.85717 -5.448974,4.34692 l 2.673466,0 c 0.489792,-1.06125 1.551017,-1.79592 2.775508,-1.79592 1.693875,0 3.061225,1.36734 3.061225,3.06125 0,1.69384 -1.36735,3.06117 -3.061225,3.06117 -1.224491,0 -2.285716,-0.73467 -2.775508,-1.7755 l -2.673466,0 c 0.571425,2.46942 2.795916,4.32658 5.448974,4.32658 3.102041,0 5.612241,-2.51025 5.612241,-5.61225 0,-3.10208 -2.5102,-5.61225 -5.612241,-5.61225 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g3692"
|
||||
transform="translate(72,8.0001016)">
|
||||
<path
|
||||
sodipodi:nodetypes="sccccsssccs"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect2985"
|
||||
d="m 105.25387,934.36268 c -3.17753,0 -6.346004,2.1278 -7.25387,6.3794 0,2.551 1.806672,7.6679 7.25387,13.6201 1.46368,-1.5994 2.66945,-3.1177 3.64397,-4.5613 -1.4505,-2.1639 -2.41497,-4.0873 -2.96285,-5.7095 -0.22599,0.041 -0.44225,0.063 -0.68112,0.063 -2.0056,0 -3.64396,-1.5346 -3.64396,-3.413 0,-1.8785 1.63836,-3.3811 3.64396,-3.3811 0.51205,0 0.98854,0.076 1.43034,0.2552 0.64347,-0.9222 1.4345,-1.6571 2.31579,-2.169 -1.14444,-0.7114 -2.44633,-1.0845 -3.74613,-1.0845 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none" />
|
||||
<path
|
||||
id="path3378"
|
||||
d="m 111,934.36218 c -3.0625,0 -6.125,2.1277 -7,6.383 0,2.5532 1.75,7.6596 7,13.617 5.25,-5.9574 7,-11.0638 7,-13.617 -0.875,-4.2553 -3.9375,-6.383 -7,-6.383 z m 0,2.9788 c 1.933,0 3.5,1.5241 3.5,3.4042 0,1.8801 -1.567,3.4043 -3.5,3.4043 -1.93299,0 -3.5,-1.5242 -3.5,-3.4043 0,-1.8801 1.56701,-3.4042 3.5,-3.4042 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g25565"
|
||||
transform="translate(88.000001,-96.00002)">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
id="rect7231"
|
||||
d="m 11.999999,957.36218 c -7.3730698,6.5006 -6.8762698,2.8816 -11.9999998343861,5 l 0,2 11.9999998343861,6 12,-6 0,-2 c -7.38473,-0.182 -5.29117,-2.2182 -12,-5 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect7902"
|
||||
d="M -8.343861e-7,971.36218 11.999999,977.3622 l 12,-6.00002 0,2 -12,6.00002 L -8.343861e-7,973.36218 z"
|
||||
style="fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
<path
|
||||
style="fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m -8.343861e-7,968.36218 11.9999998343861,6 12,-6 0,2 -12,6.00002 L -8.343861e-7,970.36218 z"
|
||||
id="path7953"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7955"
|
||||
d="m -8.343861e-7,965.36218 11.9999998343861,6 12,-6 0,2 -12,6 -11.9999998343861,-6 z"
|
||||
style="fill:#666666;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="m 180,900.61217 c -3.5,0 -7,2.5 -8,7.5 0,3 2,9 8,16 6,-7 8,-13 8,-16 -1,-5 -4.5,-7.5 -8,-7.5 z m 0,3.5 c 2.20914,0 4,1.79086 4,4 0,2.20914 -1.79086,4 -4,4 -2.20914,0 -4,-1.79086 -4,-4 0,-2.20914 1.79086,-4 4,-4 z"
|
||||
id="rect2985-3" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 131,900.36217 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-0.34375 10,4 0,1.34375 0,0.4375 -7.09375,11.0625 -2.40625,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.375 7.09375,-11.125 2.40625,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.5625 -10,-4 0,-1.5625 0,-0.5 -0.5,0 -3,0 -0.5,0 z m 1,1 2,0 0,2 -2,0 0,-2 z m 14,5 2,0 0,2 -2,0 0,-2 z m -10,15 2,0 0,2 -2,0 0,-2 z"
|
||||
id="rect4058" />
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 92,901.36217 0,0.5 0,3 0,0.5 0.5,0 1.3125,0 -1.59375,14 -1.71875,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5937 10,-0.6875 0,1.2812 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -1.15625,0 1.375,-8 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.8125 -10,-3.5937 0,-2.2188 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z m -2,12 2,0 0,2 -2,0 z m -14,1 c 2,0 0,0 2,0 l 0,2 -2,0 z"
|
||||
id="rect4058-1"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<g
|
||||
transform="matrix(0.2444191,0,0,0.2444191,127.75289,860.16787)"
|
||||
id="Layer_1" />
|
||||
<g
|
||||
transform="matrix(0.2444191,0,0,0.2444191,127.75289,860.16787)"
|
||||
id="Isolation_Mode"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 98.762,43.652 C 98.576,42.266 97.281,41.07 95.886,40.993 l -6.172,-0.337 c -1.395,-0.076 -2.899,-1.224 -3.341,-2.55 l -2.28,-5.518 c -0.629,-1.249 -0.379,-3.121 0.553,-4.161 l 4.122,-4.6 c 0.933,-1.042 0.962,-2.77 0.066,-3.842 l -8.813,-8.813 c -1.073,-0.897 -2.803,-0.867 -3.845,0.065 l -4.598,4.122 c -1.039,0.934 -2.915,1.182 -4.161,0.551 l -5.521,-2.279 c -1.324,-0.442 -2.472,-1.945 -2.549,-3.34 L 59.01,4.121 C 58.933,2.725 57.738,1.43 56.351,1.243 c 0,0 -3.252,-0.44 -6.248,-0.44 -2.991,0 -6.243,0.44 -6.243,0.44 -1.386,0.188 -2.582,1.483 -2.658,2.878 l -0.338,6.17 c -0.076,1.396 -1.224,2.898 -2.551,3.34 l -5.517,2.279 c -1.249,0.631 -3.122,0.382 -4.161,-0.551 l -4.601,-4.122 c -1.042,-0.932 -2.769,-0.962 -3.842,-0.065 l -8.813,8.813 c -0.897,1.073 -0.867,2.801 0.066,3.842 l 4.122,4.6 c 0.933,1.041 1.182,2.913 0.551,4.161 l -2.279,5.518 c -0.442,1.326 -1.946,2.474 -3.34,2.55 l -6.17,0.337 c -1.396,0.077 -2.691,1.272 -2.879,2.659 0,0 -0.439,3.253 -0.439,6.243 0,2.99 0.44,6.24 0.44,6.24 0.188,1.389 1.483,2.582 2.879,2.659 l 6.169,0.339 c 1.396,0.075 2.898,1.225 3.341,2.549 l 2.278,5.517 c 0.631,1.248 0.381,3.122 -0.551,4.163 l -4.122,4.598 c -0.933,1.042 -0.963,2.771 -0.066,3.845 l 8.814,8.813 c 1.073,0.896 2.801,0.866 3.842,-0.066 l 4.6,-4.122 c 1.041,-0.932 2.913,-1.182 4.161,-0.553 l 5.517,2.28 c 1.327,0.441 2.475,1.946 2.55,3.343 l 0.338,6.168 c 0.076,1.395 1.272,2.692 2.658,2.88 0,0 3.252,0.439 6.244,0.439 2.996,0 6.25,-0.439 6.25,-0.439 1.385,-0.188 2.58,-1.485 2.657,-2.88 L 59.347,89.5 c 0.077,-1.396 1.225,-2.901 2.551,-3.343 l 5.517,-2.28 c 1.248,-0.629 3.122,-0.379 4.163,0.553 l 4.598,4.122 c 1.042,0.933 2.771,0.964 3.843,0.067 l 8.815,-8.814 C 89.73,78.732 89.7,77.002 88.768,75.96 l -4.122,-4.598 c -0.932,-1.041 -1.182,-2.915 -0.553,-4.163 l 2.28,-5.517 c 0.441,-1.324 1.946,-2.474 3.341,-2.549 l 6.172,-0.339 c 1.395,-0.077 2.692,-1.271 2.876,-2.659 0,0 0.441,-3.25 0.441,-6.24 0,-2.99 -0.441,-6.243 -0.441,-6.243 z M 50.104,62.361 c -6.886,0 -12.468,-5.585 -12.468,-12.467 0,-6.885 5.582,-12.467 12.468,-12.467 6.89,0 12.475,5.582 12.475,12.467 -10e-4,6.882 -5.586,12.467 -12.475,12.467 z"
|
||||
id="path27812"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
d="m 180,860.36218 c -6.62742,0 -12,5.37258 -12,12 0,6.62742 5.37258,12 12,12 6.62742,0 12,-5.37258 12,-12 0,-6.62742 -5.37258,-12 -12,-12 z m 0,5 7,7 -5,0 0,6 -4,0 0,-6 -5,0 z"
|
||||
id="path4700"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ssssscccccccc" />
|
||||
<polygon
|
||||
points="37.37,62.644 37.37,90.703 28.965,82.305 11.27,100 0,88.737 17.702,71.042 9.297,62.644 "
|
||||
id="polygon3044"
|
||||
transform="matrix(0.24,0,0,0.24,8,900.36218)"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<polygon
|
||||
points="71.042,17.708 62.644,9.31 62.644,37.357 90.71,37.37 82.298,28.958 100,11.263 88.743,0 "
|
||||
id="polygon3048"
|
||||
transform="matrix(0.24,0,0,0.24,8,900.36218)"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 20,909.43106 c -1.618801,0 -2.93112,1.31256 -2.93112,2.93112 0,1.62192 1.31256,2.93448 2.93112,2.93448 1.6188,0 2.9328,-1.31256 2.9328,-2.93448 0,-1.6188 -1.314,-2.93112 -2.9328,-2.93112 z"
|
||||
id="path3052"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
d="M 52.09375 54 C 48.729514 53.992 46.007497 56.6898 46 60 C 46.0075 63.31752 48.729514 65.99461 52.09375 66 C 54.336949 65.996659 56.291025 64.786304 57.34375 63 L 59.8125 63 L 61.78125 61.09375 L 63.28125 62.53125 L 64.71875 61.125 L 66.1875 62.5625 L 67.6875 61.125 L 69.15625 62.5625 L 71.71875 60.09375 C 72.087686 59.71854 72.096762 59.4354 71.71875 59.0625 L 69.625 57 L 57.375 57 C 56.327602 55.196673 54.352273 53.995338 52.09375 54 z M 49.4375 58.375 C 50.321767 58.371 51.024542 59.08352 51.03125 59.96875 C 51.02495 60.84166 50.322161 61.55442 49.4375 61.5625 C 48.538239 61.5535 47.804214 60.84166 47.8125 59.96875 C 47.8043 59.08352 48.538239 58.37077 49.4375 58.375 z "
|
||||
transform="translate(0,852.36218)"
|
||||
id="path3652"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<polygon
|
||||
points="0,50 12.5,50 12.5,87.5 43.75,87.5 43.75,62.5 56.25,62.5 56.25,87.5 87.5,87.5 87.5,50 100,50 50,0 "
|
||||
id="polygon3866"
|
||||
transform="matrix(0.24,0,0,0.24,128,941.86218)"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 32.000004,992.36245 c 0,-0.45066 -0.02933,-0.89466 -0.07867,-1.33333 l -1.348,0 c -0.601333,-4.82267 -4.417333,-8.63867 -9.24,-9.24133 v -1.34667 c -0.438667,-0.0493 -0.882667,-0.0787 -1.333333,-0.0787 -0.450667,0 -0.894667,0.0293 -1.333333,0.0787 v 1.348 c -4.822667,0.60133 -8.638667,4.41733 -9.2413342,9.24 l -1.3466668,0 C 8.029334,991.46779 8,991.91179 8,992.36245 c 0,0.45067 0.029333,0.89467 0.078667,1.33334 h 1.3480008 c 0.6013332,4.82266 4.4173332,8.63871 9.2400002,9.24141 v 1.348 c 0.438666,0.048 0.882666,0.077 1.333333,0.077 0.450666,0 0.894666,-0.029 1.333333,-0.079 v -1.348 c 4.821333,-0.6026 8.638667,-4.41735 9.241333,-9.24001 h 1.348 c 0.048,-0.43734 0.07733,-0.88134 0.07733,-1.33334 z m -10.666667,7.88005 v -1.21338 c 0,-0.73733 -0.597333,-1.33333 -1.333333,-1.33333 -0.736,0 -1.333333,0.596 -1.333333,1.33333 v 1.21338 c -3.346667,-0.56271 -5.982667,-3.19738 -6.545334,-6.54538 l 1.212,-0.001 c 0.737334,0 1.333334,-0.59734 1.333334,-1.33334 0,-0.736 -0.596,-1.33333 -1.333334,-1.33333 h -1.213333 c 0.564,-3.34667 3.2,-5.98267 6.546667,-6.54667 v 1.21334 c 0,0.736 0.597333,1.33333 1.333333,1.33333 0.736,0 1.333333,-0.59733 1.333333,-1.33333 v -1.21334 c 3.348,0.56267 5.984,3.19867 6.546667,6.54667 H 26.66667 c -0.737333,0 -1.333333,0.59733 -1.333333,1.33333 0,0.736 0.596,1.33334 1.333333,1.33334 l 1.213334,0.001 c -0.564,3.348 -3.198667,5.98267 -6.546667,6.54538 z"
|
||||
id="path4611"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<g
|
||||
id="g4758"
|
||||
transform="translate(36.000001,-11.999806)">
|
||||
<path
|
||||
transform="matrix(1.3996164,0,0,1.3996164,46.585677,990.77388)"
|
||||
d="M 20.301507,9.7085428 A 7.8592963,7.8592963 0 0 1 12.442211,17.567839 7.8592963,7.8592963 0 0 1 4.5829148,9.7085428 7.8592963,7.8592963 0 0 1 12.442211,1.8492465 7.8592963,7.8592963 0 0 1 20.301507,9.7085428 Z"
|
||||
sodipodi:ry="7.8592963"
|
||||
sodipodi:rx="7.8592963"
|
||||
sodipodi:cy="9.7085428"
|
||||
sodipodi:cx="12.442211"
|
||||
id="path4309"
|
||||
style="fill:none;stroke:#464646;stroke-width:1.42896295;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,44.942766,1049.7278)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,37.400316,1044.6618)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819-2"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
transform="matrix(-1.5942497,-3.9814712,3.9814712,-1.5942497,45.211124,1039.6862)"
|
||||
d="M 7.4773872,8.0603018 A 0.58291459,0.58291459 0 0 1 6.8944726,8.6432164 0.58291459,0.58291459 0 0 1 6.311558,8.0603018 0.58291459,0.58291459 0 0 1 6.8944726,7.4773872 0.58291459,0.58291459 0 0 1 7.4773872,8.0603018 Z"
|
||||
sodipodi:ry="0.58291459"
|
||||
sodipodi:rx="0.58291459"
|
||||
sodipodi:cy="8.0603018"
|
||||
sodipodi:cx="6.8944726"
|
||||
id="path4819-0"
|
||||
style="fill:#464646;fill-opacity:1;stroke:none"
|
||||
sodipodi:type="arc" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path4850"
|
||||
d="m 66.386295,999.47498 -8.019134,4.91992 8.13935,5.3224"
|
||||
style="fill:none;stroke:#464646;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="search"
|
||||
d="m 72,1001.1668 -6.436799,-6.4386 c 0.866371,-1.42919 1.374087,-3.10412 1.374087,-4.89829 0,-5.23345 -4.235188,-9.47135 -9.468644,-9.47316 C 52.238801,980.35875 48,984.59646 48,989.82901 c 0,5.22894 4.239705,9.46687 9.471354,9.46687 1.795077,0 3.467289,-0.50773 4.896485,-1.3741 l 6.440412,6.44042 L 72,1001.1668 z M 51.612738,989.82901 c 0.0054,-3.23602 2.6226,-5.8532 5.857713,-5.85862 3.234209,0.007 5.852292,2.6226 5.857713,5.85862 -0.0063,3.2333 -2.623504,5.85231 -5.857713,5.85683 -3.236016,0 -5.853196,-2.62353 -5.857713,-5.85683 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<g
|
||||
id="g13779"
|
||||
transform="translate(0.8783882,0.74457185)">
|
||||
<g
|
||||
inkscape:export-ydpi="28.799999"
|
||||
inkscape:export-xdpi="28.799999"
|
||||
inkscape:export-filename="/home/ybon/Work/osmtouch64.png"
|
||||
id="g4200"
|
||||
transform="matrix(0.15420392,0,0,0.15420392,123.6912,976.19847)">
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="M 128.96875,25.03125 C 116.4464,25.02855 103.92273,29.677098 94.375,38.96875 77.24854,55.63759 76.65542,83.22095 90.25,101.8125 L 77.03125,114.25 c 0.14747,0.11709 9,8.5625 9,8.5625 l 12.5,-12.25 c 21.41449,14.9813 47.90478,12.41882 65.03125,-4.25 19.09544,-18.58519 19.09526,-48.75856 0,-67.34375 -9.54772,-9.292593 -22.0714,-13.93479 -34.59375,-13.9375 z m 0,7.9375 c 10.43487,0.0027 20.85607,3.880217 28.8125,11.625 15.91286,15.48761 15.94433,40.63733 0.0312,56.125 -15.91287,15.48766 -41.77464,15.48761 -57.6875,0 -15.912892,-15.48767 -15.912892,-40.63734 0,-56.125 7.95643,-7.743803 18.40888,-11.627705 28.84375,-11.625 z"
|
||||
id="path4189"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
d="m 63.879368,116.05569 -39.21875,37.9375 c -3.223956,3.12021 -3.215175,8.18323 0,11.3125 l 8.96875,8.71875 c 3.215174,3.12926 8.369796,3.12021 11.59375,0 l 39.21875,-37.9375 c 3.22396,-3.12021 3.21518,-8.18324 0,-11.3125 l -8.96875,-8.71875 c -3.48388,-3.074 -8.57545,-2.83371 -11.59375,0 z"
|
||||
id="path4169"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
inkscape:export-ydpi="28.799999"
|
||||
inkscape:export-xdpi="28.799999"
|
||||
inkscape:export-filename="/home/ybon/Work/osmtouch64.png"
|
||||
d="m 136.26913,998.21967 c -1.72863,1.6788 -1.93723,1.87263 -3.54806,3.46653 l 4.95517,-1.1486 c 0.14934,-0.65943 0.32405,-1.47613 0.3714,-1.66783 -0.78224,-0.026 -1.22826,-0.2704 -1.77851,-0.6501 z m 5.35377,-1.9131 c -0.18365,2.1461 -1.13564,2.3061 -2.93951,2.5878 -0.12852,0.5649 -0.21541,0.9577 -0.36624,1.62393 l 4.62612,1.1276 c 0.62063,-2.60243 1.11924,-4.71073 1.10834,-4.72243 -0.0163,-0.017 -1.23829,-0.3245 -2.42871,-0.6169 z m -2.2215,-0.5252 c -0.006,0.01 -0.26454,1.1303 -0.59754,2.5925 2.113,-0.3337 2.1769,-1.0052 2.24078,-2.207 -0.86704,-0.2111 -1.63385,-0.3935 -1.64324,-0.3855 z m -0.62164,-0.034 c -0.51393,0.043 -0.7713,0.095 -1.33482,0.2505 0.18112,0.3385 0.26544,1.0343 -0.75604,1.847 0.53504,0.3261 1.00256,0.4526 1.47405,0.5095 0.43221,-1.9749 0.65371,-2.2826 0.61681,-2.6071 z m -10.11963,-0.024 -0.89631,3.4985 3.04553,-2.9636 c -0.68349,-0.1707 -1.30768,-0.3263 -2.14922,-0.5349 z m 21.21268,-0.1205 c -2.83532,0.7227 -5.14796,1.32 -5.15619,1.33 -0.007,0.01 -0.51887,2.1316 -1.1469,4.75143 l 5.055,-1.2336 z m -8.24991,-0.7325 0,0.7855 c 1.04505,0.2593 2.11678,0.518 2.33715,0.5204 0,0 -0.117,-0.4693 -0.2554,-1.0505 -0.003,0 -0.006,0 -0.01,0 -0.90225,0.023 -1.21656,-0.03 -2.07211,-0.2554 z m -2.56846,-1.171 -0.01,0.01 0.37105,1.4312 c 0.0872,-0.01 0.81259,0.1734 1.62878,0.3758 9e-5,-0.3205 6.2e-4,-0.5828 0.005,-0.8143 -0.69971,-0.2361 -1.37206,-0.5709 -1.99501,-1.0024 z m -10.83283,-0.4626 0.49635,1.8553 c 0,0 1.37566,0.3324 2.63592,0.6361 l 0.14457,-0.1398 c -1.8692,-0.6628 -1.89514,-2.0501 -3.27684,-2.3516 z m 21.08739,-0.4144 c -1.86844,1.552 -2.86815,1.9475 -4.96826,2.2793 0.12835,0.5155 0.24073,0.9576 0.27468,1.0602 0.0287,0.087 1.76628,-0.3099 5.24775,-1.1903 z m -12.12428,-0.9445 c -0.23088,-0.3157 -0.43555,-0.6442 -0.612,-0.9831 -1.36011,0.296 -3.60183,0.8253 -3.66716,0.8819 -0.0276,0.024 0.17181,0.9075 0.44815,2.0047 0.67591,-0.6232 1.45236,-0.5109 1.96721,-0.1653 m 1.91729,1.8404 c 0.47244,-0.158 1.12276,-0.2812 1.53673,-0.3307 -0.0519,-0.3724 -0.0877,-0.6071 -0.23612,-0.9927 m -11.00149,-3.6479 0.49635,1.9613 c 2.50401,0.9496 2.69056,2.8506 4.03339,2.5878 l 0.86258,-0.8385 c -0.26762,-1.1089 -0.5801,-2.2764 -0.65536,-2.3516 -0.0174,-0.017 -4.73696,-1.359 -4.73696,-1.359 z m 8.26437,-4.2309 -1.67697,0.4144 c -0.35276,1.4788 -0.8278,3.3283 -1.11316,4.4237 1.37526,-0.3807 1.74872,-0.4606 3.29611,-0.771 -0.54316,-1.295 -0.7139,-2.7021 -0.50598,-4.0671 z m -7.08374,-1.0602 -1.18544,4.6358 c 1.82562,0.517 2.88589,0.8108 4.73213,1.2432 0.38982,-1.204 0.82942,-2.5341 1.14689,-4.443 -1.23121,-0.383 -1.96932,-0.6187 -4.69358,-1.436 z m 8.886,-5.2477 -4.61166,1.1228 c 0.65055,2.8245 1.12699,4.8412 1.15653,4.8718 0.0283,0.029 0.85135,-0.1466 1.7878,-0.3614 0.44052,-1.7435 0.82365,-2.3477 2.12994,-3.6719 -0.14019,-0.6014 -0.29567,-1.2597 -0.46261,-1.9613 z m 0.61681,-0.063 c 0.19042,0.7975 0.20798,0.855 0.37588,1.5565 0.53081,-0.4268 1.10819,-0.7739 1.7107,-1.0457 z m -10.77981,0 1.20471,4.6358 c 2.64567,0.7792 4.75728,1.3919 4.77069,1.3782 0.0142,-0.015 -0.46615,-2.1739 -1.06979,-4.8574 z m 21.18376,-0.043 -1.8649,0.4529 c 0.85846,0.3551 1.66426,0.8652 2.3757,1.5276 z m -10.27066,8.6587 c 0.41381,2.527 3.18363,4.4267 6.07178,4.112 1.0773,-2.5454 1.8315,-2.422 2.24706,-4.9716 0.0167,-2.2665 -2.96358,-0.8684 -4.31818,-0.7964 -2.32675,-0.074 -2.21097,-2.8133 -2.46342,-3.2185 -0.71838,0.5281 -1.97222,2.1788 -1.53724,4.8745 z m 2.65684,-5.7481 c 0.75831,2.395 0.92104,3.2135 3.33948,2.2745 1.81917,-0.5274 3.26924,0.1901 3.50475,1.0508 0.38584,1.2833 -0.24196,3.1638 -1.92416,6.0907 2.63491,-1.4075 3.4684,-4.4853 2.52192,-6.8474 -1.28937,-2.6947 -4.29141,-4.0352 -7.44199,-2.5686 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
id="path5801"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g7291"
|
||||
transform="translate(0,3.6429698)">
|
||||
<path
|
||||
id="path3378-6"
|
||||
d="m 178.57143,979.21934 c -3.0625,0 -6.125,2.1197 -7,6.375 0,2.5532 1.75,7.6676 7,13.625 3.4166,-3.877 5.31568,-7.3755 6.25,-10.0625 -1.31416,-0.1622 -2.497,-0.7235 -3.40625,-1.5938 -0.63462,0.8653 -1.6677,1.4375 -2.84375,1.4375 -1.933,0 -3.5,-1.5261 -3.5,-3.4062 0,-1.8801 1.567,-3.4063 3.5,-3.4063 0.36776,0 0.72951,0.085 1.0625,0.1875 0.14352,-1.0312 0.55799,-1.956 1.15625,-2.75 -0.72276,-0.259 -1.46314,-0.4062 -2.21875,-0.4062 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;stroke:none"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path6764"
|
||||
d="m 185.57143,978.21934 c -2.76142,0 -5,2.2386 -5,5 0,2.7615 2.23858,5 5,5 2.76142,0 5,-2.2385 5,-5 0,-2.7614 -2.23858,-5 -5,-5 z m -1.81818,2.2727 1.81818,1.8182 1.81818,-1.8182 0.90909,0.9091 -1.81818,1.8182 1.81818,1.8182 -0.90909,0.9091 -1.81818,-1.8182 -1.81818,1.8182 -0.90909,-0.9091 1.81818,-1.8182 -1.81818,-1.8182 0.90909,-0.9091 z"
|
||||
style="fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none" />
|
||||
</g>
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 10.1875,1017.3622 0,0.5 0,3 0,0.5 0.5,0 1.3125,0 -1.59375,14 -1.71875,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5938 c 0,0 13.716518,-10.9062 13.71875,-10.9062 l 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.8125 -10,-3.5938 0,-2.2187 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z m -16,13 2,0 0,2 -2,0 z"
|
||||
id="rect4058-1-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 18,1043.3622 -3.5,0 -0.5,0 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-1.5937 10,-0.6875 0,1.2812 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -1.15625,0 -2.4375,-8 1.78125,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.6875,0 c 0,3 0,3 0,3 0,0 -7.8125,10 -8,10 z m 9.1875,-12 2,0 0,2 -2,0 z m 1.8125,12 2,0 0,2 -2,0 z m -14,1 c 2,0 0,0 2,0 l 0,2 -2,0 z"
|
||||
id="rect4058-1-2-0"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 51,1020.3622 0,0.5 0,3 0,0.5 0.5,0 3,0 0.5,0 0,-0.5 0,-0.3438 10,4 0,1.3438 0,0.4375 1.09375,0.062 2.40625,0 0.5,0 0,-0.5 0,-3 0,-0.5 -0.5,0 -3,0 -0.5,0 0,0.5 0,0.5625 -10,-4 0,-1.5625 0,-0.5 -0.5,0 -3,0 z m 1,1 2,0 0,2 -2,0 z m 14,5 2,0 0,2 -2,0 z"
|
||||
id="rect4058-9"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#4d4d4d;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
|
||||
d="m 55.09375,1030.5184 0,1.3438 0,0.4375 7.09375,11.0625 2.40625,0 0.5,0 0,0.5 0,3 0,0.5 -0.5,0 -3,0 -0.5,0 0,-0.5 0,-3 0,-0.375 -7.09375,-11.125 -2.40625,0 -0.5,0 0,-0.5 0,-3 0,-0.5 0.5,0 3,0 0.5,0 0,0.5 0,0.5625 z m -1,-1.1562 -2,0 0,2 2,0 z m 10,15 -2,0 0,2 2,0 z"
|
||||
id="rect4058-9-5"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccc" />
|
||||
<g
|
||||
transform="matrix(0.30998724,0,0,0.31293167,40.505808,935.9527)"
|
||||
id="g5939"
|
||||
style="fill:#4d4d4d;fill-opacity:1">
|
||||
<ellipse
|
||||
cx="62.837002"
|
||||
cy="23.440001"
|
||||
rx="32.162998"
|
||||
ry="9.2799997"
|
||||
id="ellipse5941"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,50.482 c -17.766,0 -32.163,-4.154 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.052 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.069 32.135,-9.121 l 0.028,0 0,-11.832 c -0.021,5.123 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5943"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,41.189 0,-0.146 -0.026,0 C 94.978,41.092 95,41.141 95,41.189 Z"
|
||||
id="path5945"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,64.884 c -17.766,0 -32.163,-4.155 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.053 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.068 32.135,-9.121 l 0.028,0 0,-11.833 c -0.021,5.123 -14.413,9.271 -32.161,9.271 z"
|
||||
id="path5947"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,55.59 0,-0.146 -0.026,0 C 94.978,55.492 95,55.542 95,55.59 Z"
|
||||
id="path5949"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,79.285 c -17.766,0 -32.163,-4.154 -32.163,-9.282 0,-0.053 0.024,-0.104 0.028,-0.157 l -0.03,0 0,12.001 0.028,0 c 0.298,5.052 14.555,9.121 32.135,9.121 17.576,0 31.837,-4.069 32.135,-9.121 l 0.028,0 0,-11.832 c -0.021,5.123 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5951"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,69.992 0,-0.146 -0.026,0 C 94.978,69.895 95,69.943 95,69.992 Z"
|
||||
id="path5953"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 62.839,35.762 c -17.766,0 -32.163,-4.154 -32.163,-9.281 0,-0.057 0.024,-0.105 0.028,-0.161 l -0.03,0 0,12 0.028,0 c 0.298,5.052 14.555,9.125 32.135,9.125 17.576,0 31.837,-4.073 32.135,-9.125 l 0.028,0 0,-11.828 c -0.021,5.119 -14.413,9.27 -32.161,9.27 z"
|
||||
id="path5955"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 95,26.469 0,-0.149 -0.026,0 C 94.978,26.371 95,26.42 95,26.469 Z"
|
||||
id="path5957"
|
||||
style="fill:#4d4d4d;fill-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 34 KiB |
BIN
umap/static/umap/img/edit-16.png
Normal file
After Width: | Height: | Size: 430 B |
BIN
umap/static/umap/img/icon-bg.png
Normal file
After Width: | Height: | Size: 190 B |
BIN
umap/static/umap/img/marker.png
Normal file
After Width: | Height: | Size: 375 B |
BIN
umap/static/umap/img/search.gif
Normal file
After Width: | Height: | Size: 1.4 KiB |
|
@ -1,4 +1,4 @@
|
|||
L.S.AutoComplete = L.Class.extend({
|
||||
L.U.AutoComplete = L.Class.extend({
|
||||
|
||||
options: {
|
||||
placeholder: 'Start typing...',
|
||||
|
@ -12,8 +12,10 @@ L.S.AutoComplete = L.Class.extend({
|
|||
RESULTS: [],
|
||||
|
||||
initialize: function (el, options) {
|
||||
this.el = L.DomUtil.get(el);
|
||||
L.setOptions(options);
|
||||
this.el = el;
|
||||
var ui = new L.U.UI(document.querySelector('header'));
|
||||
this.xhr = new L.U.Xhr(ui);
|
||||
L.setOptions(this, options);
|
||||
var CURRENT = null;
|
||||
try {
|
||||
Object.defineProperty(this, 'CURRENT', {
|
||||
|
@ -37,9 +39,9 @@ L.S.AutoComplete = L.Class.extend({
|
|||
this.input = L.DomUtil.element('input', {
|
||||
type: 'text',
|
||||
placeholder: this.options.placeholder,
|
||||
autocomplete: 'off'
|
||||
});
|
||||
L.DomUtil.before(this.el, this.input);
|
||||
autocomplete: 'off',
|
||||
className: this.options.className
|
||||
}, this.el);
|
||||
L.DomEvent.on(this.input, 'keydown', this.onKeyDown, this);
|
||||
L.DomEvent.on(this.input, 'keyup', this.onKeyUp, this);
|
||||
L.DomEvent.on(this.input, 'blur', this.onBlur, this);
|
||||
|
@ -62,22 +64,19 @@ L.S.AutoComplete = L.Class.extend({
|
|||
|
||||
onKeyDown: function (e) {
|
||||
switch (e.keyCode) {
|
||||
case L.S.Keys.TAB:
|
||||
if(this.CURRENT !== null)
|
||||
{
|
||||
this.setChoice();
|
||||
}
|
||||
case L.U.Keys.TAB:
|
||||
if(this.CURRENT !== null) this.setChoice();
|
||||
L.DomEvent.stop(e);
|
||||
break;
|
||||
case L.S.Keys.ENTER:
|
||||
case L.U.Keys.ENTER:
|
||||
L.DomEvent.stop(e);
|
||||
this.setChoice();
|
||||
break;
|
||||
case L.S.Keys.ESC:
|
||||
case L.U.Keys.ESC:
|
||||
L.DomEvent.stop(e);
|
||||
this.hide();
|
||||
break;
|
||||
case L.S.Keys.DOWN:
|
||||
case L.U.Keys.DOWN:
|
||||
if(this.RESULTS.length > 0) {
|
||||
if(this.CURRENT !== null && this.CURRENT < this.RESULTS.length - 1) { // what if one resutl?
|
||||
this.CURRENT++;
|
||||
|
@ -89,7 +88,7 @@ L.S.AutoComplete = L.Class.extend({
|
|||
}
|
||||
}
|
||||
break;
|
||||
case L.S.Keys.UP:
|
||||
case L.U.Keys.UP:
|
||||
if(this.CURRENT !== null) {
|
||||
L.DomEvent.stop(e);
|
||||
}
|
||||
|
@ -109,16 +108,16 @@ L.S.AutoComplete = L.Class.extend({
|
|||
|
||||
onKeyUp: function (e) {
|
||||
var special = [
|
||||
L.S.Keys.TAB,
|
||||
L.S.Keys.ENTER,
|
||||
L.S.Keys.LEFT,
|
||||
L.S.Keys.RIGHT,
|
||||
L.S.Keys.DOWN,
|
||||
L.S.Keys.UP,
|
||||
L.S.Keys.APPLE,
|
||||
L.S.Keys.SHIFT,
|
||||
L.S.Keys.ALT,
|
||||
L.S.Keys.CTRL
|
||||
L.U.Keys.TAB,
|
||||
L.U.Keys.ENTER,
|
||||
L.U.Keys.LEFT,
|
||||
L.U.Keys.RIGHT,
|
||||
L.U.Keys.DOWN,
|
||||
L.U.Keys.UP,
|
||||
L.U.Keys.APPLE,
|
||||
L.U.Keys.SHIFT,
|
||||
L.U.Keys.ALT,
|
||||
L.U.Keys.CTRL
|
||||
];
|
||||
if (special.indexOf(e.keyCode) === -1)
|
||||
{
|
||||
|
@ -149,8 +148,8 @@ L.S.AutoComplete = L.Class.extend({
|
|||
setChoice: function (choice) {
|
||||
choice = choice || this.RESULTS[this.CURRENT];
|
||||
if (choice) {
|
||||
this.input.value = choice.display;
|
||||
this.select(choice);
|
||||
this.input.value = choice.item.label;
|
||||
this.options.on_select(choice);
|
||||
this.displaySelected(choice);
|
||||
this.hide();
|
||||
if (this.options.callback) {
|
||||
|
@ -165,26 +164,18 @@ L.S.AutoComplete = L.Class.extend({
|
|||
this.clear();
|
||||
return;
|
||||
}
|
||||
if(!val) {
|
||||
this.clear();
|
||||
return;
|
||||
}
|
||||
if( val + '' === this.CACHE + '') {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
this.CACHE = val;
|
||||
}
|
||||
var results = this._do_search(val);
|
||||
return this.handleResults(results);
|
||||
if( val + '' === this.CACHE + '') return;
|
||||
else this.CACHE = val;
|
||||
this._do_search(val, (data) => {
|
||||
this.handleResults(data.data);
|
||||
});
|
||||
},
|
||||
|
||||
createResult: function (item) {
|
||||
var el = L.DomUtil.element('li', {}, this.container);
|
||||
el.innerHTML = item.display;
|
||||
el.innerHTML = item.label;
|
||||
var result = {
|
||||
value: item.value,
|
||||
display: item.display,
|
||||
item: item,
|
||||
el: el
|
||||
};
|
||||
L.DomEvent.on(el, 'mouseover', function () {
|
||||
|
@ -223,12 +214,12 @@ L.S.AutoComplete = L.Class.extend({
|
|||
|
||||
highlight: function () {
|
||||
var self = this;
|
||||
this.forEach(this.RESULTS, function (item, index) {
|
||||
this.forEach(this.RESULTS, function (result, index) {
|
||||
if (index === self.CURRENT) {
|
||||
L.DomUtil.addClass(item.el, 'on');
|
||||
L.DomUtil.addClass(result.el, 'on');
|
||||
}
|
||||
else {
|
||||
L.DomUtil.removeClass(item.el, 'on');
|
||||
L.DomUtil.removeClass(result.el, 'on');
|
||||
}
|
||||
});
|
||||
},
|
||||
|
@ -260,114 +251,69 @@ L.S.AutoComplete = L.Class.extend({
|
|||
});
|
||||
|
||||
|
||||
L.S.AutoComplete.BaseSelect = L.S.AutoComplete.extend({
|
||||
L.U.AutoComplete.Ajax = L.U.AutoComplete.extend({
|
||||
|
||||
initialize: function (el, options) {
|
||||
L.S.AutoComplete.prototype.initialize.call(this, el, options);
|
||||
L.U.AutoComplete.prototype.initialize.call(this, el, options);
|
||||
if (!this.el) return this;
|
||||
this.el.style.display = 'none';
|
||||
this.createInput();
|
||||
this.createContainer();
|
||||
this.initSelectedContainer();
|
||||
this.selected_container = this.initSelectedContainer();
|
||||
},
|
||||
|
||||
optionToResult: function (option) {
|
||||
return {
|
||||
value: option.value,
|
||||
display: option.innerHTML
|
||||
label: option.innerHTML
|
||||
};
|
||||
},
|
||||
|
||||
_do_search: function (val) {
|
||||
var results = [],
|
||||
self = this,
|
||||
count = 0;
|
||||
_do_search: function (val, callback) {
|
||||
val = val.toLowerCase();
|
||||
this.forEach(this.el, function (item) {
|
||||
var candidate = item.innerHTML.toLowerCase();
|
||||
if (candidate === val || (candidate.indexOf(val) !== -1 && !item.selected && count < self.options.maxResults)) {
|
||||
results.push(self.optionToResult(item));
|
||||
count++;
|
||||
}
|
||||
});
|
||||
return results;
|
||||
},
|
||||
|
||||
select: function (option) {
|
||||
this.forEach(this.el, function (item) {
|
||||
if (item.value == option.value) {
|
||||
item.selected = true;
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
unselect: function (option) {
|
||||
this.forEach(this.el, function (item) {
|
||||
if (item.value == option.value) {
|
||||
item.selected = false;
|
||||
}
|
||||
});
|
||||
this.xhr.get('/agnocomplete/AutocompleteUser/?q=' + encodeURIComponent(val), {callback: callback});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.S.AutoComplete.MultiSelect = L.S.AutoComplete.BaseSelect.extend({
|
||||
L.U.AutoComplete.Ajax.SelectMultiple = L.U.AutoComplete.Ajax.extend({
|
||||
|
||||
initSelectedContainer: function () {
|
||||
this.selected_container = L.DomUtil.after(this.input, L.DomUtil.element('ul', {className: 'umap-multiresult'}));
|
||||
var self = this;
|
||||
this.forEach(this.el, function (option) {
|
||||
if (option.selected) {
|
||||
self.displaySelected(self.optionToResult(option));
|
||||
}
|
||||
});
|
||||
return L.DomUtil.after(this.input, L.DomUtil.element('ul', {className: 'umap-multiresult'}));
|
||||
},
|
||||
|
||||
displaySelected: function (result) {
|
||||
var result_el = L.DomUtil.element('li', {}, this.selected_container);
|
||||
result_el.innerHTML = result.display;
|
||||
result_el.innerHTML = result.item.label;
|
||||
var close = L.DomUtil.element('span', {className: 'close'}, result_el);
|
||||
close.innerHTML = '×';
|
||||
L.DomEvent.on(close, 'click', function () {
|
||||
this.selected_container.removeChild(result_el);
|
||||
this.unselect(result);
|
||||
this.options.on_unselect(result);
|
||||
}, this);
|
||||
this.hide();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.S.AutoComplete.multiSelect = function (el, options) {
|
||||
return new L.S.AutoComplete.MultiSelect(el, options);
|
||||
};
|
||||
|
||||
|
||||
L.S.AutoComplete.Select = L.S.AutoComplete.BaseSelect.extend({
|
||||
L.U.AutoComplete.Ajax.Select = L.U.AutoComplete.Ajax.extend({
|
||||
|
||||
initSelectedContainer: function () {
|
||||
this.selected_container = L.DomUtil.after(this.input, L.DomUtil.element('div', {className: 'umap-singleresult'}));
|
||||
var self = this;
|
||||
if (this.el.selectedIndex !== -1 && this.el[this.el.selectedIndex].value !== '') {
|
||||
self.displaySelected(self.optionToResult(this.el[this.el.selectedIndex]));
|
||||
}
|
||||
return L.DomUtil.after(this.input, L.DomUtil.element('div', {className: 'umap-singleresult'}));
|
||||
},
|
||||
|
||||
displaySelected: function (result) {
|
||||
var result_el = L.DomUtil.element('div', {}, this.selected_container);
|
||||
result_el.innerHTML = result.display;
|
||||
result_el.innerHTML = result.item.label;
|
||||
var close = L.DomUtil.element('span', {className: 'close'}, result_el);
|
||||
close.innerHTML = '×';
|
||||
this.input.style.display = 'none';
|
||||
L.DomEvent.on(close, 'click', function () {
|
||||
this.selected_container.innerHTML = '';
|
||||
this.unselect(result);
|
||||
this.options.on_unselect(result);
|
||||
this.input.style.display = 'block';
|
||||
}, this);
|
||||
this.hide();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.S.AutoComplete.select = function (el, options) {
|
||||
return new L.S.AutoComplete.Select(el, options);
|
||||
};
|
1146
umap/static/umap/js/umap.controls.js
Normal file
520
umap/static/umap/js/umap.core.js
Normal file
|
@ -0,0 +1,520 @@
|
|||
/* Poor man pub/sub handler, enough for now */
|
||||
|
||||
L.UmapSingleton = L.Evented.extend({});
|
||||
L.U = new L.UmapSingleton();
|
||||
L.U.Map = L.Map.extend({});
|
||||
|
||||
/*
|
||||
* Utils
|
||||
*/
|
||||
L.Util.queryString = function (name, fallback) {
|
||||
var decode = function (s) { return decodeURIComponent(s.replace(/\+/g, ' ')); };
|
||||
var qs = window.location.search.slice(1).split('&'), qa = {};
|
||||
for (var i in qs) {
|
||||
var key = qs[i].split('=');
|
||||
if (!key) continue;
|
||||
qa[decode(key[0])] = key[1] ? decode(key[1]) : 1;
|
||||
}
|
||||
return qa[name] || fallback;
|
||||
};
|
||||
|
||||
L.Util.booleanFromQueryString = function (name) {
|
||||
var value = L.Util.queryString(name);
|
||||
return value === '1' || value === 'true';
|
||||
};
|
||||
|
||||
L.Util.setFromQueryString = function (options, name) {
|
||||
var value = L.Util.queryString(name);
|
||||
if (typeof value !== 'undefined') options[name] = value;
|
||||
};
|
||||
|
||||
L.Util.setBooleanFromQueryString = function (options, name) {
|
||||
var value = L.Util.queryString(name);
|
||||
if (typeof value !== 'undefined') options[name] = value == '1' || value == 'true';
|
||||
};
|
||||
L.Util.setNullableBooleanFromQueryString = function (options, name) {
|
||||
var value = L.Util.queryString(name);
|
||||
if (typeof value !== 'undefined') {
|
||||
if (value === 'null') value = null;
|
||||
else if (value === '0' || value === 'false') value = false;
|
||||
else value = true;
|
||||
options[name] = value;
|
||||
}
|
||||
};
|
||||
L.Util.escapeHTML = function (s) {
|
||||
s = s? s.toString() : '';
|
||||
return s.replace(/</gm, '<');
|
||||
};
|
||||
L.Util.toHTML = function (r) {
|
||||
var ii;
|
||||
|
||||
// detect newline format
|
||||
var newline = r.indexOf('\r\n') != -1 ? '\r\n' : r.indexOf('\n') != -1 ? '\n' : '';
|
||||
|
||||
// Escape tags
|
||||
r = r.replace(/</gm, '<');
|
||||
|
||||
|
||||
// headings and hr
|
||||
r = r.replace(/^### (.*)/gm, '<h5>$1</h5>');
|
||||
r = r.replace(/^## (.*)/gm, '<h4>$1</h4>');
|
||||
r = r.replace(/^# (.*)/gm, '<h3>$1</h3>');
|
||||
r = r.replace(/^---/gm, '<hr>');
|
||||
|
||||
// bold, italics
|
||||
r = r.replace(/\*\*(.*?)\*\*/g, '<strong>$1</strong>');
|
||||
r = r.replace(/\*(.*?)\*/g, '<em>$1</em>');
|
||||
|
||||
// unordered lists
|
||||
r = r.replace(/^\*\* (.*)/gm, '<ul><ul><li>$1</li></ul></ul>');
|
||||
r = r.replace(/^\* (.*)/gm, '<ul><li>$1</li></ul>');
|
||||
for (ii = 0; ii < 3; ii++) r = r.replace(new RegExp('</ul>' + newline + '<ul>', 'g'), newline);
|
||||
|
||||
// links
|
||||
r = r.replace(/(\[\[http)/g, '[[h_t_t_p'); // Escape for avoiding clash between [[http://xxx]] and http://xxx
|
||||
r = r.replace(/({{http)/g, '{{h_t_t_p');
|
||||
r = r.replace(/(https?:[^ \<)\n]*)/g, '<a target="_blank" href="$1">$1</a>');
|
||||
r = r.replace(/\[\[(h_t_t_ps?:[^\]|]*?)\]\]/g, '<a target="_blank" href="$1">$1</a>');
|
||||
r = r.replace(/\[\[(h_t_t_ps?:[^|]*?)\|(.*?)\]\]/g, '<a target="_blank" href="$1">$2</a>');
|
||||
r = r.replace(/\[\[([^\]|]*?)\]\]/g, '<a href="$1">$1</a>');
|
||||
r = r.replace(/\[\[([^|]*?)\|(.*?)\]\]/g, '<a href="$1">$2</a>');
|
||||
|
||||
// iframe
|
||||
r = r.replace(/{{{(h_t_t_ps?[^ |]*)}}}/g, '<iframe frameBorder="0" src="$1" width="100%" height="300px"></iframe>');
|
||||
r = r.replace(/{{{(h_t_t_ps?[^ |]*)\|(\d*)(px)?}}}/g, '<iframe frameBorder="0" src="$1" width="100%" height="$2px"></iframe>');
|
||||
r = r.replace(/{{{(h_t_t_ps?[^ |]*)\|(\d*)(px)?\*(\d*)(px)?}}}/g, '<iframe frameBorder="0" src="$1" width="$4px" height="$2px"></iframe>');
|
||||
|
||||
// images
|
||||
r = r.replace(/{{([^\]|]*?)}}/g, '<img src="$1">');
|
||||
r = r.replace(/{{([^|]*?)\|(\d*?)}}/g, '<img src="$1" width="$2">');
|
||||
|
||||
//Unescape http
|
||||
r = r.replace(/(h_t_t_p)/g, 'http');
|
||||
|
||||
// Preserver line breaks
|
||||
if (newline) r = r.replace(new RegExp(newline + '(?=[^]+)', 'g'), '<br>' + newline);
|
||||
|
||||
return r;
|
||||
};
|
||||
L.Util.isObject = function (what) {
|
||||
return typeof what === 'object' && what !== null;
|
||||
};
|
||||
L.Util.CopyJSON = function (geojson) {
|
||||
return JSON.parse(JSON.stringify(geojson));
|
||||
};
|
||||
L.Util.detectFileType = function (f) {
|
||||
var filename = f.name ? escape(f.name.toLowerCase()) : '';
|
||||
function ext(_) {
|
||||
return filename.indexOf(_) !== -1;
|
||||
}
|
||||
if (f.type === 'application/vnd.google-earth.kml+xml' || ext('.kml')) {
|
||||
return 'kml';
|
||||
}
|
||||
if (ext('.gpx')) return 'gpx';
|
||||
if (ext('.geojson') || ext('.json')) return 'geojson';
|
||||
if (f.type === 'text/csv' || ext('.csv') || ext('.tsv') || ext('.dsv')) {
|
||||
return 'csv';
|
||||
}
|
||||
if (ext('.xml') || ext('.osm')) return 'osm';
|
||||
if (ext('.umap')) return 'umap';
|
||||
};
|
||||
|
||||
L.Util.usableOption = function (options, option) {
|
||||
return typeof options[option] !== 'undefined' && options[option] !== '' && options[option] !== null;
|
||||
};
|
||||
|
||||
L.Util.greedyTemplate = function (str, data, ignore) {
|
||||
// Don't throw error if some key is missing
|
||||
return str.replace(/\{ *([\w_\:]+) *\}/g, function (str, key) {
|
||||
var value = data[key];
|
||||
if (value === undefined) {
|
||||
if (ignore) value = str;
|
||||
else value = '';
|
||||
}
|
||||
return value;
|
||||
});
|
||||
};
|
||||
|
||||
L.Util.sortFeatures = function (features, sortKey) {
|
||||
var sortKeys = (sortKey || 'name').split(',');
|
||||
|
||||
var sort = function (a, b, i) {
|
||||
var sortKey = sortKeys[i], score,
|
||||
valA = a.properties[sortKey] || '',
|
||||
valB = b.properties[sortKey] || '';
|
||||
if (!valA) {
|
||||
score = -1;
|
||||
} else if (!valB) {
|
||||
score = 1;
|
||||
} else {
|
||||
score = valA.toString().toLowerCase().localeCompare(valB.toString().toLowerCase());
|
||||
}
|
||||
if (score === 0 && sortKeys[i + 1]) return sort(a, b, i + 1);
|
||||
return score;
|
||||
};
|
||||
|
||||
features.sort(function (a, b) {
|
||||
if (!a.properties || !b.properties) {
|
||||
return 0;
|
||||
}
|
||||
return sort(a, b, 0);
|
||||
});
|
||||
|
||||
|
||||
return features;
|
||||
};
|
||||
|
||||
L.Util.flattenCoordinates = function (coords) {
|
||||
while (coords[0] && typeof coords[0][0] !== 'number') coords = coords[0];
|
||||
return coords;
|
||||
};
|
||||
|
||||
L.DomUtil.add = function (tagName, className, container, content) {
|
||||
var el = L.DomUtil.create(tagName, className, container);
|
||||
if (content) {
|
||||
if (content.nodeType && content.nodeType === 1) {
|
||||
el.appendChild(content);
|
||||
}
|
||||
else {
|
||||
el.innerHTML = content;
|
||||
}
|
||||
}
|
||||
return el;
|
||||
};
|
||||
|
||||
L.DomUtil.createFieldset = function (container, legend, options) {
|
||||
options = options || {};
|
||||
var fieldset = L.DomUtil.create('div', 'fieldset toggle', container);
|
||||
var legendEl = L.DomUtil.add('h5', 'legend style_options_toggle', fieldset, legend);
|
||||
var fieldsEl = L.DomUtil.add('div', 'fields with-transition', fieldset);
|
||||
L.DomEvent.on(legendEl, 'click', function () {
|
||||
if (L.DomUtil.hasClass(fieldset, 'on')) {
|
||||
L.DomUtil.removeClass(fieldset, 'on');
|
||||
} else {
|
||||
L.DomUtil.addClass(fieldset, 'on');
|
||||
if (options.callback) options.callback.call(options.context || this);
|
||||
}
|
||||
});
|
||||
return fieldsEl;
|
||||
};
|
||||
|
||||
L.DomUtil.classIf = function (el, className, bool) {
|
||||
if (bool) L.DomUtil.addClass(el, className);
|
||||
else L.DomUtil.removeClass(el, className);
|
||||
};
|
||||
|
||||
|
||||
L.DomUtil.element = function (what, attrs, parent) {
|
||||
var el = document.createElement(what);
|
||||
for (var attr in attrs) {
|
||||
el[attr] = attrs[attr];
|
||||
}
|
||||
if (typeof parent !== 'undefined') {
|
||||
parent.appendChild(el);
|
||||
}
|
||||
return el;
|
||||
};
|
||||
|
||||
|
||||
L.DomUtil.before = function (target, el) {
|
||||
target.parentNode.insertBefore(el, target);
|
||||
return el;
|
||||
};
|
||||
|
||||
L.DomUtil.after = function (target, el)
|
||||
{
|
||||
target.parentNode.insertBefore(el, target.nextSibling);
|
||||
return el;
|
||||
};
|
||||
|
||||
L.DomUtil.RGBRegex = /rgb *\( *([0-9]{1,3}) *, *([0-9]{1,3}) *, *([0-9]{1,3}) *\)/;
|
||||
|
||||
L.DomUtil.TextColorFromBackgroundColor = function (el) {
|
||||
var out = '#000000';
|
||||
if (!window.getComputedStyle) {return out;}
|
||||
var rgb = window.getComputedStyle(el).getPropertyValue('background-color');
|
||||
rgb = L.DomUtil.RGBRegex.exec(rgb);
|
||||
if (!rgb || rgb.length !== 4) {return out;}
|
||||
rgb = parseInt(rgb[1], 10) + parseInt(rgb[2], 10) + parseInt(rgb[3], 10);
|
||||
if (rgb < (255 * 3 / 2)) {
|
||||
out = '#ffffff';
|
||||
}
|
||||
return out;
|
||||
};
|
||||
L.DomEvent.once = function (el, types, fn, context) {
|
||||
// cf https://github.com/Leaflet/Leaflet/pull/3528#issuecomment-134551575
|
||||
|
||||
if (typeof types === 'object') {
|
||||
for (var type in types) {
|
||||
L.DomEvent.once(el, type, types[type], fn);
|
||||
}
|
||||
return L.DomEvent;
|
||||
}
|
||||
|
||||
var handler = L.bind(function () {
|
||||
L.DomEvent
|
||||
.off(el, types, fn, context)
|
||||
.off(el, types, handler, context);
|
||||
}, L.DomEvent);
|
||||
|
||||
// add a listener that's executed once and removed after that
|
||||
return L.DomEvent
|
||||
.on(el, types, fn, context)
|
||||
.on(el, types, handler, context);
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* Global events
|
||||
*/
|
||||
L.U.Keys = {
|
||||
LEFT: 37,
|
||||
UP: 38,
|
||||
RIGHT: 39,
|
||||
DOWN: 40,
|
||||
TAB: 9,
|
||||
ENTER: 13,
|
||||
ESC: 27,
|
||||
APPLE: 91,
|
||||
SHIFT: 16,
|
||||
ALT: 17,
|
||||
CTRL: 18,
|
||||
E: 69,
|
||||
F: 70,
|
||||
H: 72,
|
||||
I: 73,
|
||||
L: 76,
|
||||
M: 77,
|
||||
P: 80,
|
||||
S: 83,
|
||||
Z: 90
|
||||
};
|
||||
|
||||
|
||||
L.U.Help = L.Class.extend({
|
||||
|
||||
initialize: function (map) {
|
||||
this.map = map;
|
||||
this.box = L.DomUtil.create('div', 'umap-help-box with-transition dark', document.body);
|
||||
var closeLink = L.DomUtil.create('a', 'umap-close-link', this.box);
|
||||
closeLink.href = '#';
|
||||
L.DomUtil.add('i', 'umap-close-icon', closeLink);
|
||||
var label = L.DomUtil.create('span', '', closeLink);
|
||||
label.title = label.innerHTML = L._('Close');
|
||||
this.content = L.DomUtil.create('div', 'umap-help-content', this.box);
|
||||
L.DomEvent.on(closeLink, 'click', this.hide, this);
|
||||
},
|
||||
|
||||
onKeyDown: function (e) {
|
||||
var key = e.keyCode,
|
||||
ESC = 27;
|
||||
if (key === ESC) {
|
||||
this.hide();
|
||||
}
|
||||
},
|
||||
|
||||
show: function () {
|
||||
this.content.innerHTML = '';
|
||||
for (var i = 0, name; i < arguments.length; i++) {
|
||||
name = arguments[i];
|
||||
L.DomUtil.add('div', 'umap-help-entry', this.content, this.resolve(name));
|
||||
}
|
||||
L.DomUtil.addClass(document.body, 'umap-help-on');
|
||||
},
|
||||
|
||||
hide: function () {
|
||||
L.DomUtil.removeClass(document.body, 'umap-help-on');
|
||||
},
|
||||
|
||||
visible: function () {
|
||||
return L.DomUtil.hasClass(document.body, 'umap-help-on')
|
||||
},
|
||||
|
||||
resolve: function (name) {
|
||||
return typeof this[name] === 'function' ? this[name]() : this[name];
|
||||
},
|
||||
|
||||
button: function (container, entries) {
|
||||
var helpButton = L.DomUtil.create('a', 'umap-help-button', container);
|
||||
helpButton.href = '#';
|
||||
if (entries) {
|
||||
L.DomEvent
|
||||
.on(helpButton, 'click', L.DomEvent.stop)
|
||||
.on(helpButton, 'click', function (e) {
|
||||
var args = typeof entries === 'string' ? [entries] : entries;
|
||||
this.show.apply(this, args);
|
||||
}, this);
|
||||
}
|
||||
return helpButton;
|
||||
},
|
||||
|
||||
edit: function () {
|
||||
var container = L.DomUtil.create('div', ''),
|
||||
self = this,
|
||||
title = L.DomUtil.create('h3', '', container),
|
||||
actionsContainer = L.DomUtil.create('ul', 'umap-edit-actions', container);
|
||||
var addAction = function (action) {
|
||||
var actionContainer = L.DomUtil.add('li', '', actionsContainer);
|
||||
L.DomUtil.add('i', action.options.className, actionContainer),
|
||||
L.DomUtil.add('span', '', actionContainer, action.options.tooltip);
|
||||
L.DomEvent.on(actionContainer, 'click', action.addHooks, action);
|
||||
L.DomEvent.on(actionContainer, 'click', self.hide, self);
|
||||
};
|
||||
title.innerHTML = L._('Where do we go from here?');
|
||||
for (var id in this.map.helpMenuActions) {
|
||||
addAction(this.map.helpMenuActions[id]);
|
||||
}
|
||||
return container;
|
||||
},
|
||||
|
||||
importFormats: function () {
|
||||
var container = L.DomUtil.create('div');
|
||||
L.DomUtil.add('h3', '', container, 'GeojSON');
|
||||
L.DomUtil.add('p', '', container, L._('All properties are imported.'));
|
||||
L.DomUtil.add('h3', '', container, 'GPX');
|
||||
L.DomUtil.add('p', '', container, L._('Properties imported:') + 'name, desc');
|
||||
L.DomUtil.add('h3', '', container, 'KML');
|
||||
L.DomUtil.add('p', '', container, L._('Properties imported:') + 'name, description');
|
||||
L.DomUtil.add('h3', '', container, 'CSV');
|
||||
L.DomUtil.add('p', '', container, L._('Comma, tab or semi-colon separated values. SRS WGS84 is implied. Only Point geometries are imported. The import will look at the column headers for any mention of «lat» and «lon» at the begining of the header, case insensitive. All other column are imported as properties.'));
|
||||
L.DomUtil.add('h3', '', container, 'uMap');
|
||||
L.DomUtil.add('p', '', container, L._('Imports all umap data, including layers and settings.'));
|
||||
return container;
|
||||
},
|
||||
|
||||
textFormatting: function () {
|
||||
var container = L.DomUtil.create('div'),
|
||||
title = L.DomUtil.add('h3', '', container, L._('Text formatting')),
|
||||
elements = L.DomUtil.create('ul', '', container);
|
||||
L.DomUtil.add('li', '', elements, L._('*simple star for italic*'));
|
||||
L.DomUtil.add('li', '', elements, L._('**double star for bold**'));
|
||||
L.DomUtil.add('li', '', elements, L._('# one hash for main heading'));
|
||||
L.DomUtil.add('li', '', elements, L._('## two hashes for second heading'));
|
||||
L.DomUtil.add('li', '', elements, L._('### three hashes for third heading'));
|
||||
L.DomUtil.add('li', '', elements, L._('Simple link: [[http://example.com]]'));
|
||||
L.DomUtil.add('li', '', elements, L._('Link with text: [[http://example.com|text of the link]]'));
|
||||
L.DomUtil.add('li', '', elements, L._('Image: {{http://image.url.com}}'));
|
||||
L.DomUtil.add('li', '', elements, L._('Image with custom width (in px): {{http://image.url.com|width}}'));
|
||||
L.DomUtil.add('li', '', elements, L._('Iframe: {{{http://iframe.url.com}}}'));
|
||||
L.DomUtil.add('li', '', elements, L._('Iframe with custom height (in px): {{{http://iframe.url.com|height}}}'));
|
||||
L.DomUtil.add('li', '', elements, L._('Iframe with custom height and width (in px): {{{http://iframe.url.com|height*width}}}'));
|
||||
L.DomUtil.add('li', '', elements, L._('--- for an horizontal rule'));
|
||||
return container;
|
||||
},
|
||||
|
||||
dynamicProperties: function () {
|
||||
var container = L.DomUtil.create('div');
|
||||
L.DomUtil.add('h3', '', container, L._('Dynamic properties'));
|
||||
L.DomUtil.add('p', '', container, L._('Use placeholders with feature properties between brackets, eg. {name}, they will be dynamically replaced by the corresponding values.'));
|
||||
return container;
|
||||
},
|
||||
|
||||
formatURL: L._('Supported variables that will be dynamically replaced') + ': {bbox}, {lat}, {lng}, {zoom}, {east}, {north}..., {left}, {top}...',
|
||||
formatIconURL: L._('You can use feature properties as variables: ex.: with "http://myserver.org/images/{name}.png", the {name} variable will be replaced by the "name" value of each markers.'),
|
||||
colorValue: L._('Must be a valid CSS value (eg.: DarkBlue or #123456)'),
|
||||
smoothFactor: L._('How much to simplify the polyline on each zoom level (more = better performance and smoother look, less = more accurate)'),
|
||||
dashArray: L._('A comma separated list of numbers that defines the stroke dash pattern. Ex.: "5, 10, 15".'),
|
||||
zoomTo: L._('Zoom level for automatic zooms'),
|
||||
labelKey: L._('The name of the property to use as feature label (ex.: "nom")'),
|
||||
stroke: L._('Whether to display or not polygons paths.'),
|
||||
fill: L._('Whether to fill polygons with color.'),
|
||||
fillColor: L._('Optional. Same as color if not set.'),
|
||||
shortCredit: L._('Will be displayed in the bottom right corner of the map'),
|
||||
longCredit: L._('Will be visible in the caption of the map'),
|
||||
sortKey: L._('Property to use for sorting features'),
|
||||
filterKey: L._('Comma separated list of properties to use when filtering features'),
|
||||
interactive: L._('If false, the polygon will act as a part of the underlying map.'),
|
||||
outlink: L._('Define link to open in a new window on polygon click.'),
|
||||
dynamicRemoteData: L._('Fetch data each time map view changes.'),
|
||||
proxyRemoteData: L._('To use if remote server doesn\'t allow cross domain (slower)'),
|
||||
browsable: L._('Set it to false to hide this layer from the slideshow, the data browser, the popup navigation…')
|
||||
});
|
||||
|
||||
|
||||
L.U.Orderable = L.Evented.extend({
|
||||
|
||||
options: {
|
||||
selector: 'li',
|
||||
color: '#374E75'
|
||||
},
|
||||
|
||||
initialize: function (parent, options) {
|
||||
L.Util.setOptions(this, options);
|
||||
this.parent = parent;
|
||||
this.src = null;
|
||||
this.dst = null;
|
||||
this.els = this.parent.querySelectorAll(this.options.selector);
|
||||
for (var i = 0; i < this.els.length; i++) this.makeDraggable(this.els[i]);
|
||||
},
|
||||
|
||||
makeDraggable: function (node) {
|
||||
node.draggable = true;
|
||||
L.DomEvent.on(node, 'dragstart', this.onDragStart, this);
|
||||
L.DomEvent.on(node, 'dragenter', this.onDragEnter, this);
|
||||
L.DomEvent.on(node, 'dragover', this.onDragOver, this);
|
||||
L.DomEvent.on(node, 'dragleave', this.onDragLeave, this);
|
||||
L.DomEvent.on(node, 'drop', this.onDrop, this);
|
||||
L.DomEvent.on(node, 'dragend', this.onDragEnd, this);
|
||||
},
|
||||
|
||||
nodeIndex: function (node) {
|
||||
return Array.prototype.indexOf.call(this.parent.children, node);
|
||||
},
|
||||
|
||||
findTarget: function (node) {
|
||||
while (node) {
|
||||
if (this.nodeIndex(node) !== -1) return node;
|
||||
node = node.parentNode;
|
||||
}
|
||||
},
|
||||
|
||||
onDragStart: function (e) {
|
||||
// e.target is the source node.
|
||||
this.src = e.target;
|
||||
this.initialIndex = this.nodeIndex(this.src);
|
||||
this.srcBackgroundColor = this.src.style.backgroundColor;
|
||||
this.src.style.backgroundColor = this.options.color;
|
||||
e.dataTransfer.effectAllowed = 'move';
|
||||
e.dataTransfer.setData('text/html', this.src.innerHTML);
|
||||
},
|
||||
|
||||
onDragOver: function (e) {
|
||||
if (e.preventDefault) e.preventDefault(); // Necessary. Allows us to drop.
|
||||
e.dataTransfer.dropEffect = 'move';
|
||||
return false;
|
||||
},
|
||||
|
||||
onDragEnter: function (e) {
|
||||
// e.target is the current hover target.
|
||||
var dst = this.findTarget(e.target);
|
||||
if (!dst || dst === this.src) return;
|
||||
this.dst = dst;
|
||||
var targetIndex = this.nodeIndex(this.dst),
|
||||
srcIndex = this.nodeIndex(this.src);
|
||||
if (targetIndex > srcIndex) this.parent.insertBefore(this.dst, this.src);
|
||||
else this.parent.insertBefore(this.src, this.dst);
|
||||
},
|
||||
|
||||
onDragLeave: function (e) {
|
||||
// e.target is previous target element.
|
||||
},
|
||||
|
||||
onDrop: function (e) {
|
||||
// e.target is current target element.
|
||||
if (e.stopPropagation) e.stopPropagation(); // Stops the browser from redirecting.
|
||||
if (!this.dst) return;
|
||||
this.fire('drop', {
|
||||
src: this.src,
|
||||
initialIndex: this.initialIndex,
|
||||
finalIndex: this.nodeIndex(this.src),
|
||||
dst: this.dst
|
||||
});
|
||||
return false;
|
||||
},
|
||||
|
||||
onDragEnd: function (e) {
|
||||
// e.target is the source node.
|
||||
this.src.style.backgroundColor = this.srcBackgroundColor;
|
||||
}
|
||||
|
||||
});
|
1026
umap/static/umap/js/umap.features.js
Normal file
744
umap/static/umap/js/umap.forms.js
Normal file
|
@ -0,0 +1,744 @@
|
|||
L.FormBuilder.Element.include({
|
||||
|
||||
getParentNode: function () {
|
||||
if (this.options.wrapper) {
|
||||
return L.DomUtil.create(this.options.wrapper, this.options.wrapperClass || '', this.form);
|
||||
}
|
||||
var className = 'formbox';
|
||||
if (this.options.inheritable) {
|
||||
className += this.get(true) === undefined ? ' inheritable undefined' : ' inheritable ';
|
||||
}
|
||||
className += ' umap-field-' + this.name;
|
||||
this.wrapper = L.DomUtil.create('div', className, this.form);
|
||||
this.header = L.DomUtil.create('div', 'header', this.wrapper);
|
||||
if (this.options.inheritable) {
|
||||
var undefine = L.DomUtil.add('a', 'button undefine', this.header, L._('clear'));
|
||||
var define = L.DomUtil.add('a', 'button define', this.header, L._('define'));
|
||||
L.DomEvent.on(define, 'click', function (e) {
|
||||
L.DomEvent.stop(e);
|
||||
this.fetch();
|
||||
this.fire('define');
|
||||
L.DomUtil.removeClass(this.wrapper, 'undefined');
|
||||
}, this);
|
||||
L.DomEvent.on(undefine, 'click', function (e) {
|
||||
L.DomEvent.stop(e);
|
||||
L.DomUtil.addClass(this.wrapper, 'undefined');
|
||||
this.clear();
|
||||
this.sync();
|
||||
}, this);
|
||||
}
|
||||
this.quickContainer = L.DomUtil.create('span', 'quick-actions show-on-defined', this.header);
|
||||
this.extendedContainer = L.DomUtil.create('div', 'show-on-defined', this.wrapper);
|
||||
return this.extendedContainer;
|
||||
},
|
||||
|
||||
getLabelParent: function () {
|
||||
return this.header;
|
||||
},
|
||||
|
||||
clear: function () {
|
||||
this.input.value = '';
|
||||
},
|
||||
|
||||
get: function (own) {
|
||||
if (!this.options.inheritable || own) return this.builder.getter(this.field);
|
||||
var path = this.field.split('.'),
|
||||
key = path[path.length - 1];
|
||||
return this.obj.getOption(key);
|
||||
},
|
||||
|
||||
buildLabel: function () {
|
||||
if (this.options.label) {
|
||||
this.label = L.DomUtil.create('label', '', this.getLabelParent());
|
||||
this.label.innerHTML = this.label.title = this.options.label;
|
||||
if (this.options.helpEntries) this.builder.map.help.button(this.label, this.options.helpEntries);
|
||||
else if (this.options.helpText) {
|
||||
var info = L.DomUtil.create('i', 'info', this.label);
|
||||
L.DomEvent.on(info, 'mouseover', function () {
|
||||
this.builder.map.ui.tooltip({anchor: info, content: this.options.helpText, position: 'top'});
|
||||
}, this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.Select.include({
|
||||
|
||||
clear: function () {
|
||||
this.select.value = '';
|
||||
},
|
||||
|
||||
getDefault: function () {
|
||||
if (this.options.inheritable) return undefined
|
||||
else return L.FormBuilder.Select.prototype.getDefault.call(this)
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.CheckBox.include({
|
||||
|
||||
value: function () {
|
||||
return L.DomUtil.hasClass(this.wrapper, 'undefined') ? undefined : this.input.checked;
|
||||
},
|
||||
|
||||
clear: function () {
|
||||
this.fetch();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.ColorPicker = L.FormBuilder.Input.extend({
|
||||
|
||||
colors: [
|
||||
'Black', 'Navy', 'DarkBlue', 'MediumBlue', 'Blue', 'DarkGreen',
|
||||
'Green', 'Teal', 'DarkCyan', 'DeepSkyBlue', 'DarkTurquoise',
|
||||
'MediumSpringGreen', 'Lime', 'SpringGreen', 'Aqua', 'Cyan',
|
||||
'MidnightBlue', 'DodgerBlue', 'LightSeaGreen', 'ForestGreen',
|
||||
'SeaGreen', 'DarkSlateGray', 'DarkSlateGrey', 'LimeGreen',
|
||||
'MediumSeaGreen', 'Turquoise', 'RoyalBlue', 'SteelBlue',
|
||||
'DarkSlateBlue', 'MediumTurquoise', 'Indigo', 'DarkOliveGreen',
|
||||
'CadetBlue', 'CornflowerBlue', 'MediumAquaMarine', 'DimGray',
|
||||
'DimGrey', 'SlateBlue', 'OliveDrab', 'SlateGray', 'SlateGrey',
|
||||
'LightSlateGray', 'LightSlateGrey', 'MediumSlateBlue', 'LawnGreen',
|
||||
'Chartreuse', 'Aquamarine', 'Maroon', 'Purple', 'Olive', 'Gray',
|
||||
'Grey', 'SkyBlue', 'LightSkyBlue', 'BlueViolet', 'DarkRed',
|
||||
'DarkMagenta', 'SaddleBrown', 'DarkSeaGreen', 'LightGreen',
|
||||
'MediumPurple', 'DarkViolet', 'PaleGreen', 'DarkOrchid',
|
||||
'YellowGreen', 'Sienna', 'Brown', 'DarkGray', 'DarkGrey',
|
||||
'LightBlue', 'GreenYellow', 'PaleTurquoise', 'LightSteelBlue',
|
||||
'PowderBlue', 'FireBrick', 'DarkGoldenRod', 'MediumOrchid',
|
||||
'RosyBrown', 'DarkKhaki', 'Silver', 'MediumVioletRed', 'IndianRed',
|
||||
'Peru', 'Chocolate', 'Tan', 'LightGray', 'LightGrey', 'Thistle',
|
||||
'Orchid', 'GoldenRod', 'PaleVioletRed', 'Crimson', 'Gainsboro',
|
||||
'Plum', 'BurlyWood', 'LightCyan', 'Lavender', 'DarkSalmon',
|
||||
'Violet', 'PaleGoldenRod', 'LightCoral', 'Khaki', 'AliceBlue',
|
||||
'HoneyDew', 'Azure', 'SandyBrown', 'Wheat', 'Beige', 'WhiteSmoke',
|
||||
'MintCream', 'GhostWhite', 'Salmon', 'AntiqueWhite', 'Linen',
|
||||
'LightGoldenRodYellow', 'OldLace', 'Red', 'Fuchsia', 'Magenta',
|
||||
'DeepPink', 'OrangeRed', 'Tomato', 'HotPink', 'Coral', 'DarkOrange',
|
||||
'LightSalmon', 'Orange', 'LightPink', 'Pink', 'Gold', 'PeachPuff',
|
||||
'NavajoWhite', 'Moccasin', 'Bisque', 'MistyRose', 'BlanchedAlmond',
|
||||
'PapayaWhip', 'LavenderBlush', 'SeaShell', 'Cornsilk',
|
||||
'LemonChiffon', 'FloralWhite', 'Snow', 'Yellow', 'LightYellow',
|
||||
'Ivory', 'White'
|
||||
],
|
||||
|
||||
getParentNode: function () {
|
||||
L.FormBuilder.CheckBox.prototype.getParentNode.call(this);
|
||||
return this.quickContainer;
|
||||
},
|
||||
|
||||
build: function () {
|
||||
L.FormBuilder.Input.prototype.build.call(this);
|
||||
this.input.placeholder = this.options.placeholder || L._('Inherit');
|
||||
this.container = L.DomUtil.create('div', 'umap-color-picker', this.extendedContainer);
|
||||
this.container.style.display = 'none';
|
||||
for (var idx in this.colors) {
|
||||
this.addColor(this.colors[idx]);
|
||||
}
|
||||
this.spreadColor();
|
||||
this.input.autocomplete = 'off';
|
||||
L.DomEvent.on(this.input, 'focus', this.onFocus, this);
|
||||
L.DomEvent.on(this.input, 'blur', this.onBlur, this);
|
||||
L.DomEvent.on(this.input, 'change', this.sync, this);
|
||||
this.on('define', this.onFocus);
|
||||
},
|
||||
|
||||
onFocus: function () {
|
||||
this.container.style.display = 'block';
|
||||
this.spreadColor();
|
||||
},
|
||||
|
||||
onBlur: function () {
|
||||
var self = this,
|
||||
closePicker = function () {
|
||||
self.container.style.display = 'none';
|
||||
};
|
||||
// We must leave time for the click to be listened.
|
||||
window.setTimeout(closePicker, 100);
|
||||
},
|
||||
|
||||
sync: function () {
|
||||
this.spreadColor();
|
||||
L.FormBuilder.Input.prototype.sync.call(this);
|
||||
},
|
||||
|
||||
spreadColor: function () {
|
||||
if (this.input.value) this.input.style.backgroundColor = this.input.value;
|
||||
else this.input.style.backgroundColor = 'inherit';
|
||||
},
|
||||
|
||||
addColor: function (colorName) {
|
||||
var span = L.DomUtil.create('span', '', this.container);
|
||||
span.style.backgroundColor = span.title = colorName;
|
||||
var updateColorInput = function () {
|
||||
this.input.value = colorName;
|
||||
this.sync();
|
||||
this.container.style.display = 'none';
|
||||
};
|
||||
L.DomEvent.on(span, 'mousedown', updateColorInput, this);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.TextColorPicker = L.FormBuilder.ColorPicker.extend({
|
||||
colors: [
|
||||
'Black', 'DarkSlateGrey', 'DimGrey', 'SlateGrey', 'LightSlateGrey',
|
||||
'Grey', 'DarkGrey', 'LightGrey', 'White'
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.IconClassSwitcher = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
['Default', L._('Default')],
|
||||
['Circle', L._('Circle')],
|
||||
['Drop', L._('Drop')],
|
||||
['Ball', L._('Ball')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.PopupTemplate = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
['Default', L._('Name and description')],
|
||||
['Large', L._('Name and description (large)')],
|
||||
['Table', L._('Table')],
|
||||
['GeoRSSImage', L._('GeoRSS (title + image)')],
|
||||
['GeoRSSLink', L._('GeoRSS (only link)')],
|
||||
['SimplePanel', L._('Side panel')]
|
||||
],
|
||||
|
||||
toJS: function () {
|
||||
var value = L.FormBuilder.Select.prototype.toJS.apply(this);
|
||||
if (value === 'table') { value = 'Table'; }
|
||||
return value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.LayerTypeChooser = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
['Default', L._('Default')],
|
||||
['Cluster', L._('Clustered')],
|
||||
['Heat', L._('Heatmap')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.SlideshowDelay = L.FormBuilder.IntSelect.extend({
|
||||
|
||||
getOptions: function () {
|
||||
var options = [];
|
||||
for (var i = 1; i < 30; i++) {
|
||||
options.push([i * 1000, L._('{delay} seconds', {delay: i})]);
|
||||
}
|
||||
return options;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.DataLayerSwitcher = L.FormBuilder.Select.extend({
|
||||
|
||||
getOptions: function () {
|
||||
var options = [];
|
||||
this.builder.map.eachDataLayerReverse(function (datalayer) {
|
||||
if(datalayer.isLoaded() && !datalayer.isRemoteLayer() && datalayer.canBrowse()) {
|
||||
options.push([L.stamp(datalayer), datalayer.getName()]);
|
||||
}
|
||||
});
|
||||
return options;
|
||||
},
|
||||
|
||||
toHTML: function () {
|
||||
return L.stamp(this.obj.datalayer);
|
||||
},
|
||||
|
||||
toJS: function () {
|
||||
return this.builder.map.datalayers[this.value()];
|
||||
},
|
||||
|
||||
set: function () {
|
||||
this.builder.map.lastUsedDataLayer = this.toJS();
|
||||
this.obj.changeDataLayer(this.toJS());
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.onLoadPanel = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
['none', L._('None')],
|
||||
['caption', L._('Caption')],
|
||||
['databrowser', L._('Data browser')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.DataFormat = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
[undefined, L._('Choose the data format')],
|
||||
['geojson', 'geojson'],
|
||||
['osm', 'osm'],
|
||||
['csv', 'csv'],
|
||||
['gpx', 'gpx'],
|
||||
['kml', 'kml'],
|
||||
['georss', 'georss']
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.LabelDirection = L.FormBuilder.Select.extend({
|
||||
|
||||
selectOptions: [
|
||||
['auto', L._('Automatic')],
|
||||
['left', L._('On the left')],
|
||||
['right', L._('On the right')],
|
||||
['top', L._('On the top')],
|
||||
['bottom', L._('On the bottom')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.LicenceChooser = L.FormBuilder.Select.extend({
|
||||
|
||||
getOptions: function () {
|
||||
var licences = [],
|
||||
licencesList = this.builder.obj.options.licences,
|
||||
licence;
|
||||
for (var i in licencesList) {
|
||||
licence = licencesList[i];
|
||||
licences.push([i, licence.name]);
|
||||
}
|
||||
return licences;
|
||||
},
|
||||
|
||||
toHTML: function () {
|
||||
return this.get().name;
|
||||
},
|
||||
|
||||
toJS: function () {
|
||||
return this.builder.obj.options.licences[this.value()];
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
L.FormBuilder.NullableBoolean = L.FormBuilder.Select.extend({
|
||||
selectOptions: [
|
||||
[undefined, L._('inherit')],
|
||||
[true, L._('yes')],
|
||||
[false, L._('no')]
|
||||
],
|
||||
|
||||
toJS: function () {
|
||||
var value = this.value();
|
||||
switch (value) {
|
||||
case 'true':
|
||||
case true:
|
||||
value = true;
|
||||
break;
|
||||
case 'false':
|
||||
case false:
|
||||
value = false;
|
||||
break;
|
||||
default:
|
||||
value = undefined;
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.IconUrl = L.FormBuilder.Input.extend({
|
||||
|
||||
type: function () {
|
||||
return 'hidden';
|
||||
},
|
||||
|
||||
build: function () {
|
||||
L.FormBuilder.Input.prototype.build.call(this);
|
||||
this.parentContainer = L.DomUtil.create('div', 'umap-form-iconfield', this.parentNode);
|
||||
this.buttonsContainer = L.DomUtil.create('div', '', this.parentContainer);
|
||||
this.pictogramsContainer = L.DomUtil.create('div', 'umap-pictogram-list', this.parentContainer);
|
||||
this.input.type = 'hidden';
|
||||
this.input.placeholder = L._('Url');
|
||||
this.udpatePreview();
|
||||
this.on('define', this.fetchIconList);
|
||||
},
|
||||
|
||||
udpatePreview: function () {
|
||||
if (this.value() && this.value().indexOf('{') === -1) { // Do not try to render URL with variables
|
||||
var img = L.DomUtil.create('img', '', L.DomUtil.create('div', 'umap-icon-choice', this.buttonsContainer));
|
||||
img.src = this.value();
|
||||
L.DomEvent.on(img, 'click', this.fetchIconList, this);
|
||||
}
|
||||
this.button = L.DomUtil.create('a', '', this.buttonsContainer);
|
||||
this.button.innerHTML = this.value() ? L._('Change symbol') : L._('Add symbol');
|
||||
this.button.href = '#';
|
||||
L.DomEvent
|
||||
.on(this.button, 'click', L.DomEvent.stop)
|
||||
.on(this.button, 'click', this.fetchIconList, this);
|
||||
},
|
||||
|
||||
addIconPreview: function (pictogram) {
|
||||
var baseClass = 'umap-icon-choice',
|
||||
value = pictogram.src,
|
||||
className = value === this.value() ? baseClass + ' selected' : baseClass,
|
||||
container = L.DomUtil.create('div', className, this.pictogramsContainer),
|
||||
img = L.DomUtil.create('img', '', container);
|
||||
img.src = value;
|
||||
if (pictogram.name && pictogram.attribution) {
|
||||
img.title = pictogram.name + ' — © ' + pictogram.attribution;
|
||||
}
|
||||
L.DomEvent.on(container, 'click', function (e) {
|
||||
this.input.value = value;
|
||||
this.sync();
|
||||
this.unselectAll(this.pictogramsContainer);
|
||||
L.DomUtil.addClass(container, 'selected');
|
||||
this.pictogramsContainer.innerHTML = '';
|
||||
this.udpatePreview();
|
||||
}, this);
|
||||
},
|
||||
|
||||
clear: function () {
|
||||
this.input.value = '';
|
||||
this.unselectAll(this.pictogramsContainer);
|
||||
this.sync();
|
||||
this.pictogramsContainer.innerHTML = '';
|
||||
this.udpatePreview();
|
||||
},
|
||||
|
||||
buildIconList: function (data) {
|
||||
this.pictogramsContainer.innerHTML = '';
|
||||
this.buttonsContainer.innerHTML = '';
|
||||
for (var idx in data.pictogram_list) {
|
||||
this.addIconPreview(data.pictogram_list[idx]);
|
||||
}
|
||||
var cancelButton = L.DomUtil.create('a', '', this.pictogramsContainer);
|
||||
cancelButton.innerHTML = L._('Cancel');
|
||||
cancelButton.href = '#';
|
||||
cancelButton.style.display = 'block';
|
||||
cancelButton.style.clear = 'both';
|
||||
L.DomEvent
|
||||
.on(cancelButton, 'click', L.DomEvent.stop)
|
||||
.on(cancelButton, 'click', function (e) {
|
||||
this.pictogramsContainer.innerHTML = '';
|
||||
this.udpatePreview();
|
||||
}, this);
|
||||
var customButton = L.DomUtil.create('a', '', this.pictogramsContainer);
|
||||
customButton.innerHTML = L._('Set URL');
|
||||
customButton.href = '#';
|
||||
customButton.style.display = 'block';
|
||||
customButton.style.clear = 'both';
|
||||
this.builder.map.help.button(customButton, 'formatIconURL');
|
||||
L.DomEvent
|
||||
.on(customButton, 'click', L.DomEvent.stop)
|
||||
.on(customButton, 'click', function (e) {
|
||||
this.input.type = 'url';
|
||||
this.pictogramsContainer.innerHTML = '';
|
||||
}, this);
|
||||
},
|
||||
|
||||
fetchIconList: function (e) {
|
||||
this.builder.map.get(this.builder.map.options.urls.pictogram_list_json, {
|
||||
callback: this.buildIconList,
|
||||
context: this
|
||||
});
|
||||
},
|
||||
|
||||
unselectAll: function (container) {
|
||||
var els = container.querySelectorAll('div.selected');
|
||||
for (var el in els) {
|
||||
if (els.hasOwnProperty(el)) L.DomUtil.removeClass(els[el], 'selected');
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.Url = L.FormBuilder.Input.extend({
|
||||
|
||||
type: function () {
|
||||
return 'url';
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.Switch = L.FormBuilder.CheckBox.extend({
|
||||
|
||||
getParentNode: function () {
|
||||
L.FormBuilder.CheckBox.prototype.getParentNode.call(this);
|
||||
if (this.options.inheritable) return this.quickContainer;
|
||||
return this.extendedContainer;
|
||||
},
|
||||
|
||||
build: function () {
|
||||
L.FormBuilder.CheckBox.prototype.build.apply(this);
|
||||
if (this.options.inheritable) this.label = L.DomUtil.create('label', '', this.input.parentNode);
|
||||
else this.input.parentNode.appendChild(this.label);
|
||||
L.DomUtil.addClass(this.input.parentNode, 'with-switch');
|
||||
var id = (this.builder.options.id || Date.now()) + '.' + this.name;
|
||||
this.label.setAttribute('for', id);
|
||||
L.DomUtil.addClass(this.input, 'switch');
|
||||
this.input.id = id;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.MultiChoice = L.FormBuilder.Element.extend({
|
||||
|
||||
default: 'null',
|
||||
className: 'umap-multiplechoice',
|
||||
|
||||
clear: function () {
|
||||
var checked = this.container.querySelector('input[type="radio"]:checked');
|
||||
if (checked) checked.checked = false;
|
||||
},
|
||||
|
||||
fetch: function () {
|
||||
var value = this.backup = this.toHTML();
|
||||
if (value === null || value === undefined) value = this.default;
|
||||
this.container.querySelector('input[type="radio"][value="' + value + '"]').checked = true;
|
||||
},
|
||||
|
||||
value: function () {
|
||||
var checked = this.container.querySelector('input[type="radio"]:checked');
|
||||
if (checked) return checked.value;
|
||||
},
|
||||
|
||||
getChoices: function () {
|
||||
return this.options.choices || this.choices;
|
||||
},
|
||||
|
||||
build: function () {
|
||||
var choices = this.getChoices();
|
||||
this.container = L.DomUtil.create('div', this.className + ' by' + choices.length, this.parentNode);
|
||||
for (var i = 0; i < choices.length; i++) {
|
||||
this.addChoice(choices[i][0], choices[i][1], i);
|
||||
}
|
||||
this.fetch();
|
||||
},
|
||||
|
||||
addChoice: function (value, label, counter) {
|
||||
var input = L.DomUtil.create('input', '', this.container);
|
||||
label = L.DomUtil.add('label', '', this.container, label);
|
||||
input.type = 'radio';
|
||||
input.name = this.name;
|
||||
input.value = value;
|
||||
var id = Date.now() + '.' + this.name + '.' + counter;
|
||||
label.setAttribute('for', id);
|
||||
input.id = id;
|
||||
L.DomEvent.on(input, 'change', this.sync, this);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.TernaryChoices = L.FormBuilder.MultiChoice.extend({
|
||||
|
||||
default: 'null',
|
||||
|
||||
toJS: function () {
|
||||
var value = this.value();
|
||||
switch (value) {
|
||||
case 'true':
|
||||
case true:
|
||||
value = true;
|
||||
break;
|
||||
case 'false':
|
||||
case false:
|
||||
value = false;
|
||||
break;
|
||||
default:
|
||||
value = null;
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.ControlChoice = L.FormBuilder.TernaryChoices.extend({
|
||||
|
||||
choices: [
|
||||
[true, L._('always')],
|
||||
[false, L._('never')],
|
||||
['null', L._('hidden')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
|
||||
L.FormBuilder.LabelChoice = L.FormBuilder.TernaryChoices.extend({
|
||||
|
||||
default: false,
|
||||
|
||||
choices: [
|
||||
[true, L._('always')],
|
||||
[false, L._('never')],
|
||||
['null', L._('on hover')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.DataLayersControl = L.FormBuilder.ControlChoice.extend({
|
||||
|
||||
choices: [
|
||||
[true, L._('collapsed')],
|
||||
['expanded', L._('expanded')],
|
||||
[false, L._('never')],
|
||||
['null', L._('hidden')]
|
||||
],
|
||||
|
||||
toJS: function () {
|
||||
var value = this.value();
|
||||
if (value !== 'expanded') value = L.FormBuilder.ControlChoice.prototype.toJS.call(this);
|
||||
return value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.OutlinkTarget = L.FormBuilder.MultiChoice.extend({
|
||||
|
||||
default: 'blank',
|
||||
|
||||
choices: [
|
||||
['blank', L._('new window')],
|
||||
['self', L._('iframe')],
|
||||
['parent', L._('parent window')]
|
||||
]
|
||||
|
||||
});
|
||||
|
||||
L.FormBuilder.Range = L.FormBuilder.Input.extend({
|
||||
|
||||
type: function () {
|
||||
return 'range';
|
||||
},
|
||||
|
||||
value: function () {
|
||||
return L.DomUtil.hasClass(this.wrapper, 'undefined') ? undefined : this.input.value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
L.FormBuilder.ManageOwner = L.FormBuilder.Element.extend({
|
||||
|
||||
build: function () {
|
||||
var options = {className: 'edit-owner'};
|
||||
options.on_select = (choice) => {
|
||||
this._value = {
|
||||
'id': choice.item.value,
|
||||
'name': choice.item.label,
|
||||
'url': choice.item.url
|
||||
};
|
||||
this.set();
|
||||
}
|
||||
this.autocomplete = new L.U.AutoComplete.Ajax.Select(this.parentNode, options);
|
||||
var owner = this.toHTML();
|
||||
if (owner) this.autocomplete.displaySelected({'item': {'value': owner.id, 'label': owner.name}});
|
||||
},
|
||||
|
||||
value: function () {
|
||||
return this._value;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
L.FormBuilder.ManageEditors = L.FormBuilder.Element.extend({
|
||||
|
||||
build: function () {
|
||||
var options = {className: 'edit-editors'};
|
||||
options.on_select = (choice) => {
|
||||
this._values.push({
|
||||
'id': choice.item.value,
|
||||
'name': choice.item.label,
|
||||
'url': choice.item.url
|
||||
});
|
||||
this.set();
|
||||
}
|
||||
options.on_unselect = (choice) => {
|
||||
var index = this._values.findIndex((item) => item.id === choice.item.value);
|
||||
if (index !== -1) {
|
||||
this._values.splice(index, 1);
|
||||
this.set();
|
||||
}
|
||||
}
|
||||
this.autocomplete = new L.U.AutoComplete.Ajax.SelectMultiple(this.parentNode, options);
|
||||
this._values = this.toHTML();
|
||||
if (this._values) for (var i = 0; i < this._values.length; i++) this.autocomplete.displaySelected({'item': {'value': this._values[i].id, 'label': this._values[i].name}});
|
||||
},
|
||||
|
||||
value: function () {
|
||||
return this._values;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.U.FormBuilder = L.FormBuilder.extend({
|
||||
|
||||
options: {
|
||||
className: 'umap-form'
|
||||
},
|
||||
|
||||
defaultOptions: {
|
||||
name: {label: L._('name')},
|
||||
description: {label: L._('description'), handler: 'Textarea', helpEntries: 'textFormatting'},
|
||||
color: {handler: 'ColorPicker', label: L._('color'), helpEntries: 'colorValue', inheritable: true},
|
||||
opacity: {handler: 'Range', min: 0.1, max: 1, step: 0.1, label: L._('opacity'), inheritable: true},
|
||||
stroke: {handler: 'Switch', label: L._('stroke'), helpEntries: 'stroke', inheritable: true},
|
||||
weight: {handler: 'Range', min: 1, max: 20, step: 1, label: L._('weight'), inheritable: true},
|
||||
fill: {handler: 'Switch', label: L._('fill'), helpEntries: 'fill', inheritable: true},
|
||||
fillColor: {handler: 'ColorPicker', label: L._('fill color'), helpEntries: 'fillColor', inheritable: true},
|
||||
fillOpacity: {handler: 'Range', min: 0.1, max: 1, step: 0.1, label: L._('fill opacity'), inheritable: true},
|
||||
smoothFactor: {handler: 'Range', min: 0, max: 10, step: 0.5, label: L._('Simplify'), helpEntries: 'smoothFactor', inheritable: true},
|
||||
dashArray: {label: L._('dash array'), helpEntries: 'dashArray', inheritable: true},
|
||||
iconClass: {handler: 'IconClassSwitcher', label: L._('Icon shape'), inheritable: true},
|
||||
iconUrl: {handler: 'IconUrl', label: L._('Icon symbol'), inheritable: true},
|
||||
popupTemplate: {handler: 'PopupTemplate', label: L._('Popup style'), inheritable: true},
|
||||
popupContentTemplate: {label: L._('Popup content template'), handler: 'Textarea', helpEntries: ['dynamicProperties', 'textFormatting'], placeholder: '# {name}', inheritable: true},
|
||||
datalayer: {handler: 'DataLayerSwitcher', label: L._('Choose the layer of the feature')},
|
||||
moreControl: {handler: 'Switch', label: L._('Do you want to display the «more» control?')},
|
||||
scrollWheelZoom: {handler: 'Switch', label: L._('Allow scroll wheel zoom?')},
|
||||
miniMap: {handler: 'Switch', label: L._('Do you want to display a minimap?')},
|
||||
scaleControl: {handler: 'Switch', label: L._('Do you want to display the scale control?')},
|
||||
onLoadPanel: {handler: 'onLoadPanel', label: L._('Do you want to display a panel on load?')},
|
||||
displayPopupFooter: {handler: 'Switch', label: L._('Do you want to display popup footer?')},
|
||||
captionBar: {handler: 'Switch', label: L._('Do you want to display a caption bar?')},
|
||||
zoomTo: {handler: 'IntInput', placeholder: L._('Inherit'), helpEntries: 'zoomTo', label: L._('Default zoom level'), inheritable: true},
|
||||
showLabel: {handler: 'LabelChoice', label: L._('Display label'), inheritable: true},
|
||||
labelDirection: {handler: 'LabelDirection', label: L._('Label direction'), inheritable: true},
|
||||
labelInteractive: {handler: 'Switch', label: L._('Labels are clickable'), inheritable: true},
|
||||
labelKey: {helpEntries: 'labelKey', placeholder: L._('Default: name'), label: L._('Label key'), inheritable: true},
|
||||
zoomControl: {handler: 'ControlChoice', label: L._('Display the zoom control')},
|
||||
searchControl: {handler: 'ControlChoice', label: L._('Display the search control')},
|
||||
fullscreenControl: {handler: 'ControlChoice', label: L._('Display the fullscreen control')},
|
||||
embedControl: {handler: 'ControlChoice', label: L._('Display the embed control')},
|
||||
locateControl: {handler: 'ControlChoice', label: L._('Display the locate control')},
|
||||
measureControl: {handler: 'ControlChoice', label: L._('Display the measure control')},
|
||||
tilelayersControl: {handler: 'ControlChoice', label: L._('Display the tile layers control')},
|
||||
editinosmControl: {handler: 'ControlChoice', label: L._('Display the control to open OpenStreetMap editor')},
|
||||
datalayersControl: {handler: 'DataLayersControl', label: L._('Display the data layers control')},
|
||||
},
|
||||
|
||||
initialize: function (obj, fields, options) {
|
||||
this.map = obj.getMap();
|
||||
L.FormBuilder.prototype.initialize.call(this, obj, fields, options);
|
||||
this.on('finish', this.finish);
|
||||
},
|
||||
|
||||
setter: function (field, value) {
|
||||
L.FormBuilder.prototype.setter.call(this, field, value);
|
||||
this.obj.isDirty = true;
|
||||
},
|
||||
|
||||
finish: function () {
|
||||
this.map.ui.closePanel();
|
||||
}
|
||||
|
||||
});
|
181
umap/static/umap/js/umap.icon.js
Normal file
|
@ -0,0 +1,181 @@
|
|||
L.U.Icon = L.DivIcon.extend({
|
||||
initialize: function(map, options) {
|
||||
this.map = map;
|
||||
var default_options = {
|
||||
iconSize: null, // Made in css
|
||||
iconUrl: this.map.getDefaultOption('iconUrl'),
|
||||
feature: null
|
||||
};
|
||||
options = L.Util.extend({}, default_options, options);
|
||||
L.Icon.prototype.initialize.call(this, options);
|
||||
this.feature = this.options.feature;
|
||||
if (this.feature && this.feature.isReadOnly()) {
|
||||
this.options.className += ' readonly';
|
||||
}
|
||||
},
|
||||
|
||||
_getIconUrl: function (name) {
|
||||
var url;
|
||||
if(this.feature && this.feature._getIconUrl(name)) url = this.feature._getIconUrl(name);
|
||||
else url = this.options[name + 'Url'];
|
||||
return this.formatUrl(url, this.feature);
|
||||
},
|
||||
|
||||
_getColor: function () {
|
||||
var color;
|
||||
if(this.feature) color = this.feature.getOption('color');
|
||||
else if (this.options.color) color = this.options.color;
|
||||
else color = this.map.getDefaultOption('color');
|
||||
return color;
|
||||
},
|
||||
|
||||
formatUrl: function (url, feature) {
|
||||
return L.Util.greedyTemplate(url || '', feature ? feature.properties : {});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.U.Icon.Default = L.U.Icon.extend({
|
||||
default_options: {
|
||||
iconAnchor: new L.Point(16, 40),
|
||||
popupAnchor: new L.Point(0, -40),
|
||||
tooltipAnchor: new L.Point(16, -24),
|
||||
className: 'umap-div-icon'
|
||||
},
|
||||
|
||||
initialize: function(map, options) {
|
||||
options = L.Util.extend({}, this.default_options, options);
|
||||
L.U.Icon.prototype.initialize.call(this, map, options);
|
||||
},
|
||||
|
||||
_setColor: function() {
|
||||
var color = this._getColor();
|
||||
this.elements.container.style.backgroundColor = color;
|
||||
this.elements.arrow.style.borderTopColor = color;
|
||||
},
|
||||
|
||||
createIcon: function() {
|
||||
this.elements = {};
|
||||
this.elements.main = L.DomUtil.create('div');
|
||||
this.elements.container = L.DomUtil.create('div', 'icon_container', this.elements.main);
|
||||
this.elements.arrow = L.DomUtil.create('div', 'icon_arrow', this.elements.main);
|
||||
this.elements.img = L.DomUtil.create('img', null, this.elements.container);
|
||||
var src = this._getIconUrl('icon');
|
||||
if (src) this.elements.img.src = src;
|
||||
this._setColor();
|
||||
this._setIconStyles(this.elements.main, 'icon');
|
||||
return this.elements.main;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.U.Icon.Circle = L.U.Icon.extend({
|
||||
initialize: function(map, options) {
|
||||
var default_options = {
|
||||
iconAnchor: new L.Point(6, 6),
|
||||
popupAnchor: new L.Point(0, -6),
|
||||
tooltipAnchor: new L.Point(6, 0),
|
||||
className: 'umap-circle-icon'
|
||||
};
|
||||
options = L.Util.extend({}, default_options, options);
|
||||
L.U.Icon.prototype.initialize.call(this, map, options);
|
||||
},
|
||||
|
||||
_setColor: function() {
|
||||
this.elements.main.style.backgroundColor = this._getColor();
|
||||
},
|
||||
|
||||
createIcon: function() {
|
||||
this.elements = {};
|
||||
this.elements.main = L.DomUtil.create('div');
|
||||
this.elements.main.innerHTML = ' ';
|
||||
this._setColor();
|
||||
this._setIconStyles(this.elements.main, 'icon');
|
||||
return this.elements.main;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
L.U.Icon.Drop = L.U.Icon.Default.extend({
|
||||
default_options: {
|
||||
iconAnchor: new L.Point(16, 42),
|
||||
popupAnchor: new L.Point(0, -42),
|
||||
tooltipAnchor: new L.Point(16, -24),
|
||||
className: 'umap-drop-icon'
|
||||
}
|
||||
});
|
||||
|
||||
L.U.Icon.Ball = L.U.Icon.Default.extend({
|
||||
default_options: {
|
||||
iconAnchor: new L.Point(8, 30),
|
||||
popupAnchor: new L.Point(0, -28),
|
||||
tooltipAnchor: new L.Point(8, -23),
|
||||
className: 'umap-ball-icon'
|
||||
},
|
||||
|
||||
createIcon: function() {
|
||||
this.elements = {};
|
||||
this.elements.main = L.DomUtil.create('div');
|
||||
this.elements.container = L.DomUtil.create('div', 'icon_container', this.elements.main);
|
||||
this.elements.arrow = L.DomUtil.create('div', 'icon_arrow', this.elements.main);
|
||||
this._setColor();
|
||||
this._setIconStyles(this.elements.main, 'icon');
|
||||
return this.elements.main;
|
||||
},
|
||||
|
||||
_setColor: function() {
|
||||
var color = this._getColor('color'),
|
||||
background;
|
||||
if (L.Browser.ielt9) {
|
||||
background = color;
|
||||
}
|
||||
else if (L.Browser.webkit) {
|
||||
background = '-webkit-gradient( radial, 6 38%, 0, 6 38%, 8, from(white), to(' + color + ') )';
|
||||
}
|
||||
else {
|
||||
background = 'radial-gradient(circle at 6px 38% , white -4px, ' + color + ' 8px) repeat scroll 0 0 transparent';
|
||||
}
|
||||
this.elements.container.style.background = background;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
var _CACHE_COLOR = {};
|
||||
L.U.Icon.Cluster = L.DivIcon.extend({
|
||||
options: {
|
||||
iconSize: [40, 40]
|
||||
},
|
||||
|
||||
initialize: function (datalayer, cluster) {
|
||||
this.datalayer = datalayer;
|
||||
this.cluster = cluster;
|
||||
},
|
||||
|
||||
createIcon: function () {
|
||||
var container = L.DomUtil.create('div', 'leaflet-marker-icon marker-cluster'),
|
||||
div = L.DomUtil.create('div', '', container),
|
||||
span = L.DomUtil.create('span', '', div),
|
||||
backgroundColor = this.datalayer.getColor();
|
||||
span.innerHTML = this.cluster.getChildCount();
|
||||
div.style.backgroundColor = backgroundColor;
|
||||
return container;
|
||||
},
|
||||
|
||||
computeTextColor: function (el) {
|
||||
var color,
|
||||
backgroundColor = this.datalayer.getColor();
|
||||
if (this.datalayer.options.cluster && this.datalayer.options.cluster.textColor) {
|
||||
color = this.datalayer.options.cluster.textColor;
|
||||
}
|
||||
if (!color) {
|
||||
if (typeof _CACHE_COLOR[backgroundColor] === 'undefined') {
|
||||
color = L.DomUtil.TextColorFromBackgroundColor(el);
|
||||
_CACHE_COLOR[backgroundColor] = color;
|
||||
} else {
|
||||
color = _CACHE_COLOR[backgroundColor];
|
||||
}
|
||||
}
|
||||
return color;
|
||||
}
|
||||
|
||||
});
|