c2cgeoportal-geoportal 2.6.0__py2.py3-none-any.whl → 2.7.1.156__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- c2cgeoportal_geoportal/__init__.py +224 -84
- c2cgeoportal_geoportal/lib/__init__.py +67 -43
- c2cgeoportal_geoportal/lib/authentication.py +50 -22
- c2cgeoportal_geoportal/lib/bashcolor.py +17 -13
- c2cgeoportal_geoportal/lib/cacheversion.py +16 -8
- c2cgeoportal_geoportal/lib/caching.py +61 -191
- c2cgeoportal_geoportal/lib/check_collector.py +17 -10
- c2cgeoportal_geoportal/lib/checker.py +61 -63
- c2cgeoportal_geoportal/lib/common_headers.py +170 -0
- c2cgeoportal_geoportal/lib/dbreflection.py +54 -39
- c2cgeoportal_geoportal/lib/filter_capabilities.py +122 -88
- c2cgeoportal_geoportal/lib/fulltextsearch.py +6 -5
- c2cgeoportal_geoportal/lib/functionality.py +20 -17
- c2cgeoportal_geoportal/lib/headers.py +14 -5
- c2cgeoportal_geoportal/lib/i18n.py +4 -4
- c2cgeoportal_geoportal/lib/layers.py +30 -11
- c2cgeoportal_geoportal/lib/lingua_extractor.py +361 -237
- c2cgeoportal_geoportal/lib/loader.py +10 -15
- c2cgeoportal_geoportal/lib/metrics.py +28 -17
- c2cgeoportal_geoportal/lib/oauth2.py +214 -145
- c2cgeoportal_geoportal/lib/wmstparsing.py +115 -90
- c2cgeoportal_geoportal/lib/xsd.py +26 -16
- c2cgeoportal_geoportal/resources.py +15 -9
- c2cgeoportal_geoportal/scaffolds/advance_create/ci/config.yaml +26 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/cookiecutter.json +18 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.dockerignore +6 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.eslintrc.yaml +19 -0
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+dot+prospector.yaml → advance_create/{{cookiecutter.project}}/geoportal/.prospector.yaml} +8 -2
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/Dockerfile_tmpl → advance_create/{{cookiecutter.project}}/geoportal/Dockerfile} +18 -9
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/alembic.yaml_tmpl → advance_create/{{cookiecutter.project}}/geoportal/alembic.yaml} +1 -1
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/development.ini_tmpl → advance_create/{{cookiecutter.project}}/geoportal/development.ini} +34 -15
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/gunicorn.conf.py +102 -0
- c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/lingua-client.cfg +1 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/production.ini +38 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/requirements.txt +2 -0
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/setup.py_tmpl → advance_create/{{cookiecutter.project}}/geoportal/setup.py} +6 -7
- c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/tools/extract-messages.js +8 -6
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/tsconfig.json +8 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.api.js +75 -0
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/webpack.apps.js_tmpl → advance_create/{{cookiecutter.project}}/geoportal/webpack.apps.js} +31 -28
- c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/webpack.commons.js +3 -7
- c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/webpack.config.js +1 -1
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal/__init__.py_tmpl → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/__init__.py} +11 -22
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/authentication.py +10 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/dev.py +14 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/models.py +8 -0
- c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/multi_organization.py +7 -0
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/resources.py +4 -3
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal/static-ngeo/api/index.js_tmpl → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/api/index.js} +1 -2
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal/static-ngeo/js/+package+module.js_tmpl → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/js/{{cookiecutter.package}}module.js} +4 -4
- c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal/subscribers.py_tmpl → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/subscribers.py} +1 -3
- c2cgeoportal_geoportal/scaffolds/advance_update/cookiecutter.json +18 -0
- c2cgeoportal_geoportal/scaffolds/{update/geoportal/CONST_Makefile_tmpl → advance_update/{{cookiecutter.project}}/geoportal/CONST_Makefile} +3 -7
- c2cgeoportal_geoportal/scaffolds/create/cookiecutter.json +18 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.dockerignore +14 -0
- c2cgeoportal_geoportal/scaffolds/create/{+dot+editorconfig → {{cookiecutter.project}}/.editorconfig} +2 -5
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/main.yaml +43 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/rebuild.yaml +46 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/update_l10n.yaml +65 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.gitignore +16 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierignore +1 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierrc.yaml +2 -0
- c2cgeoportal_geoportal/scaffolds/create/{Dockerfile_tmpl → {{cookiecutter.project}}/Dockerfile} +20 -11
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Makefile +14 -0
- c2cgeoportal_geoportal/scaffolds/create/{README.rst_tmpl → {{cookiecutter.project}}/README.rst} +4 -4
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/build +162 -0
- c2cgeoportal_geoportal/scaffolds/create/{ci/config.yaml_tmpl → {{cookiecutter.project}}/ci/config.yaml} +7 -5
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/requirements.txt +1 -0
- c2cgeoportal_geoportal/scaffolds/create/{docker-compose-lib.yaml → {{cookiecutter.project}}/docker-compose-lib.yaml} +133 -17
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.override.sample.yaml +67 -0
- c2cgeoportal_geoportal/scaffolds/create/{docker-compose.yaml → {{cookiecutter.project}}/docker-compose.yaml} +17 -12
- c2cgeoportal_geoportal/scaffolds/create/{env.default_tmpl → {{cookiecutter.project}}/env.default} +29 -14
- c2cgeoportal_geoportal/scaffolds/create/{env.project_tmpl → {{cookiecutter.project}}/env.project} +16 -4
- c2cgeoportal_geoportal/scaffolds/create/{geoportal/vars.yaml_tmpl → {{cookiecutter.project}}/geoportal/vars.yaml} +93 -27
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/mobile.css +0 -0
- c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/data/Readme.txt +1 -1
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/demo.map.tmpl +224 -0
- c2cgeoportal_geoportal/scaffolds/create/{mapserver/mapserver.map.tmpl_tmpl → {{cookiecutter.project}}/mapserver/mapserver.map.tmpl} +7 -15
- c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A3_Landscape.jrxml +8 -8
- c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A3_Portrait.jrxml +8 -8
- c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A4_Landscape.jrxml +8 -8
- c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A4_Portrait.jrxml +8 -8
- c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/config.yaml.tmpl +5 -4
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation.properties +4 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation_fr.properties +4 -0
- c2cgeoportal_geoportal/scaffolds/create/{project.yaml_tmpl → {{cookiecutter.project}}/project.yaml} +6 -6
- c2cgeoportal_geoportal/scaffolds/create/{qgisserver/pg_service.conf.tmpl_tmpl → {{cookiecutter.project}}/qgisserver/pg_service.conf.tmpl} +2 -2
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-backup +110 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-restore +114 -0
- c2cgeoportal_geoportal/scaffolds/create/{setup.cfg_tmpl → {{cookiecutter.project}}/setup.cfg} +1 -1
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/spell-ignore-words.txt +3 -0
- c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/tilegeneration/config.yaml.tmpl +195 -0
- c2cgeoportal_geoportal/scaffolds/update/cookiecutter.json +18 -0
- c2cgeoportal_geoportal/scaffolds/update/{+dot+upgrade.yaml_tmpl → {{cookiecutter.project}}/.upgrade.yaml} +49 -39
- c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/CONST_CHANGELOG.txt +1160 -0
- c2cgeoportal_geoportal/scaffolds/update/{geoportal → {{cookiecutter.project}}/geoportal}/CONST_config-schema.yaml +47 -2
- c2cgeoportal_geoportal/scaffolds/update/{geoportal/CONST_vars.yaml_tmpl → {{cookiecutter.project}}/geoportal/CONST_vars.yaml} +350 -17
- c2cgeoportal_geoportal/scripts/__init__.py +16 -30
- c2cgeoportal_geoportal/scripts/c2cupgrade.py +271 -232
- c2cgeoportal_geoportal/scripts/create_demo_theme.py +3 -6
- c2cgeoportal_geoportal/scripts/manage_users.py +34 -39
- c2cgeoportal_geoportal/scripts/pcreate.py +312 -0
- c2cgeoportal_geoportal/scripts/theme2fts.py +72 -23
- c2cgeoportal_geoportal/scripts/urllogin.py +19 -11
- c2cgeoportal_geoportal/templates/login.html +88 -84
- c2cgeoportal_geoportal/templates/notlogin.html +59 -59
- c2cgeoportal_geoportal/templates/testi18n.html +6 -8
- c2cgeoportal_geoportal/views/__init__.py +23 -4
- c2cgeoportal_geoportal/views/dev.py +9 -7
- c2cgeoportal_geoportal/views/dynamic.py +56 -19
- c2cgeoportal_geoportal/views/entry.py +93 -24
- c2cgeoportal_geoportal/views/fulltextsearch.py +28 -22
- c2cgeoportal_geoportal/views/geometry_processing.py +15 -7
- c2cgeoportal_geoportal/views/i18n.py +91 -9
- c2cgeoportal_geoportal/views/layers.py +160 -126
- c2cgeoportal_geoportal/views/login.py +106 -93
- c2cgeoportal_geoportal/views/mapserverproxy.py +46 -29
- c2cgeoportal_geoportal/views/memory.py +12 -12
- c2cgeoportal_geoportal/views/ogcproxy.py +48 -30
- c2cgeoportal_geoportal/views/pdfreport.py +26 -22
- c2cgeoportal_geoportal/views/printproxy.py +60 -52
- c2cgeoportal_geoportal/views/profile.py +24 -23
- c2cgeoportal_geoportal/views/proxy.py +87 -69
- c2cgeoportal_geoportal/views/raster.py +35 -24
- c2cgeoportal_geoportal/views/resourceproxy.py +13 -11
- c2cgeoportal_geoportal/views/shortener.py +27 -24
- c2cgeoportal_geoportal/views/theme.py +427 -321
- c2cgeoportal_geoportal/views/tinyowsproxy.py +46 -39
- c2cgeoportal_geoportal/views/vector_tiles.py +80 -0
- {c2cgeoportal_geoportal-2.6.0.dist-info → c2cgeoportal_geoportal-2.7.1.156.dist-info}/METADATA +25 -20
- c2cgeoportal_geoportal-2.7.1.156.dist-info/RECORD +185 -0
- {c2cgeoportal_geoportal-2.6.0.dist-info → c2cgeoportal_geoportal-2.7.1.156.dist-info}/WHEEL +1 -1
- {c2cgeoportal_geoportal-2.6.0.dist-info → c2cgeoportal_geoportal-2.7.1.156.dist-info}/entry_points.txt +3 -1
- tests/__init__.py +7 -3
- tests/test_cachebuster.py +0 -2
- tests/test_caching.py +17 -25
- tests/test_checker.py +0 -2
- tests/test_decimaljson.py +4 -4
- tests/test_headerstween.py +0 -2
- tests/test_i18n.py +1 -1
- tests/test_init.py +4 -7
- tests/test_locale_negociator.py +0 -2
- tests/test_mapserverproxy_route_predicate.py +0 -2
- tests/test_raster.py +0 -2
- tests/test_wmstparsing.py +0 -2
- c2cgeoportal_geoportal/scaffolds/__init__.py +0 -227
- c2cgeoportal_geoportal/scaffolds/create/+dot+dockerignore_tmpl +0 -12
- c2cgeoportal_geoportal/scaffolds/create/+dot+github/workflows/main.yaml_tmpl +0 -89
- c2cgeoportal_geoportal/scaffolds/create/+dot+github/workflows/rebuild.yaml_tmpl +0 -78
- c2cgeoportal_geoportal/scaffolds/create/+dot+gitignore_tmpl +0 -16
- c2cgeoportal_geoportal/scaffolds/create/Makefile +0 -3
- c2cgeoportal_geoportal/scaffolds/create/build_tmpl +0 -167
- c2cgeoportal_geoportal/scaffolds/create/ci/requirements.txt +0 -1
- c2cgeoportal_geoportal/scaffolds/create/ci/trigger +0 -68
- c2cgeoportal_geoportal/scaffolds/create/docker-compose.override.sample.yaml +0 -54
- c2cgeoportal_geoportal/scaffolds/create/geoportal/+dot+dockerignore_tmpl +0 -6
- c2cgeoportal_geoportal/scaffolds/create/geoportal/+dot+eslintrc_tmpl +0 -15
- c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/models.py_tmpl +0 -10
- c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/static/robot.txt +0 -3
- c2cgeoportal_geoportal/scaffolds/create/geoportal/production.ini_tmpl +0 -106
- c2cgeoportal_geoportal/scaffolds/create/geoportal/requirements.txt +0 -2
- c2cgeoportal_geoportal/scaffolds/create/geoportal/tsconfig.json_tmpl +0 -9
- c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.api.js_tmpl +0 -72
- c2cgeoportal_geoportal/scaffolds/create/mapserver/demo.map.tmpl_tmpl +0 -262
- c2cgeoportal_geoportal/scaffolds/create/mapserver/tinyows.xml +0 -36
- c2cgeoportal_geoportal/scaffolds/create/print/print-apps/+package+/config.yaml +0 -168
- c2cgeoportal_geoportal/scaffolds/create/qgisserver/geomapfish.yaml.tmpl_tmpl +0 -16
- c2cgeoportal_geoportal/scaffolds/create/spell-ignore-words.txt +0 -1
- c2cgeoportal_geoportal/scaffolds/create/tilegeneration/config.yaml.tmpl_tmpl +0 -185
- c2cgeoportal_geoportal/scaffolds/create/yamllint.yaml +0 -11
- c2cgeoportal_geoportal/scaffolds/update/CONST_CHANGELOG.txt_tmpl +0 -454
- c2cgeoportal_geoportal/templates/dynamic.js +0 -21
- c2cgeoportal_geoportal-2.6.0.dist-info/RECORD +0 -173
- /c2cgeoportal_geoportal/{scaffolds/create/geoportal/+package+_geoportal/static/css/desktop.css → py.typed} +0 -0
- /c2cgeoportal_geoportal/scaffolds/{create/geoportal/Makefile_tmpl → advance_create/{{cookiecutter.project}}/geoportal/Makefile} +0 -0
- /c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/alembic.ini +0 -0
- /c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/language_mapping +0 -0
- /c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/lingua-server.cfg +0 -0
- /c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/views/__init__.py +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal/locale/en/LC_MESSAGES/+package+_geoportal-client.po → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/locale/en/LC_MESSAGES/{{cookiecutter.package}}_geoportal-client.po} +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal/static/css/iframe_api.css → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/desktop.css} +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal/static/css/mobile.css → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/iframe_api.css} +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/banner_left.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/banner_right.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/blank.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/markers/marker-blue.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/markers/marker-gold.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/markers/marker-green.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/markers/marker.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/robot.txt.tmpl +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/data/TM_EUROPE_BORDERS-0.3.sql +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arial.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arialbd.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arialbi.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Ariali.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Bold.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-BoldItalic.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Italic.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Regular.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdana.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanab.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanai.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanaz.ttf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts.conf +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/tinyows.xml.tmpl +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/legend.jrxml +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/logo.png +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/north.svg +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/results.jrxml +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{pyproject.toml → {{cookiecutter.project}}/pyproject.toml} +0 -0
- /c2cgeoportal_geoportal/scaffolds/create/{run_alembic.sh → {{cookiecutter.project}}/run_alembic.sh} +0 -0
- {c2cgeoportal_geoportal-2.6.0.dist-info → c2cgeoportal_geoportal-2.7.1.156.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,3 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
|
3
1
|
# Copyright (c) 2015-2021, Camptocamp SA
|
4
2
|
# All rights reserved.
|
5
3
|
|
@@ -29,14 +27,17 @@
|
|
29
27
|
|
30
28
|
|
31
29
|
import logging
|
30
|
+
from typing import Any, Dict, Optional, Set, Tuple
|
32
31
|
|
32
|
+
import pyramid.request
|
33
33
|
from defusedxml import ElementTree
|
34
|
-
from pyramid.httpexceptions import HTTPBadRequest, HTTPForbidden, HTTPUnauthorized
|
34
|
+
from pyramid.httpexceptions import HTTPBadRequest, HTTPForbidden, HTTPInternalServerError, HTTPUnauthorized
|
35
35
|
from pyramid.view import view_config
|
36
36
|
|
37
37
|
from c2cgeoportal_commons import models
|
38
|
+
from c2cgeoportal_commons.lib.url import Url
|
38
39
|
from c2cgeoportal_commons.models import main
|
39
|
-
from c2cgeoportal_geoportal.lib.
|
40
|
+
from c2cgeoportal_geoportal.lib.common_headers import Cache
|
40
41
|
from c2cgeoportal_geoportal.lib.filter_capabilities import (
|
41
42
|
filter_wfst_capabilities,
|
42
43
|
normalize_tag,
|
@@ -49,7 +50,9 @@ LOG = logging.getLogger(__name__)
|
|
49
50
|
|
50
51
|
|
51
52
|
class TinyOWSProxy(OGCProxy):
|
52
|
-
|
53
|
+
"""Proxy for the tiny OWN server."""
|
54
|
+
|
55
|
+
def __init__(self, request: pyramid.request.Request):
|
53
56
|
OGCProxy.__init__(self, request, has_default_ogc_server=True)
|
54
57
|
self.settings = request.registry.settings.get("tinyowsproxy", {})
|
55
58
|
|
@@ -65,11 +68,11 @@ class TinyOWSProxy(OGCProxy):
|
|
65
68
|
# params hold the parameters we are going to send to TinyOWS
|
66
69
|
self.lower_params = self._get_lower_params(dict(self.request.params))
|
67
70
|
|
68
|
-
def _get_wfs_url(self):
|
69
|
-
return self.settings.get("tinyows_url")
|
71
|
+
def _get_wfs_url(self, errors: Set[str]) -> Optional[Url]:
|
72
|
+
return Url(self.settings.get("tinyows_url"))
|
70
73
|
|
71
|
-
@view_config(route_name="tinyowsproxy")
|
72
|
-
def proxy(self):
|
74
|
+
@view_config(route_name="tinyowsproxy") # type: ignore
|
75
|
+
def proxy(self) -> pyramid.response.Response:
|
73
76
|
if self.user is None:
|
74
77
|
raise HTTPUnauthorized(
|
75
78
|
"Authentication required", headers=[("WWW-Authenticate", 'Basic realm="TinyOWS"')]
|
@@ -77,19 +80,18 @@ class TinyOWSProxy(OGCProxy):
|
|
77
80
|
|
78
81
|
operation = self.lower_params.get("request")
|
79
82
|
typenames = (
|
80
|
-
|
81
|
-
if "typename" in self.lower_params
|
82
|
-
else set()
|
83
|
+
{normalize_typename(self.lower_params["typename"])} if "typename" in self.lower_params else set()
|
83
84
|
)
|
84
85
|
|
85
86
|
method = self.request.method
|
86
87
|
if method == "POST":
|
87
88
|
try:
|
88
89
|
(operation, typenames_post) = self._parse_body(self.request.body)
|
89
|
-
except Exception
|
90
|
-
LOG.
|
91
|
-
|
92
|
-
|
90
|
+
except Exception:
|
91
|
+
LOG.exception("Error while parsing POST request body")
|
92
|
+
raise HTTPBadRequest( # pylint: disable=raise-missing-from
|
93
|
+
"Error parsing the request (see logs for more details)"
|
94
|
+
)
|
93
95
|
|
94
96
|
typenames = typenames.union(typenames_post)
|
95
97
|
|
@@ -109,69 +111,74 @@ class TinyOWSProxy(OGCProxy):
|
|
109
111
|
|
110
112
|
# we want clients to cache GetCapabilities and DescribeFeatureType req.
|
111
113
|
use_cache = method == "GET" and operation in ("getcapabilities", "describefeaturetype")
|
112
|
-
cache_control =
|
114
|
+
cache_control = Cache.PRIVATE if use_cache else Cache.PRIVATE_NO
|
115
|
+
|
116
|
+
errors: Set[str] = set()
|
117
|
+
url = Url(self.settings.get("tinyows_url"))
|
118
|
+
if url is None:
|
119
|
+
LOG.error("Error getting the URL:\n%s", "\n".join(errors))
|
120
|
+
raise HTTPInternalServerError()
|
113
121
|
|
114
122
|
response = self._proxy_callback(
|
115
123
|
operation,
|
116
124
|
cache_control,
|
117
|
-
url=
|
118
|
-
params=
|
125
|
+
url=url,
|
126
|
+
params=dict(self.request.params),
|
119
127
|
cache=use_cache,
|
120
128
|
headers=self._get_headers(),
|
121
129
|
body=self.request.body,
|
122
130
|
)
|
123
131
|
return response
|
124
132
|
|
125
|
-
def _is_allowed(self, typenames):
|
126
|
-
"""
|
127
|
-
Checks if the current user has the rights to access the given
|
128
|
-
type-names.
|
129
|
-
"""
|
130
|
-
|
133
|
+
def _is_allowed(self, typenames: Set[str]) -> bool:
|
134
|
+
"""Check if the current user has the rights to access the given type-names."""
|
131
135
|
writable_layers = set()
|
132
136
|
for gmflayer in list(get_writable_layers(self.request, [self.ogc_server.id]).values()):
|
133
137
|
for ogclayer in gmflayer.layer.split(","):
|
134
138
|
writable_layers.add(ogclayer.lower())
|
135
139
|
return typenames.issubset(writable_layers)
|
136
140
|
|
137
|
-
def _get_headers(self):
|
138
|
-
headers = OGCProxy.
|
141
|
+
def _get_headers(self) -> Dict[str, str]:
|
142
|
+
headers = OGCProxy.get_headers(self)
|
139
143
|
if "tinyows_host" in self.settings:
|
140
144
|
headers["Host"] = self.settings.get("tinyows_host")
|
141
145
|
return headers
|
142
146
|
|
143
|
-
def _proxy_callback(
|
147
|
+
def _proxy_callback(
|
148
|
+
self, operation: str, cache_control: Cache, *args: Any, **kwargs: Any
|
149
|
+
) -> pyramid.response.Response:
|
144
150
|
response = self._proxy(*args, **kwargs)
|
145
151
|
content = response.content.decode()
|
146
152
|
|
153
|
+
errors: Set[str] = set()
|
154
|
+
url = super()._get_wfs_url(errors)
|
155
|
+
if url is None:
|
156
|
+
LOG.error("Error getting the URL:\n%s", "\n".join(errors))
|
157
|
+
raise HTTPInternalServerError()
|
158
|
+
|
147
159
|
if operation == "getcapabilities":
|
148
|
-
content = filter_wfst_capabilities(
|
149
|
-
content, super(TinyOWSProxy, self)._get_wfs_url(), self.request
|
150
|
-
)
|
160
|
+
content = filter_wfst_capabilities(content, url, self.request)
|
151
161
|
|
152
162
|
content = self._filter_urls(
|
153
163
|
content, self.settings.get("online_resource"), self.settings.get("proxy_online_resource")
|
154
164
|
)
|
155
165
|
|
156
|
-
return self._build_response(response, content, cache_control, "tinyows")
|
166
|
+
return self._build_response(response, content.encode(), cache_control, "tinyows")
|
157
167
|
|
158
168
|
@staticmethod
|
159
|
-
def _filter_urls(content, online_resource, proxy_online_resource):
|
169
|
+
def _filter_urls(content: str, online_resource: str, proxy_online_resource: str) -> str:
|
160
170
|
if online_resource is not None and proxy_online_resource is not None:
|
161
171
|
return content.replace(online_resource, proxy_online_resource)
|
162
172
|
return content
|
163
173
|
|
164
174
|
@staticmethod
|
165
|
-
def _parse_body(body):
|
166
|
-
"""
|
167
|
-
Read the WFS-T request body and extract the referenced type-names
|
168
|
-
and request method.
|
169
|
-
"""
|
175
|
+
def _parse_body(body: str) -> Tuple[str, Set[str]]:
|
176
|
+
"""Read the WFS-T request body and extract the referenced type-names and request method."""
|
170
177
|
xml = ElementTree.fromstring(body)
|
171
178
|
wfs_request = normalize_tag(xml.tag)
|
172
179
|
|
173
180
|
# get the type names
|
174
|
-
typenames = set()
|
181
|
+
typenames: Set[str] = set()
|
175
182
|
for child in xml:
|
176
183
|
tag = normalize_tag(child.tag)
|
177
184
|
if tag == "typename":
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# Copyright (c) 2021, Camptocamp SA
|
2
|
+
# All rights reserved.
|
3
|
+
|
4
|
+
# Redistribution and use in source and binary forms, with or without
|
5
|
+
# modification, are permitted provided that the following conditions are met:
|
6
|
+
|
7
|
+
# 1. Redistributions of source code must retain the above copyright notice, this
|
8
|
+
# list of conditions and the following disclaimer.
|
9
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
10
|
+
# this list of conditions and the following disclaimer in the documentation
|
11
|
+
# and/or other materials provided with the distribution.
|
12
|
+
|
13
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
14
|
+
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
15
|
+
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
16
|
+
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
17
|
+
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
18
|
+
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
19
|
+
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
20
|
+
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
21
|
+
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
22
|
+
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
23
|
+
|
24
|
+
# The views and conclusions contained in the software and documentation are those
|
25
|
+
# of the authors and should not be interpreted as representing official policies,
|
26
|
+
# either expressed or implied, of the FreeBSD Project.
|
27
|
+
|
28
|
+
import logging
|
29
|
+
|
30
|
+
from pyramid.httpexceptions import HTTPNotFound
|
31
|
+
from pyramid.request import Request
|
32
|
+
from pyramid.response import Response
|
33
|
+
from pyramid.view import view_config
|
34
|
+
from tilecloud import TileCoord
|
35
|
+
from tilecloud.grid.free import FreeTileGrid
|
36
|
+
|
37
|
+
from c2cgeoportal_commons.models import DBSession, main
|
38
|
+
from c2cgeoportal_geoportal.lib.common_headers import Cache, set_common_headers
|
39
|
+
|
40
|
+
LOG = logging.getLogger(__name__)
|
41
|
+
|
42
|
+
|
43
|
+
class VectorTilesViews:
|
44
|
+
"""All the views concerning the vector tiles."""
|
45
|
+
|
46
|
+
def __init__(self, request: Request) -> None:
|
47
|
+
self.request = request
|
48
|
+
|
49
|
+
@view_config(route_name="vector_tiles") # type: ignore
|
50
|
+
def vector_tiles(self) -> Response:
|
51
|
+
settings = self.request.registry.settings["vector_tiles"]
|
52
|
+
grid = FreeTileGrid(settings["resolutions"], max_extent=settings["extent"], tile_size=256)
|
53
|
+
|
54
|
+
layer_name = self.request.matchdict["layer_name"]
|
55
|
+
|
56
|
+
z = int(self.request.matchdict["z"])
|
57
|
+
x = int(self.request.matchdict["x"])
|
58
|
+
y = int(self.request.matchdict["y"])
|
59
|
+
coord = TileCoord(z, x, y)
|
60
|
+
minx, miny, maxx, maxy = grid.extent(coord, 0)
|
61
|
+
|
62
|
+
layer = (
|
63
|
+
DBSession.query(main.LayerVectorTiles.sql)
|
64
|
+
.filter(main.LayerVectorTiles.name == layer_name)
|
65
|
+
.one_or_none()
|
66
|
+
)
|
67
|
+
if layer is None:
|
68
|
+
raise HTTPNotFound(f"Not found any vector tile layer named {layer_name}")
|
69
|
+
|
70
|
+
raw_sql = layer[0].format(
|
71
|
+
envelope=f"ST_MakeEnvelope({minx}, {miny}, {maxx}, {maxy}, {settings['srid']})"
|
72
|
+
)
|
73
|
+
|
74
|
+
result = DBSession.execute(raw_sql)
|
75
|
+
for row in result:
|
76
|
+
set_common_headers(self.request, "vector_tiles", Cache.PUBLIC)
|
77
|
+
response = self.request.response
|
78
|
+
response.content_type = "application/vnd.mapbox-vector-tile"
|
79
|
+
response.body = row[0].tobytes()
|
80
|
+
return response
|
{c2cgeoportal_geoportal-2.6.0.dist-info → c2cgeoportal_geoportal-2.7.1.156.dist-info}/METADATA
RENAMED
@@ -1,40 +1,38 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: c2cgeoportal-geoportal
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.7.1.156
|
4
4
|
Summary: c2cgeoportal geoportal
|
5
5
|
Home-page: https://github.com/camptocamp/c2cgeoportal/
|
6
6
|
Author: Camptocamp
|
7
7
|
Author-email: info@camptocamp.com
|
8
|
-
License: UNKNOWN
|
9
8
|
Keywords: web gis geoportail c2cgeoportal geocommune pyramid
|
10
|
-
|
11
|
-
Classifier:
|
12
|
-
Classifier: Programming Language :: Python :: 3
|
13
|
-
Classifier: Programming Language :: Python :: 3.7
|
9
|
+
Classifier: Development Status :: 6 - Mature
|
10
|
+
Classifier: Environment :: Web Environment
|
14
11
|
Classifier: Framework :: Pyramid
|
15
|
-
Classifier:
|
16
|
-
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
|
12
|
+
Classifier: Intended Audience :: Other Audience
|
17
13
|
Classifier: License :: OSI Approved :: BSD License
|
18
|
-
Classifier:
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
Requires-Dist: SQLAlchemy
|
25
|
-
Requires-Dist: Shapely
|
14
|
+
Classifier: Operating System :: OS Independent
|
15
|
+
Classifier: Programming Language :: Python
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
17
|
+
Classifier: Programming Language :: Python :: 3.8
|
18
|
+
Classifier: Topic :: Scientific/Engineering :: GIS
|
19
|
+
Classifier: Typing :: Typed
|
26
20
|
Requires-Dist: alembic
|
27
21
|
Requires-Dist: bottle
|
28
|
-
Requires-Dist: c2c.template (>=2.0.7)
|
29
22
|
Requires-Dist: c2cgeoportal-commons[upgrade]
|
30
23
|
Requires-Dist: c2cwsgiutils
|
24
|
+
Requires-Dist: c2c.template (>=2.0.7)
|
31
25
|
Requires-Dist: defusedxml
|
32
26
|
Requires-Dist: dogpile.cache (>=0.6)
|
27
|
+
Requires-Dist: Fiona
|
28
|
+
Requires-Dist: GeoAlchemy2
|
33
29
|
Requires-Dist: geojson
|
34
30
|
Requires-Dist: isodate
|
35
31
|
Requires-Dist: lingua
|
32
|
+
Requires-Dist: Mako
|
33
|
+
Requires-Dist: OWSLib (>=0.6.0)
|
36
34
|
Requires-Dist: papyrus
|
37
|
-
Requires-Dist: psycopg2
|
35
|
+
Requires-Dist: psycopg2
|
38
36
|
Requires-Dist: pycryptodome
|
39
37
|
Requires-Dist: pyotp
|
40
38
|
Requires-Dist: pyramid
|
@@ -43,10 +41,18 @@ Requires-Dist: pyramid-mako
|
|
43
41
|
Requires-Dist: pyramid-multiauth
|
44
42
|
Requires-Dist: pyramid-tm
|
45
43
|
Requires-Dist: python-dateutil
|
44
|
+
Requires-Dist: PyYAML
|
46
45
|
Requires-Dist: rasterio
|
47
|
-
Requires-Dist: redis
|
48
46
|
Requires-Dist: requests
|
47
|
+
Requires-Dist: redis
|
48
|
+
Requires-Dist: Shapely
|
49
|
+
Requires-Dist: SQLAlchemy
|
49
50
|
Requires-Dist: transaction
|
51
|
+
Requires-Dist: jinja2 (>=2.11.3)
|
52
|
+
Requires-Dist: pygments (>=2.7.4)
|
53
|
+
Requires-Dist: setuptools (>=65.5.1)
|
54
|
+
Requires-Dist: requests (>=2.31.0)
|
55
|
+
Requires-Dist: fiona (>=1.10b2)
|
50
56
|
|
51
57
|
c2cgeoportal is the server part of `GeoMapFish <http://geomapfish.org/>`_,
|
52
58
|
the client part is `ngeo <https://github.com/camptocamp/ngeo/>`_.
|
@@ -54,4 +60,3 @@ the client part is `ngeo <https://github.com/camptocamp/ngeo/>`_.
|
|
54
60
|
Read the `Documentation <https://camptocamp.github.io/c2cgeoportal/master/>`_.
|
55
61
|
|
56
62
|
`Sources <https://github.com/camptocamp/c2cgeoportal/>`_
|
57
|
-
|
@@ -0,0 +1,185 @@
|
|
1
|
+
c2cgeoportal_geoportal/__init__.py,sha256=9s5YOvb5qlaQf_TmonFKXMwx6a-pLAG2brbRrb4Kbuc,32401
|
2
|
+
c2cgeoportal_geoportal/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
+
c2cgeoportal_geoportal/resources.py,sha256=6CMHJveA-nDBNHBO0MudHCu2tn0AdKXmLKrTv8Ulz08,2182
|
4
|
+
c2cgeoportal_geoportal/lib/__init__.py,sha256=d0Z_99AxtbdZAtSUT8iOpRg5_ZV0lnERmkamri5x6TM,10374
|
5
|
+
c2cgeoportal_geoportal/lib/authentication.py,sha256=OlqVnfzNeSrA7cnCTk3hPkSNEWBBrTtwb2KifcsLSU4,8997
|
6
|
+
c2cgeoportal_geoportal/lib/bashcolor.py,sha256=LQgOgtFUvgJ4Ed3-YW3RPjvhBMZBbXBBkUZKE4unRCI,1889
|
7
|
+
c2cgeoportal_geoportal/lib/cacheversion.py,sha256=M_0Ci0HPQASkcHbnvG33G9SOsFdRMKSHUP5G5Yt1yvI,2948
|
8
|
+
c2cgeoportal_geoportal/lib/caching.py,sha256=rA-WnWgkX_iBmxhoz_WdDL37VSjjSXsLnRqdgKx1QFU,6688
|
9
|
+
c2cgeoportal_geoportal/lib/check_collector.py,sha256=-x5iFUMw0NfPalG1RI6WoKTiW1BlUvHTiAJy_2mMu2s,3414
|
10
|
+
c2cgeoportal_geoportal/lib/checker.py,sha256=ZdpACmoeeiNO16wM0oZc3bHkXgH8-0lYpWa7b_-937E,12323
|
11
|
+
c2cgeoportal_geoportal/lib/common_headers.py,sha256=qwIWaNA_wMeJ2UrbtBFG0v3R26HgEn8npBRtSbjeyTE,6458
|
12
|
+
c2cgeoportal_geoportal/lib/dbreflection.py,sha256=XWShaJrAE2vDAzAh-z2YfIVBrGiIzJ_WZEzd2Thne5I,9629
|
13
|
+
c2cgeoportal_geoportal/lib/filter_capabilities.py,sha256=vEvQ2SyITKI_A7XshhHODy_N31URliwEWKoJkwOKnHA,14230
|
14
|
+
c2cgeoportal_geoportal/lib/fulltextsearch.py,sha256=6mUdf4EydFiI7gjx2vmcc4yyRRFs4cH3gg_XdBePAww,2271
|
15
|
+
c2cgeoportal_geoportal/lib/functionality.py,sha256=DqqLx3dwBY7QxpQgcDGh8NuxE1-sWVuSPk5k3bNE2bM,6293
|
16
|
+
c2cgeoportal_geoportal/lib/headers.py,sha256=d6lelDs1fDh5xO8Dz34r-TRgSETY2bb1eEIDuk6FJHM,2622
|
17
|
+
c2cgeoportal_geoportal/lib/i18n.py,sha256=VB1xn7c_jV-E10vvphM_h14gzSk1q5_G26BcJDSOtfE,1876
|
18
|
+
c2cgeoportal_geoportal/lib/layers.py,sha256=P-ZMC63gKdGmiTDn0WP2ZB3AJGGL05YhuckVzaayXTY,4655
|
19
|
+
c2cgeoportal_geoportal/lib/lingua_extractor.py,sha256=VBW05twqBlMFtVUzoPKKYkkYBOKqxET27UOt7_SlSBY,36888
|
20
|
+
c2cgeoportal_geoportal/lib/loader.py,sha256=VXT8N0Upzwydi_TZkBLj9j75V7BTfR1GxzXEABXsTQ8,2546
|
21
|
+
c2cgeoportal_geoportal/lib/metrics.py,sha256=j1vmGEqV7RtIwk2w83bUHvAnkk_nSPDsoFHjqDsLiSU,4524
|
22
|
+
c2cgeoportal_geoportal/lib/oauth2.py,sha256=8IJ4tKIzxbX9wfHBMMajyQt_SQrGgj64ZHqIirDbJSY,37216
|
23
|
+
c2cgeoportal_geoportal/lib/wmstparsing.py,sha256=YTfXRUxbRHys6jhmIhtpBJq-xrSYLqkLBfi33kAiXbY,12423
|
24
|
+
c2cgeoportal_geoportal/lib/xsd.py,sha256=vInVayMaucYZx9Hz4TBSN1jlSNza4H6hpPI0_W6-k0o,6043
|
25
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/cookiecutter.json,sha256=1LVOM-j_nd00J89q0EI3bQUvIysbidApaVHDibA2ydk,524
|
26
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/ci/config.yaml,sha256=LiDYqdnRyOXmGoSuvjMBxwfL7tYd1i1PXx5u8TU-Hs8,592
|
27
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.dockerignore,sha256=rPtGQNYXYoj-D94VwnVT_x-HvqldTNoz2oT7DjGpyqk,147
|
28
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.eslintrc.yaml,sha256=txdVU8ikuADtWxCHWjyOBtT8wiXzf-LhT9ZMVtBiwhY,241
|
29
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.prospector.yaml,sha256=OI6NLGh_3tp2-GOvcX2mzVKGwnHU-KG8S8p-BGt_zmY,325
|
30
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/Dockerfile,sha256=DAXA2MYs6ammgocOMOsxPNLShaa9pPaH3XzNkWvIzSU,2567
|
31
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/Makefile,sha256=ctHZV0-kh9voLpmgVK_ya68GI5VAKmxN9UiZVZKPyBo,147
|
32
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/alembic.ini,sha256=KpgEj3uVRBdgiTjaQDqUjy_C0z5s8t2DUPFPTUSm7_w,985
|
33
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/alembic.yaml,sha256=9HMFJ_UekLUzXM5bPtixNNkeHMalo50hKjkxM_2tG2E,458
|
34
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/development.ini,sha256=62pVRUxGPkxDZJktkureizEjyP3K4McQB4X7noDVzA8,3068
|
35
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/gunicorn.conf.py,sha256=cem8hDQaorHkXHXNoIKOKZ08ZSl3RVyEylhUFzp4Zb8,4111
|
36
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/language_mapping,sha256=jZNiCuWh5-LsU0oDmNviVfNyNqZibBXNc_rsv_OpUuE,27
|
37
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/lingua-client.cfg,sha256=Q5OugT3Ns7HEFxcBCejDHEkMtEUGhk__6-yONGg2ImM,117
|
38
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/lingua-server.cfg,sha256=1mRNwhmqmxlJwKucLauitmY9MHgWAyCr4N6TaqHkKsU,107
|
39
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/production.ini,sha256=ptWxF3jAE1A3IAQ7KdYSpGbPdAm3g-S-SIFXdZuFk3o,1137
|
40
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/requirements.txt,sha256=UBEL-rSwDi2z7Q7RMYTqLKNgHxrgohoBmoTlKRMTCUU,57
|
41
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/setup.py,sha256=dZ-f23wZNh4TuHXCmyHRrlWR0kTVN3PKTT1FQilDeDk,694
|
42
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/tsconfig.json,sha256=NBfOaqGnwNeVW7Z9Yk3eHeX9NhqA7MteCb3oS3DKJXk,186
|
43
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.api.js,sha256=NvT4Zf2OJ9pFrbPq1s1peTbHv1HaZZhC6gCj5aTgGCA,1769
|
44
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.apps.js,sha256=kC_M97UW0nzSDL3c3gMO0rFm1qzDuOK0GgVK73wq2i0,2438
|
45
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.commons.js,sha256=-sHSSMcvPSbZAwmBYAp6RK-iQgwn0vrySTkFe3Pvero,553
|
46
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.config.js,sha256=IFHj1YVu2aitTtQWVV6E5BaU0YDHz1qeoixaLbtRXPA,643
|
47
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/tools/extract-messages.js,sha256=FWT7FwFg5HOmtgO5H9W5MTeWI30TfcBeeSnyiMvP2oo,1201
|
48
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/__init__.py,sha256=aoVN3PZLKHHzHBzgNKzW-DhSZoJPwzC0nHKpc3NEQl8,1587
|
49
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/authentication.py,sha256=mjPjpZfgPPeMneKe4u95aPYIJlWcUpbSsR5-3ObWirA,426
|
50
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/dev.py,sha256=2Et_4LUWO_82DAYsPxEnH5yCX0YVY2XPhv9pzOTl8Zs,387
|
51
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/models.py,sha256=_IYgNpp7ZRKcH30eo-d--qbb11ojx7Tv2qJdVGIlsjQ,284
|
52
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/multi_organization.py,sha256=qNxledzv8JeIWTFFF8-XO163qmxztiBY_NhxLvEOCAM,158
|
53
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/resources.py,sha256=8Ey8_zvzge1A9yid7LDggHZlulbWsm21gM6Mf9LgzlI,270
|
54
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/subscribers.py,sha256=8ChZ7xVzcaOqRXIErrO4JtJqEnGWJ3y1C6Tu0ExjwGs,1352
|
55
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/api/index.js,sha256=rxXFRQeGxBTLmhOUmFpIaGZda1Gk5Qi_VsXdbaOfwXo,260
|
56
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/js/{{cookiecutter.package}}module.js,sha256=TYZUcLOinHKhzn-l35pwqe0kNOhX90TzFOVj1KyaVaI,614
|
57
|
+
c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/views/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
58
|
+
c2cgeoportal_geoportal/scaffolds/advance_update/cookiecutter.json,sha256=1LVOM-j_nd00J89q0EI3bQUvIysbidApaVHDibA2ydk,524
|
59
|
+
c2cgeoportal_geoportal/scaffolds/advance_update/{{cookiecutter.project}}/geoportal/CONST_Makefile,sha256=7TcsromZPyreV_kQFVqt4r7rFHiiF09M-3JPm7iOKkA,4287
|
60
|
+
c2cgeoportal_geoportal/scaffolds/create/cookiecutter.json,sha256=1LVOM-j_nd00J89q0EI3bQUvIysbidApaVHDibA2ydk,524
|
61
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.dockerignore,sha256=aU-IzKK1qmFAJNiCLYT6yB6LVTEsDBcO5nBW3q8M-MQ,351
|
62
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.editorconfig,sha256=cpHwgH23FLEQ6gV2O0Xa-iKxCaaVHhTKiFA91moh1sQ,297
|
63
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.gitignore,sha256=NNaSfLn7_4sIXta39BzRfGQJfUqBq-U4lbgtkXStgkY,449
|
64
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierignore,sha256=PcDfauWwzv1pnJgC9HR1zvv06Q01CwzGzzc0iLSNcZk,9
|
65
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierrc.yaml,sha256=WbjZCtw0hBlDB2FYJanFJzAvUsNTxgwn62YBZ-Xbwkw,43
|
66
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Dockerfile,sha256=I7zAT84Zl0wnySi-tNtdcmEAKwdJE_EssMRh0cYpygU,3360
|
67
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Makefile,sha256=XIQPnoU13Rbs2aW4o_J-XCS1VJb_AaEw4RB6X7FYgCI,715
|
68
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/README.rst,sha256=PvydIFv4NS8CMqmLrCTm2TvIS0GNkWgiI-VwQvWBF5o,423
|
69
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/build,sha256=BX9vJe_BZbCOaGZFgG-PDL6QGLa2dzWnBI2TB2I1NAU,6388
|
70
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose-lib.yaml,sha256=5RIgWl2euVaLISVCrNQaFZlVlslLPcDVK8YEZCYzHE4,12310
|
71
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.override.sample.yaml,sha256=hagK-GEc6j3tNujHltyXUkDUt6SnZgZsp1vpxcfzUJ8,2565
|
72
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.yaml,sha256=BHj_UT6RpGEz-sue2MrTVOCENtKYSWZ_YTSbp5ud28E,2429
|
73
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.default,sha256=yQZ3xFUFnn6gDXNkRyCRrduKtZqSM5VvcZAalk9oC74,2573
|
74
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.project,sha256=ka5r1Lv081fSIjGzGxQS9Jeck1CvK9bjYl-qEzCSapQ,1537
|
75
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/project.yaml,sha256=3tNtVcoIug5LNZoZsUpjm_YRCZQMAKzYWNL9ZdjkPC8,495
|
76
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/pyproject.toml,sha256=SLg_mHQE8AqfBREmQ7bdGI9PrWALqfgeHazoqOt4Ma0,57
|
77
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/run_alembic.sh,sha256=NuOhKZtrcv-UWVDkmTiNaT6Wcls9fXoHcO0oQjAdI6o,233
|
78
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/setup.cfg,sha256=_Oj7PwahkYUSneIrjn2mXwo0m6b27dTCZhAwWXFWqUA,221
|
79
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/spell-ignore-words.txt,sha256=KTgED03w1otAkv8iINTId8NbctCOmms6-AE99xnv4uE,13
|
80
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/main.yaml,sha256=2b2gSzQ9qPmbw5MqDMPYQjoehZf60BDD-sh4fE3Ejc8,1284
|
81
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/rebuild.yaml,sha256=mPS3D0gwSPasPwEARAbHhUwDYJHND7D3fewoiBtvU-8,1314
|
82
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/update_l10n.yaml,sha256=zOrcFS_Fhf3jUB5qxeq3Kgqg7aSa2PqalhJe69sHZuo,2216
|
83
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/config.yaml,sha256=V8VoRZraesWsS3MwXyEVsJ0VmzvZ_EQepwVtvgag2_0,532
|
84
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/requirements.txt,sha256=ae22jZH3ftR2mGsZJg7B0yRJrvfSfpZJlG3x_qxmQ8g,18
|
85
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/vars.yaml,sha256=PMI4CgXk1m_DNCAZViRC-QLcLo8ANL5uacBt8Ahp29w,10666
|
86
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/locale/en/LC_MESSAGES/{{cookiecutter.package}}_geoportal-client.po,sha256=hKLs5f7EJz05ACRtyTlCtssCo99PMuj-FfOJXchMZFk,162
|
87
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/robot.txt.tmpl,sha256=JR_vIqMlHq1oSgyWPN2mtZyEpsqhjKQQecaW2pxvK54,88
|
88
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/desktop.css,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
89
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/iframe_api.css,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
90
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/mobile.css,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
91
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/banner_left.png,sha256=ExK_hOKzWaD4rgrSFy3xw88JrJai5n8JEXy-dEmvSLo,13799
|
92
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/banner_right.png,sha256=t65I5iM-wl_7a6k3NLbVT5d725siXigH2dsOhtmC3PU,6018
|
93
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/blank.png,sha256=zp8uuLPeZ13bYveFL5dI20zQMqzo_0SSMZGNV49JZfI,259
|
94
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-blue.png,sha256=aALxnIGsafvssGB3fEmLWUNb7X3xz7JQlnoxUJhkNgg,758
|
95
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-gold.png,sha256=O5qV6Vb1Y9QMiszH34x5PA1wX_SnVZ6Qhv7vsy8zr-g,703
|
96
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-green.png,sha256=ucJpwxgJnaA4dUnDk779X1ZLxnYowMOTAq_CMeGw8PQ,753
|
97
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker.png,sha256=wj0-D2abaL-A-OIoUbEeuSwMc_e1zf8zE4lVpra9xYY,601
|
98
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/demo.map.tmpl,sha256=mFtC2pzbN3-KQpZxQbhV8fMeQaZikMyZ5N-A9RXaxYE,7269
|
99
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts.conf,sha256=uG3B6GUKIvTRVLO025Ecm5lh27sEMpmmzWUzFjNh8Qg,351
|
100
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/mapserver.map.tmpl,sha256=mza6KiSJG7fgaG4G-USDTg47Jo65bnXNcXdXNxfclJ4,2716
|
101
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/tinyows.xml.tmpl,sha256=hI6mHamiwQW40t2Rf-NRHwOtkPdxL4YrkVS7MlUYPb8,816
|
102
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/data/Readme.txt,sha256=q_uKVshkZPX6J376w3UhJ30Ij4hJtYF2jNwfRZJRuE4,2892
|
103
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/data/TM_EUROPE_BORDERS-0.3.sql,sha256=pYpbBi2P61thQtpochj_-tl_kQIIVAJgZsemTYdRUBo,1588593
|
104
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Arial.ttf,sha256=NcDzVZ2NtWnjbDEJW4pg1EFkPZX1kTneQOI_ragZuDM,275572
|
105
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Arialbd.ttf,sha256=QESqa1vrvDaYAga0WwqqqlaBVSpIvK20F0bV0dcf17Q,286620
|
106
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Arialbi.ttf,sha256=Lzcc2dlrOsVEUZ2FwW3EPOrN_Oo1CQ7o3fPsWFfFAyg,224692
|
107
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Ariali.ttf,sha256=cK3iMxdaamZ15FAUYa-TJub3ix_994fKDaWrD8jJz9Y,206132
|
108
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/NotoSans-Bold.ttf,sha256=aL3Veh4eYmY6CzcsciQgS4KomCC5zzA5Ezf2HwxecSM,415132
|
109
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/NotoSans-BoldItalic.ttf,sha256=i-2wEn6RSsOt4je0AtM-VzrMS9ugueOYEnLK40_5hXo,290436
|
110
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/NotoSans-Italic.ttf,sha256=fWFOfubTLPuiYxv5hrx-xlodmXO7QUy55a632thch4c,279268
|
111
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/NotoSans-Regular.ttf,sha256=nptMU70lytnATTcPEzpeMtFm0NVOKprWy6SjH804LVs,414820
|
112
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Verdana.ttf,sha256=lu0UlJyktzks_yNbnEHVXBJTgqu-DA08K53WaJfK4Ms,139640
|
113
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Verdanab.ttf,sha256=yPUGW6kWgPWWrzsDeOLD5xO5WlI749Vq4YXKK49fCyM,136032
|
114
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Verdanai.ttf,sha256=kbWRhmVvUpclMaEUM8hm_VbmLsTmHiYhotunDI8ZqCg,154264
|
115
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/fonts/Verdanaz.ttf,sha256=aY4iD0j0pA53r36zSVjI_QLx4Yw7o_Nl2Tv6LtRHTIA,153324
|
116
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A3_Landscape.jrxml,sha256=t2rHGwJEUNrK6Vjm6xisDFtss9WX4nhs3AxSaa5ToBo,10002
|
117
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A3_Portrait.jrxml,sha256=OnuzNqaike4mxa7IH_fqIsE2RtAUSAfViwALvk-IKZM,8707
|
118
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A4_Landscape.jrxml,sha256=3yKujKVwi0u-sASgEIC8DuyOdH2r6ZdByU1Nb-JBbP0,9562
|
119
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A4_Portrait.jrxml,sha256=wR4Ow4DpzESUa8d620nRGXFhIa9Qf7JZ6MVN3WDyEkI,6880
|
120
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/config.yaml.tmpl,sha256=M_NRPwa8Cu9C-023JUvcMA7WKMpFJjQVd7hzf3svR9o,4774
|
121
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/legend.jrxml,sha256=qRxN0MC4KIyxxLNiCdriO0FEUZerzrkTu-cSjexx7dE,5310
|
122
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation.properties,sha256=n7F7W9ELl53JsNCDMwoFIlWravXB-K4VCQdo_Yjanx8,98
|
123
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation_fr.properties,sha256=OBh4sWxMNW8dNgcXr7VpTW8HemJIQoxRmPBLZ9MDVmI,102
|
124
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/logo.png,sha256=ExK_hOKzWaD4rgrSFy3xw88JrJai5n8JEXy-dEmvSLo,13799
|
125
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/north.svg,sha256=rnHO-cNiy9ZyfwvI-o2dYipzuu-vh9rn0nE45FjfOPo,2925
|
126
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/results.jrxml,sha256=gf5grUvt-oG_H0LnsNvBWMDGqvH3uuW_wfy0O-n5ui4,1309
|
127
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/qgisserver/pg_service.conf.tmpl,sha256=WcjfsfsfNLHAfbg84HgEIb64EDnnJJWGnyAdPTXD0PI,296
|
128
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-backup,sha256=g-lfrOCos04wc6c9Y_jYgqPU0YiGavgblH54U03LNM0,4443
|
129
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-restore,sha256=C4SEV-V7GQ0BJPRpVC2kcQuNUENkbWxHryxrbGejI1k,4634
|
130
|
+
c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/tilegeneration/config.yaml.tmpl,sha256=y-X8uAZP9mEq3k6NygBI_FynZeEQ_IatFPXkzWs5UAQ,6181
|
131
|
+
c2cgeoportal_geoportal/scaffolds/update/cookiecutter.json,sha256=x3FFn3b67GPGCsjg36iGXCudjaTSfwGHcwHS6HHVpPQ,539
|
132
|
+
c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/.upgrade.yaml,sha256=GUyQ0qiRKH58NwOGTwSQPSTZYL345FmOEDUZa0cReaM,6781
|
133
|
+
c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/CONST_CHANGELOG.txt,sha256=qsrtO8gYYmHPsZBYWbTrlqE2kJTmO8BQHTaB6x9lzDg,37291
|
134
|
+
c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/geoportal/CONST_config-schema.yaml,sha256=kEV-oJhGdH4hkgfHb9MO5cyeEDtn9T8idujBh8E2MW4,21112
|
135
|
+
c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/geoportal/CONST_vars.yaml,sha256=ShwvIOdHUgczxZzf8i_SsfrJWsJCUYC2rtQ012DKZaI,45629
|
136
|
+
c2cgeoportal_geoportal/scripts/__init__.py,sha256=elsD0ciAiyAmJKSfNzx67ZhA74QQIJ6R34zgp3Ac7Yw,2935
|
137
|
+
c2cgeoportal_geoportal/scripts/c2cupgrade.py,sha256=MLgayT8FBS2EyuPAYEGayRm_mkwXwMv6LO4EXo7GABk,36312
|
138
|
+
c2cgeoportal_geoportal/scripts/create_demo_theme.py,sha256=3RmUnFj1V9A3KMCCSYplhemN4faNQbnJgDmeunQ_VSo,3081
|
139
|
+
c2cgeoportal_geoportal/scripts/manage_users.py,sha256=-9ExER-kYHh6OMsoOAuLhnjEOLoAjzzbGEcVZoZwnSg,5468
|
140
|
+
c2cgeoportal_geoportal/scripts/pcreate.py,sha256=ovvVvbT-Kvb3gUj7eAjyvIV3UGFWR_QpVBOh7BGIiuU,11528
|
141
|
+
c2cgeoportal_geoportal/scripts/theme2fts.py,sha256=_qEYDiu-cvet7A-2Hk-93FPzAnZH7LYZTWQXt1OCph0,11450
|
142
|
+
c2cgeoportal_geoportal/scripts/urllogin.py,sha256=qGOOvx2ZN3qnENGzo8NScRqfFC06l1yc48vU6Qx3MBo,3319
|
143
|
+
c2cgeoportal_geoportal/templates/login.html,sha256=0xcwQQDM2uv3Li0qnS91eyjsVtK0ZGiPNld7DXKadco,2475
|
144
|
+
c2cgeoportal_geoportal/templates/notlogin.html,sha256=cJx7z50IKQl7Fb9KXv03iSxh6pgff0dbnxa9FIHNkxM,1528
|
145
|
+
c2cgeoportal_geoportal/templates/testi18n.html,sha256=Br6Vf5zTDdaH0L07saV_8dIIT3C9xnSqh4quzTELo2s,369
|
146
|
+
c2cgeoportal_geoportal/views/__init__.py,sha256=S74TlEcDZPp_eK-u5NsMcBIkj-LSOPskf8HVjVnGWYc,2694
|
147
|
+
c2cgeoportal_geoportal/views/dev.py,sha256=e1oZkKwwQvssMOzg3Zao3Jm4WNIFVwEI3EOR1Xj3-_Y,2533
|
148
|
+
c2cgeoportal_geoportal/views/dynamic.py,sha256=aeCJTafIG5Go_OovlKFCbwazj7vKIM4DUhR4bH0Zcpg,8644
|
149
|
+
c2cgeoportal_geoportal/views/entry.py,sha256=PW3g4DiwWHhQWdl22egCOcgC2A5aXblNnc67_e50oHI,5995
|
150
|
+
c2cgeoportal_geoportal/views/fulltextsearch.py,sha256=Yo3GW-O-Vk6o90tGQek99Gqd5lEtwscnBKw1ylhKNF0,8330
|
151
|
+
c2cgeoportal_geoportal/views/geometry_processing.py,sha256=OlvpcDSrvqy-xykmycWh5X-MMVJsiuWew4Sfdy4ykA8,2952
|
152
|
+
c2cgeoportal_geoportal/views/i18n.py,sha256=7Avpt-aVEVlS3SrwtZkvuJ8_0gBZvVrCviyaIZBx7jY,5292
|
153
|
+
c2cgeoportal_geoportal/views/layers.py,sha256=EqaICEToh5MOdp9h7gG60peuV6PBAyw6euqliA174LU,28850
|
154
|
+
c2cgeoportal_geoportal/views/login.py,sha256=BugfdgTg4f73yo6e1uSshEYu0MZhwS9YaLo0c9JYPrM,19104
|
155
|
+
c2cgeoportal_geoportal/views/mapserverproxy.py,sha256=yl2O6FJZxJ1TVU7DvQpaTLT1JsNlqId9Sgiv44Umd4A,8203
|
156
|
+
c2cgeoportal_geoportal/views/memory.py,sha256=nb2repOnil0PdziEjCLOZ-84LFKLkdAlKTnnMQoXDdA,3627
|
157
|
+
c2cgeoportal_geoportal/views/ogcproxy.py,sha256=M9hkxgIga29SoJ4VNwkzkiOkQiOsyyXMrMUwSN0W73U,5065
|
158
|
+
c2cgeoportal_geoportal/views/pdfreport.py,sha256=0cNXsfUmIlbvsgjVyg7031cY6OBwA6c6bAfYvSDMeRE,9576
|
159
|
+
c2cgeoportal_geoportal/views/printproxy.py,sha256=buHwibEfM2mm88F3-CNjeiykpHeCz0FtT5r1Y8mEt_g,5965
|
160
|
+
c2cgeoportal_geoportal/views/profile.py,sha256=9ZXIsjJoV3_uRx0H3iQ0256xiu5OpIaMPAMmKEbaBuk,5394
|
161
|
+
c2cgeoportal_geoportal/views/proxy.py,sha256=0PWwckJdU5EXGLaa27yLBZimBSU2DiMO4VcVsCE2MmI,10490
|
162
|
+
c2cgeoportal_geoportal/views/raster.py,sha256=7diNkV-YGtg4di_QDV-Bbbe6phB76bPYLnmnE4ZBXc0,7570
|
163
|
+
c2cgeoportal_geoportal/views/resourceproxy.py,sha256=aKOJUOI5Em2Z3BI61I2br_sUmx8ospFv_RExxmqkyXA,3181
|
164
|
+
c2cgeoportal_geoportal/views/shortener.py,sha256=I9GjjlkR9sX5CwsRSsY9PLjyLue_c_nHgVrFnh3gTBQ,6206
|
165
|
+
c2cgeoportal_geoportal/views/theme.py,sha256=xwOVGLFA0X7UMJ2MEVuwvaB-q1NSpFYCJ7dExhc4ATY,51588
|
166
|
+
c2cgeoportal_geoportal/views/tinyowsproxy.py,sha256=tbMQTt97U1e3_YLqD_sd3TQh-xkZadpEYH8kHSUK1dY,8171
|
167
|
+
c2cgeoportal_geoportal/views/vector_tiles.py,sha256=PkNqvXhcE_IgtWU9sjG2gj8SFlbKkb_h6rU0K0wEe-s,3455
|
168
|
+
tests/__init__.py,sha256=suzy8wAvOM-z2yewf6Ij-r4v0kWCEll94nCWJqcBAKQ,3752
|
169
|
+
tests/test_cachebuster.py,sha256=FBMDqBjN5avLwmp6I751HZPplnLTRHVwYQuy6ltOmaM,2941
|
170
|
+
tests/test_caching.py,sha256=UXAEAsuspHU96LLjMxXqvRRK9eda3-0I09-XBBxG-XE,12493
|
171
|
+
tests/test_checker.py,sha256=kOIOapaOvXzxL_1V2ru1Jgkg0RQ7VUF4iBOzD20G7b0,3638
|
172
|
+
tests/test_decimaljson.py,sha256=yrI5cQAenW0jXJljfh36mLH5m3MvdOw_9J06Wa5mpeY,2223
|
173
|
+
tests/test_headerstween.py,sha256=J0-frpbB2tJqUBWkT0JVOWlnePxXaQtd-FUtBC7W4Aw,2524
|
174
|
+
tests/test_i18n.py,sha256=_gh-bR6GnpIfvrUwSKSY8plMchw9u_LZ0iSM8V1Me5o,1003
|
175
|
+
tests/test_init.py,sha256=e5vZFPBrJS-d9WWJgHDt2bBrfAxN94BbgpW2-clJgmU,7357
|
176
|
+
tests/test_locale_negociator.py,sha256=6kL0xkp9TakBp5nCAoa9I5Y2XWXVJv9Fk_y4tIWpQ8M,3071
|
177
|
+
tests/test_mapserverproxy_route_predicate.py,sha256=CrYzEnYjowvDJxJp56gEAaUEk5vXVxqI3JscOAfr3T0,3044
|
178
|
+
tests/test_raster.py,sha256=oRyOc90WixD9Y-iR3pMdkHuR0JwKART9DxNH5QwyilM,12074
|
179
|
+
tests/test_wmstparsing.py,sha256=ZAlL6OQkYmzFTKu70OQ6Xej-7ZNB7UltSs2V_PbXDac,9135
|
180
|
+
tests/xmlstr.py,sha256=vIvIFWIE2GFUMfAtG0hTMZC2jx-pQBuzOOq2FjQlyjA,6010
|
181
|
+
c2cgeoportal_geoportal-2.7.1.156.dist-info/METADATA,sha256=thB2o5ryUrMF9AMrCtrQGmztw6J-bCzIqR1vvdnECvU,2036
|
182
|
+
c2cgeoportal_geoportal-2.7.1.156.dist-info/WHEEL,sha256=a-zpFRIJzOq5QfuhBzbhiA1eHTzNCJn8OdRvhdNX0Rk,110
|
183
|
+
c2cgeoportal_geoportal-2.7.1.156.dist-info/entry_points.txt,sha256=_EqfKA_CKejpkgK0xWDTB9K8an0TKqIWHoyCJrRpU80,1414
|
184
|
+
c2cgeoportal_geoportal-2.7.1.156.dist-info/top_level.txt,sha256=PJIbY7Nx51dDrJ052f5mDA7c6Tehm5aD-Gb32L_CtJA,29
|
185
|
+
c2cgeoportal_geoportal-2.7.1.156.dist-info/RECORD,,
|
@@ -2,6 +2,7 @@
|
|
2
2
|
c2cupgrade = c2cgeoportal_geoportal.scripts.c2cupgrade:main
|
3
3
|
create-demo-theme = c2cgeoportal_geoportal.scripts.create_demo_theme:main
|
4
4
|
manage-users = c2cgeoportal_geoportal.scripts.manage_users:main
|
5
|
+
pcreate = c2cgeoportal_geoportal.scripts.pcreate:main
|
5
6
|
theme2fts = c2cgeoportal_geoportal.scripts.theme2fts:main
|
6
7
|
urllogin = c2cgeoportal_geoportal.scripts.urllogin:main
|
7
8
|
|
@@ -21,6 +22,7 @@ c2cgeoportal+egg = c2cgeoportal_geoportal.lib.loader:Loader
|
|
21
22
|
c2cgeoportal+ini = c2cgeoportal_geoportal.lib.loader:Loader
|
22
23
|
|
23
24
|
[pyramid.scaffold]
|
25
|
+
c2cgeoportal_advance_create = c2cgeoportal_geoportal.scaffolds:TemplateAdvanceCreate
|
26
|
+
c2cgeoportal_advance_update = c2cgeoportal_geoportal.scaffolds:TemplateAdvanceUpdate
|
24
27
|
c2cgeoportal_create = c2cgeoportal_geoportal.scaffolds:TemplateCreate
|
25
28
|
c2cgeoportal_update = c2cgeoportal_geoportal.scaffolds:TemplateUpdate
|
26
|
-
|
tests/__init__.py
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
|
3
1
|
# Copyright (c) 2011-2019, Camptocamp SA
|
4
2
|
# All rights reserved.
|
5
3
|
|
@@ -28,17 +26,23 @@
|
|
28
26
|
# either expressed or implied, of the FreeBSD Project.
|
29
27
|
|
30
28
|
|
31
|
-
"""
|
29
|
+
"""
|
30
|
+
Pyramid application test package.
|
32
31
|
"""
|
33
32
|
|
34
33
|
import logging
|
35
34
|
import os
|
36
35
|
import urllib.parse
|
36
|
+
import warnings
|
37
37
|
|
38
|
+
import sqlalchemy.exc
|
38
39
|
from pyramid.testing import DummyRequest as PyramidDummyRequest
|
39
40
|
|
40
41
|
from c2cgeoportal_geoportal.lib import caching
|
41
42
|
|
43
|
+
with warnings.catch_warnings():
|
44
|
+
warnings.simplefilter("ignore", category=sqlalchemy.exc.SAWarning)
|
45
|
+
|
42
46
|
|
43
47
|
class DummyRequest(PyramidDummyRequest):
|
44
48
|
def __init__(self, *args, **kwargs):
|