c2cgeoportal-geoportal 2.5.0.100__py2.py3-none-any.whl → 2.7.1.83__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.
Files changed (224) hide show
  1. c2cgeoportal_geoportal/__init__.py +261 -130
  2. c2cgeoportal_geoportal/lib/__init__.py +72 -120
  3. c2cgeoportal_geoportal/lib/authentication.py +170 -21
  4. c2cgeoportal_geoportal/lib/bashcolor.py +17 -13
  5. c2cgeoportal_geoportal/lib/cacheversion.py +19 -11
  6. c2cgeoportal_geoportal/lib/caching.py +66 -160
  7. c2cgeoportal_geoportal/lib/check_collector.py +17 -10
  8. c2cgeoportal_geoportal/lib/checker.py +62 -64
  9. c2cgeoportal_geoportal/lib/common_headers.py +170 -0
  10. c2cgeoportal_geoportal/lib/dbreflection.py +70 -31
  11. c2cgeoportal_geoportal/lib/filter_capabilities.py +124 -96
  12. c2cgeoportal_geoportal/lib/fulltextsearch.py +50 -0
  13. c2cgeoportal_geoportal/lib/functionality.py +36 -21
  14. c2cgeoportal_geoportal/lib/headers.py +14 -5
  15. c2cgeoportal_geoportal/lib/i18n.py +39 -0
  16. c2cgeoportal_geoportal/lib/layers.py +29 -10
  17. c2cgeoportal_geoportal/lib/lingua_extractor.py +408 -211
  18. c2cgeoportal_geoportal/lib/loader.py +18 -16
  19. c2cgeoportal_geoportal/lib/metrics.py +29 -18
  20. c2cgeoportal_geoportal/lib/oauth2.py +1036 -0
  21. c2cgeoportal_geoportal/lib/wmstparsing.py +115 -90
  22. c2cgeoportal_geoportal/lib/xsd.py +29 -19
  23. c2cgeoportal_geoportal/resources.py +15 -9
  24. c2cgeoportal_geoportal/scaffolds/advance_create/ci/config.yaml +26 -0
  25. c2cgeoportal_geoportal/scaffolds/advance_create/cookiecutter.json +18 -0
  26. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.dockerignore +6 -0
  27. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/.eslintrc.yaml +19 -0
  28. c2cgeoportal_geoportal/scaffolds/{create/+dot+prospector.yaml → advance_create/{{cookiecutter.project}}/geoportal/.prospector.yaml} +8 -4
  29. c2cgeoportal_geoportal/scaffolds/{create/geoportal/Dockerfile_tmpl → advance_create/{{cookiecutter.project}}/geoportal/Dockerfile} +24 -15
  30. c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/alembic.ini +1 -0
  31. c2cgeoportal_geoportal/scaffolds/{create/geoportal/alembic.yaml_tmpl → advance_create/{{cookiecutter.project}}/geoportal/alembic.yaml} +1 -1
  32. c2cgeoportal_geoportal/scaffolds/{create/geoportal/development.ini_tmpl → advance_create/{{cookiecutter.project}}/geoportal/development.ini} +34 -15
  33. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/gunicorn.conf.py +104 -0
  34. c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/lingua-client.cfg +1 -0
  35. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/production.ini +38 -0
  36. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/requirements.txt +2 -0
  37. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/setup.py +25 -0
  38. c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/tools/extract-messages.js +8 -6
  39. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/tsconfig.json +8 -0
  40. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.api.js +75 -0
  41. c2cgeoportal_geoportal/scaffolds/{create/geoportal/webpack.apps.js_tmpl → advance_create/{{cookiecutter.project}}/geoportal/webpack.apps.js} +31 -28
  42. c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/webpack.commons.js +3 -7
  43. c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/webpack.config.js +4 -4
  44. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/__init__.py +47 -0
  45. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/authentication.py +10 -0
  46. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/dev.py +14 -0
  47. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/models.py +8 -0
  48. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/multi_organization.py +7 -0
  49. c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/resources.py +4 -3
  50. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/api/index.js +12 -0
  51. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static-ngeo/js/{{cookiecutter.package}}module.js +25 -0
  52. c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal/subscribers.py_tmpl → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/subscribers.py} +3 -6
  53. c2cgeoportal_geoportal/scaffolds/advance_update/cookiecutter.json +18 -0
  54. c2cgeoportal_geoportal/scaffolds/{update/geoportal/CONST_Makefile_tmpl → advance_update/{{cookiecutter.project}}/geoportal/CONST_Makefile} +32 -20
  55. c2cgeoportal_geoportal/scaffolds/create/cookiecutter.json +18 -0
  56. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.dockerignore +14 -0
  57. c2cgeoportal_geoportal/scaffolds/create/{+dot+editorconfig → {{cookiecutter.project}}/.editorconfig} +4 -8
  58. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/main.yaml +43 -0
  59. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/rebuild.yaml +46 -0
  60. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/update_l10n.yaml +65 -0
  61. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.gitignore +16 -0
  62. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierignore +1 -0
  63. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.prettierrc.yaml +2 -0
  64. c2cgeoportal_geoportal/scaffolds/create/{Dockerfile_tmpl → {{cookiecutter.project}}/Dockerfile} +34 -24
  65. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Makefile +14 -0
  66. c2cgeoportal_geoportal/scaffolds/create/{README.rst_tmpl → {{cookiecutter.project}}/README.rst} +4 -4
  67. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/build +158 -0
  68. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/config.yaml +25 -0
  69. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/requirements.txt +1 -0
  70. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose-lib.yaml +474 -0
  71. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.override.sample.yaml +66 -0
  72. c2cgeoportal_geoportal/scaffolds/create/{docker-compose.yaml → {{cookiecutter.project}}/docker-compose.yaml} +43 -18
  73. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.default +82 -0
  74. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.project +60 -0
  75. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/vars.yaml +396 -0
  76. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/mobile.css +0 -0
  77. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-blue.png +0 -0
  78. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-gold.png +0 -0
  79. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker-green.png +0 -0
  80. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/images/markers/marker.png +0 -0
  81. c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/data/Readme.txt +1 -1
  82. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/demo.map.tmpl +224 -0
  83. c2cgeoportal_geoportal/scaffolds/create/{mapserver/mapserver.map.tmpl_tmpl → {{cookiecutter.project}}/mapserver/mapserver.map.tmpl} +7 -15
  84. c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A3_Landscape.jrxml +17 -9
  85. c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A3_Portrait.jrxml +17 -9
  86. c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A4_Landscape.jrxml +17 -9
  87. c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/A4_Portrait.jrxml +17 -9
  88. c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/config.yaml.tmpl +30 -27
  89. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/legend.jrxml +109 -0
  90. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation.properties +4 -0
  91. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/localisation_fr.properties +4 -0
  92. c2cgeoportal_geoportal/scaffolds/create/{project.yaml_tmpl → {{cookiecutter.project}}/project.yaml} +6 -6
  93. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/pyproject.toml +3 -0
  94. c2cgeoportal_geoportal/scaffolds/create/{qgisserver/pg_service.conf.tmpl_tmpl → {{cookiecutter.project}}/qgisserver/pg_service.conf.tmpl} +2 -2
  95. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-backup +107 -0
  96. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-restore +111 -0
  97. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/setup.cfg +7 -0
  98. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/spell-ignore-words.txt +3 -0
  99. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/tilegeneration/config.yaml.tmpl +195 -0
  100. c2cgeoportal_geoportal/scaffolds/update/cookiecutter.json +18 -0
  101. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/.upgrade.yaml +191 -0
  102. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/CONST_CHANGELOG.txt +1153 -0
  103. c2cgeoportal_geoportal/scaffolds/update/{geoportal → {{cookiecutter.project}}/geoportal}/CONST_config-schema.yaml +99 -47
  104. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/geoportal/CONST_vars.yaml +1412 -0
  105. c2cgeoportal_geoportal/scripts/__init__.py +17 -33
  106. c2cgeoportal_geoportal/scripts/c2cupgrade.py +295 -200
  107. c2cgeoportal_geoportal/scripts/create_demo_theme.py +5 -6
  108. c2cgeoportal_geoportal/scripts/manage_users.py +34 -37
  109. c2cgeoportal_geoportal/scripts/pcreate.py +312 -0
  110. c2cgeoportal_geoportal/scripts/theme2fts.py +92 -25
  111. c2cgeoportal_geoportal/scripts/urllogin.py +23 -17
  112. c2cgeoportal_geoportal/templates/login.html +88 -84
  113. c2cgeoportal_geoportal/templates/notlogin.html +62 -0
  114. c2cgeoportal_geoportal/templates/testi18n.html +6 -8
  115. c2cgeoportal_geoportal/views/__init__.py +23 -4
  116. c2cgeoportal_geoportal/views/dev.py +9 -7
  117. c2cgeoportal_geoportal/views/dynamic.py +70 -40
  118. c2cgeoportal_geoportal/views/entry.py +93 -24
  119. c2cgeoportal_geoportal/views/fulltextsearch.py +36 -29
  120. c2cgeoportal_geoportal/views/geometry_processing.py +15 -7
  121. c2cgeoportal_geoportal/views/i18n.py +91 -9
  122. c2cgeoportal_geoportal/views/layers.py +173 -134
  123. c2cgeoportal_geoportal/views/login.py +206 -87
  124. c2cgeoportal_geoportal/views/mapserverproxy.py +59 -35
  125. c2cgeoportal_geoportal/views/memory.py +13 -13
  126. c2cgeoportal_geoportal/views/ogcproxy.py +48 -30
  127. c2cgeoportal_geoportal/views/pdfreport.py +31 -27
  128. c2cgeoportal_geoportal/views/printproxy.py +67 -53
  129. c2cgeoportal_geoportal/views/profile.py +25 -24
  130. c2cgeoportal_geoportal/views/proxy.py +97 -68
  131. c2cgeoportal_geoportal/views/raster.py +47 -29
  132. c2cgeoportal_geoportal/views/resourceproxy.py +13 -11
  133. c2cgeoportal_geoportal/views/shortener.py +31 -24
  134. c2cgeoportal_geoportal/views/theme.py +475 -365
  135. c2cgeoportal_geoportal/views/tinyowsproxy.py +46 -39
  136. c2cgeoportal_geoportal/views/vector_tiles.py +80 -0
  137. {c2cgeoportal_geoportal-2.5.0.100.dist-info → c2cgeoportal_geoportal-2.7.1.83.dist-info}/METADATA +16 -11
  138. c2cgeoportal_geoportal-2.7.1.83.dist-info/RECORD +185 -0
  139. {c2cgeoportal_geoportal-2.5.0.100.dist-info → c2cgeoportal_geoportal-2.7.1.83.dist-info}/WHEEL +1 -1
  140. {c2cgeoportal_geoportal-2.5.0.100.dist-info → c2cgeoportal_geoportal-2.7.1.83.dist-info}/entry_points.txt +3 -1
  141. tests/__init__.py +24 -3
  142. tests/test_cachebuster.py +1 -3
  143. tests/test_caching.py +19 -26
  144. tests/test_checker.py +2 -3
  145. tests/test_decimaljson.py +4 -4
  146. tests/test_headerstween.py +0 -3
  147. tests/test_i18n.py +31 -0
  148. tests/test_init.py +12 -27
  149. tests/test_locale_negociator.py +6 -6
  150. tests/test_mapserverproxy_route_predicate.py +0 -2
  151. tests/test_raster.py +18 -5
  152. tests/test_wmstparsing.py +7 -8
  153. c2cgeoportal_geoportal/scaffolds/__init__.py +0 -226
  154. c2cgeoportal_geoportal/scaffolds/create/+dot+dockerignore_tmpl +0 -11
  155. c2cgeoportal_geoportal/scaffolds/create/+dot+github/workflows/ci.yaml_tmpl +0 -56
  156. c2cgeoportal_geoportal/scaffolds/create/+dot+gitignore_tmpl +0 -12
  157. c2cgeoportal_geoportal/scaffolds/create/build_tmpl +0 -144
  158. c2cgeoportal_geoportal/scaffolds/create/docker-compose-lib.yaml_tmpl +0 -302
  159. c2cgeoportal_geoportal/scaffolds/create/docker-compose.override.sample.yaml_tmpl +0 -54
  160. c2cgeoportal_geoportal/scaffolds/create/env.default_tmpl +0 -49
  161. c2cgeoportal_geoportal/scaffolds/create/env.project_tmpl +0 -39
  162. c2cgeoportal_geoportal/scaffolds/create/geoportal/+dot+dockerignore_tmpl +0 -5
  163. c2cgeoportal_geoportal/scaffolds/create/geoportal/+dot+eslintrc_tmpl +0 -19
  164. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/__init__.py_tmpl +0 -48
  165. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/models.py_tmpl +0 -10
  166. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/static/images/favicon.ico +0 -0
  167. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/static/robot.txt +0 -3
  168. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/static-ngeo/api/index.js_tmpl +0 -37
  169. c2cgeoportal_geoportal/scaffolds/create/geoportal/+package+_geoportal/static-ngeo/js/+package+module.js_tmpl +0 -22
  170. c2cgeoportal_geoportal/scaffolds/create/geoportal/production.ini_tmpl +0 -106
  171. c2cgeoportal_geoportal/scaffolds/create/geoportal/requirements.txt +0 -2
  172. c2cgeoportal_geoportal/scaffolds/create/geoportal/setup.py_tmpl +0 -18
  173. c2cgeoportal_geoportal/scaffolds/create/geoportal/tsconfig.json_tmpl +0 -9
  174. c2cgeoportal_geoportal/scaffolds/create/geoportal/vars.yaml_tmpl +0 -224
  175. c2cgeoportal_geoportal/scaffolds/create/geoportal/webpack.api.js_tmpl +0 -71
  176. c2cgeoportal_geoportal/scaffolds/create/mapserver/demo.map.tmpl_tmpl +0 -262
  177. c2cgeoportal_geoportal/scaffolds/create/mapserver/tinyows.xml +0 -36
  178. c2cgeoportal_geoportal/scaffolds/create/print/print-apps/+package+/config.yaml +0 -166
  179. c2cgeoportal_geoportal/scaffolds/create/print/print-apps/+package+/legend.jrxml +0 -27
  180. c2cgeoportal_geoportal/scaffolds/create/qgisserver/geomapfish.yaml.tmpl_tmpl +0 -29
  181. c2cgeoportal_geoportal/scaffolds/create/scripts/publish-docker +0 -124
  182. c2cgeoportal_geoportal/scaffolds/create/setup.cfg_tmpl +0 -3
  183. c2cgeoportal_geoportal/scaffolds/create/spell-ignore-words.txt +0 -1
  184. c2cgeoportal_geoportal/scaffolds/create/tilegeneration/config.yaml.tmpl_tmpl +0 -169
  185. c2cgeoportal_geoportal/scaffolds/create/yamllint.yaml +0 -11
  186. c2cgeoportal_geoportal/scaffolds/update/+dot+upgrade.yaml_tmpl +0 -171
  187. c2cgeoportal_geoportal/scaffolds/update/CONST_CHANGELOG.txt_tmpl +0 -64
  188. c2cgeoportal_geoportal/scaffolds/update/geoportal/CONST_vars.yaml_tmpl +0 -783
  189. c2cgeoportal_geoportal/templates/dynamic.js +0 -21
  190. c2cgeoportal_geoportal-2.5.0.100.dist-info/RECORD +0 -162
  191. tests/test_get_url.py +0 -96
  192. tests/test_lib.py +0 -77
  193. /c2cgeoportal_geoportal/{scaffolds/create/geoportal/+package+_geoportal/static/css/desktop.css → py.typed} +0 -0
  194. /c2cgeoportal_geoportal/scaffolds/{create/geoportal/Makefile_tmpl → advance_create/{{cookiecutter.project}}/geoportal/Makefile} +0 -0
  195. /c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/language_mapping +0 -0
  196. /c2cgeoportal_geoportal/scaffolds/{create → advance_create/{{cookiecutter.project}}}/geoportal/lingua-server.cfg +0 -0
  197. /c2cgeoportal_geoportal/scaffolds/{create/geoportal/+package+_geoportal → advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/views/__init__.py +0 -0
  198. /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
  199. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal/static/css/iframe_api.css → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/desktop.css} +0 -0
  200. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal/static/css/mobile.css → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/static/css/iframe_api.css} +0 -0
  201. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/banner_left.png +0 -0
  202. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/banner_right.png +0 -0
  203. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/images/blank.png +0 -0
  204. /c2cgeoportal_geoportal/scaffolds/create/{geoportal/+package+_geoportal → {{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal}/static/robot.txt.tmpl +0 -0
  205. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/data/TM_EUROPE_BORDERS-0.3.sql +0 -0
  206. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arial.ttf +0 -0
  207. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arialbd.ttf +0 -0
  208. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Arialbi.ttf +0 -0
  209. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Ariali.ttf +0 -0
  210. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Bold.ttf +0 -0
  211. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-BoldItalic.ttf +0 -0
  212. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Italic.ttf +0 -0
  213. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/NotoSans-Regular.ttf +0 -0
  214. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdana.ttf +0 -0
  215. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanab.ttf +0 -0
  216. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanai.ttf +0 -0
  217. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts/Verdanaz.ttf +0 -0
  218. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/fonts.conf +0 -0
  219. /c2cgeoportal_geoportal/scaffolds/create/{mapserver → {{cookiecutter.project}}/mapserver}/tinyows.xml.tmpl +0 -0
  220. /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/logo.png +0 -0
  221. /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/north.svg +0 -0
  222. /c2cgeoportal_geoportal/scaffolds/create/{print/print-apps/+package+ → {{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}}/results.jrxml +0 -0
  223. /c2cgeoportal_geoportal/scaffolds/create/{run_alembic.sh → {{cookiecutter.project}}/run_alembic.sh} +0 -0
  224. {c2cgeoportal_geoportal-2.5.0.100.dist-info → c2cgeoportal_geoportal-2.7.1.83.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,66 @@
1
+ ---
2
+ # This file can be renamed as `docker-compose.override.yaml` and uncomment the desired lines for
3
+ # development. The file `docker-compose.override.yaml` is ignored by Git by default.
4
+
5
+ version: '2.3'
6
+
7
+ services:
8
+ geoportal:
9
+ user: root
10
+ # volumes:
11
+ # For Python project development.
12
+ # - ./geoportal/${PACKAGE}_geoportal:/app/${PACKAGE}_geoportal
13
+ # For Python c2cgeportal development.
14
+ # - ./../c2cgeoportal/commons/c2cgeoportal_commons:/opt/c2cgeoportal/commons/c2cgeoportal_commons
15
+ # - ./../c2cgeoportal/geoportal/c2cgeoportal_geoportal:/opt/c2cgeoportal/geoportal/c2cgeoportal_geoportal
16
+ # - ./../c2cgeoportal/admin/c2cgeoportal_admin:/opt/c2cgeoportal/admin/c2cgeoportal_admin
17
+ command:
18
+ - /usr/local/bin/pserve
19
+ - --reload
20
+ - c2c:///app/development.ini
21
+ environment:
22
+ - DEVELOPMENT=1
23
+ - C2C_SQL_PROFILER_ENABLED=1
24
+ - C2C_DEBUG_VIEW_ENABLED=1
25
+ # - PRINT_URL=http://print:8080/print/
26
+ - PYTHONWARNINGS=default::DeprecationWarning
27
+ - SQLALCHEMY_WARN_20=true
28
+ ports:
29
+ - 5678:5678 # For remote debugging using Visual Studio Code
30
+
31
+ # Also uncomment the PRINT_URL in geoportal
32
+ # print:
33
+ # extends:
34
+ # file: docker-compose-lib.yaml
35
+ # service: print
36
+ # volumes_from:
37
+ # - config:ro
38
+ # environment:
39
+ # - LOG_LEVEL=DEBUG
40
+
41
+ # qgisserver:
42
+ # # volumes:
43
+ # # - './../c2cgeoportal/docker/qgisserver/geomapfish_qgisserver/:/var/www/plugins/geomapfish_qgisserver/'
44
+ # # - './../c2cgeoportal/commons/c2cgeoportal_commons:/opt/c2cgeoportal/commons/c2cgeoportal_commons/'
45
+ # environment:
46
+ # - QGIS_SERVER_LOG_LEVEL=0
47
+ # - QGIS_CATCH_SEGV=1 # The result stack traces will be available in /var/log/qgis.log
48
+
49
+ tools:
50
+ volumes_from:
51
+ - config:rw
52
+ #
53
+ # For Javascript project development.
54
+ # The debug application will be available at ``https://<host>/<entry_point>/dev/<interface>.html``.
55
+ # webpack_dev_server:
56
+ # # Uncomment these lines when you want to debug respectively the project js, ngeo js and/or the gmf contrib js.
57
+ # # Adapt the path for ngeo / gmf contrib to point where you have checkouted the code.
58
+ # # volumes:
59
+ # # - ./geoportal/${PACKAGE}_geoportal/static-ngeo:/app/${PACKAGE}_geoportal/static-ngeo
60
+ # # - ./../ngeo/src:/usr/lib/node_modules/ngeo/src
61
+ # # - ./../ngeo/contribs:/usr/lib/node_modules/ngeo/contribs
62
+ # volumes_from:
63
+ # - config:rw
64
+ # extends:
65
+ # file: docker-compose-lib.yaml
66
+ # service: webpack_dev_server
@@ -1,8 +1,10 @@
1
1
  ---
2
-
3
2
  # The project Docker compose file for development.
4
3
 
5
- version: '2.0'
4
+ version: '2.3'
5
+
6
+ volumes:
7
+ postgresql_data:
6
8
 
7
9
  services:
8
10
  config:
@@ -10,12 +12,12 @@ services:
10
12
  file: docker-compose-lib.yaml
11
13
  service: config
12
14
 
13
- ## print:
14
- ## extends:
15
- ## file: docker-compose-lib.yaml
16
- ## service: print
17
- ## volumes_from:
18
- ## - config:ro
15
+ print:
16
+ extends:
17
+ file: docker-compose-lib.yaml
18
+ service: print
19
+ volumes_from:
20
+ - config:ro
19
21
 
20
22
  mapserver:
21
23
  extends:
@@ -33,12 +35,9 @@ services:
33
35
  ## volumes_from:
34
36
  ## - config:ro
35
37
  ## environment:
36
- ## # Single QGIS project files
37
- ## - QGIS_PROJECT_FILE=/etc/qgisserver/project.qgz
38
- ## - GEOMAPFISH_OGCSERVER=<OGC server name>
39
- ## # Multiple QGIS project files
40
- ## - QGIS_PROJECT_FILE=
41
- ## - GEOMAPFISH_ACCESSCONTROL_CONFIG=/etc/qgisserver/accesscontrol_config.yaml
38
+ ## - QGIS_SERVER_LANDING_PAGE_PROJECTS_DIRECTORIES=/etc/qgisserver/
39
+ ## # Or
40
+ ## - QGIS_SERVER_LANDING_PAGE_PROJECTS_PG_CONNECTIONS=...
42
41
 
43
42
  tinyows:
44
43
  extends:
@@ -47,11 +46,32 @@ services:
47
46
  volumes_from:
48
47
  - config:ro
49
48
 
49
+ # Standalone version
50
50
  redis:
51
51
  extends:
52
52
  file: docker-compose-lib.yaml
53
53
  service: redis
54
54
 
55
+ # To test Kubernetes version
56
+ # redis_master:
57
+ # extends:
58
+ # file: docker-compose-lib.yaml
59
+ # service: redis_master
60
+ #
61
+ # redis_slave:
62
+ # extends:
63
+ # file: docker-compose-lib.yaml
64
+ # service: redis_slave
65
+ # depends_on:
66
+ # - redis_master
67
+ #
68
+ # redis_sentinel:
69
+ # extends:
70
+ # file: docker-compose-lib.yaml
71
+ # service: redis_sentinel
72
+ # depends_on:
73
+ # - redis_master
74
+
55
75
  tilecloudchain:
56
76
  extends:
57
77
  file: docker-compose-lib.yaml
@@ -89,10 +109,15 @@ services:
89
109
 
90
110
  # Rich image for project development with e.-g. vim, tree, awscli, psql, ...
91
111
  tools:
92
- volumes_from:
93
- - config:rw
94
- volumes:
95
- - .:/src
96
112
  extends:
97
113
  file: docker-compose-lib.yaml
98
114
  service: tools
115
+ volumes_from:
116
+ - config:ro
117
+
118
+ # db:
119
+ # extends:
120
+ # file: docker-compose-lib.yaml
121
+ # service: db
122
+ # volumes:
123
+ # - postgresql_data:/var/lib/postgresql/data
@@ -0,0 +1,82 @@
1
+ # Default values for c2cgeoportal
2
+ GEOMAPFISH_VERSION={{cookiecutter.geomapfish_version}}
3
+ GEOMAPFISH_MAIN_VERSION={{cookiecutter.geomapfish_main_version}}
4
+ GEOMAPFISH_MAIN_MINOR_VERSION={{cookiecutter.geomapfish_main_minor_version}}
5
+ COMPOSE_PROJECT_NAME={{cookiecutter.package}}
6
+ PACKAGE={{cookiecutter.package}}
7
+ SRID={{cookiecutter.srid}}
8
+ DOCKER_PORT=8484
9
+ DOCKER_BASE=camptocamp/{{cookiecutter.package}}
10
+ DOCKER_TAG=latest
11
+ VISIBLE_WEB_HOST=localhost:8484
12
+ VISIBLE_WEB_PROTOCOL=https
13
+ VISIBLE_ENTRY_POINT=/
14
+ DEVELOPMENT=False
15
+ AUTHTKT_TIMEOUT=86400
16
+ AUTHTKT_REISSUE_TIME=9000
17
+ AUTHTKT_MAXAGE=86400
18
+ AUTHTKT_SECRET={{cookiecutter.authtkt_secret}}
19
+ AUTHTKT_COOKIENAME=auth_tkt_{{cookiecutter.package}}
20
+ AUTHTKT_HTTP_ONLY=True
21
+ AUTHTKT_SECURE=True
22
+ AUTHTKT_SAMESITE=Lax
23
+ BASICAUTH=False
24
+ MUTUALIZED_PRINT_URL=mutualized-print.apps.openshift-ch-1.camptocamp.com
25
+ # For internal print
26
+ # DISABLE_LOCAL will be set to # on mutualize services to comment local configuration
27
+ # DISABLE_MUTUALIZE is set to # locally to comment mutualize services
28
+ DISABLE_MUTUALIZE=#
29
+ DISABLE_LOCAL=
30
+ # For backward compatibility
31
+ DISABLE_MUTUALIZED_PRINT=#
32
+ DISABLE_LOCAL_PRINT=
33
+
34
+ GEOPORTAL_INTERNAL_URL=http://geoportal:8080
35
+ GEOPORTAL_INTERNAL_HOST=geoportal
36
+ GEOPORTAL_INTERNAL_PORT=8080
37
+ TILECLOUDCHAIN_INTERNAL_URL=http://tilecloudchain:8080
38
+ TILECLOUDCHAIN_INTERNAL_HOST=tilecloudchain
39
+ TILECLOUDCHAIN_INTERNAL_PORT=8080
40
+ # For internal print
41
+ MAPSERVER_URL=http://mapserver:8080/
42
+ TINYOWS_URL=http://tinyows:8080/
43
+ QGISSERVER_URL=http://qgisserver:8080/mapserv_proxy
44
+ QGIS_VERSION=3.28-gdal3.7
45
+ POSTGRES_TAG=13-postgis-3
46
+
47
+ DEVSERVER_HOST=webpack_dev_server:8080
48
+ REDIS_SERVICENAME=mymaster
49
+ REDIS_DB=0
50
+ REDIS_TIMEOUT=10
51
+ C2C_REDIS_TIMEOUT=10
52
+ C2C_REDIS_SERVICENAME=mymaster
53
+ C2C_REDIS_DB=0
54
+ PGOPTIONS=-c statement_timeout=30000
55
+ SQLALCHEMY_POOL_RECYCLE=30
56
+ SQLALCHEMY_POOL_SIZE=5
57
+ SQLALCHEMY_MAX_OVERFLOW=25
58
+ SQLALCHEMY_SLAVE_POOL_RECYCLE=30
59
+ SQLALCHEMY_SLAVE_POOL_SIZE=5
60
+ SQLALCHEMY_SLAVE_MAX_OVERFLOW=25
61
+ CATALINA_OPTS=-Xmx1024m
62
+ C2C_BROADCAST_PREFIX=broadcast_geoportal_
63
+ LOG_LEVEL=INFO
64
+ C2CGEOPORTAL_LOG_LEVEL=INFO
65
+ SQL_LOG_LEVEL=WARN
66
+ GUNICORN_LOG_LEVEL=WARN
67
+ OTHER_LOG_LEVEL=WARN
68
+ DOGPILECACHE_LOG_LEVEL=WARN
69
+ C2CWSGI_LOG_LEVEL=WARN
70
+ TILECLOUD_LOG_LEVEL=INFO
71
+ TILECLOUD_CHAIN_LOG_LEVEL=INFO
72
+ C2CWSGIUTILS_LOG_LEVEL=INFO
73
+ LOG_TYPE=console
74
+ CPL_VSIL_CURL_USE_CACHE=TRUE
75
+ CPL_VSIL_CURL_CACHE_SIZE=128000000
76
+ CPL_VSIL_CURL_USE_HEAD=FALSE
77
+ GDAL_DISABLE_READDIR_ON_OPEN=TRUE
78
+ QGIS_AUTH_DB_DIR_PATH=/etc/qgisserver/
79
+ QGIS_SERVER_IGNORE_BAD_LAYERS=true
80
+ QGIS_SERVER_DISABLE_GETPRINT=true
81
+ PGSERVICEFILE=/etc/qgisserver/pg_service.conf
82
+ FRONT_LOG_DIRECTORY=/dev/log
@@ -0,0 +1,60 @@
1
+ # Custom project values
2
+
3
+ # Database
4
+ PGDATABASE=gmf_{{cookiecutter.package}}
5
+ PGSCHEMA=main
6
+ PGSCHEMA_STATIC=main_static
7
+ # To use the mutualised database.
8
+ PGHOST=pg-gs.camptocamp.com
9
+ PGHOST_SLAVE=pg-gs.camptocamp.com
10
+ PGPORT=30100
11
+ PGPORT_SLAVE=30101
12
+ PGUSER=<user>
13
+ PGPASSWORD=<pass>
14
+ # Should be set to 'prefer' to be able to connect to a local database
15
+ PGSSLMODE=require
16
+ # To use a database on the host
17
+ # PGHOST=172.17.0.1
18
+ # PGHOST_SLAVE=172.17.0.1
19
+ # PGPORT=5432
20
+ # PGUSER=www-data
21
+ # PGPASSWORD=www-data
22
+ # PGSSLMODE=prefer
23
+
24
+ # For Exoscale S3
25
+ AWS_DEFAULT_REGION=ch-dk-2
26
+ AWS_S3_ENDPOINT=sos-ch-dk-2.exo.io
27
+
28
+ # Set the raster Base path
29
+ # Amazon S3
30
+ # RASTER_BASE_PATH=/vsis3/<bucket>/
31
+ # Azure Blob Storage
32
+ # RASTER_BASE_PATH=/vsiaz/<container>/
33
+
34
+ # Use the mutualize print, ask Camptocamp to configure your project.
35
+ # PRINT_URL=https://mutualized-print.apps.openshift-ch-1.camptocamp.com/print/{{cookiecutter.package}}/
36
+ # To use the internal print:
37
+ PRINT_URL=http://print:8080/print/
38
+
39
+ TILEGENERATION_SQS_QUEUE=<queue_name>
40
+ TILEGENERATION_S3_BUCKET=<bucket_name>
41
+ TILEGENERATION_AZURE_CONTAINER=<container_name>
42
+
43
+ # For production
44
+ # FRONT_INNER_PORT=80
45
+ # FRONT_CONFIG=haproxy
46
+ # For development (front in https)
47
+ FRONT_INNER_PORT=443
48
+ FRONT_CONFIG=haproxy_dev
49
+
50
+ # For OpenShift
51
+ #REDIS_HOST=redis_sentinel
52
+ #REDIS_PORT=26379
53
+ #C2C_REDIS_SENTINELS=redis_sentinel:26379
54
+ # For internal Redis
55
+ REDIS_HOST=redis
56
+ REDIS_PORT=6379
57
+ C2C_REDIS_URL=redis://redis:6379/0
58
+
59
+ # Set a strong password here for authentication on technical interfaces behind path /c2c
60
+ C2C_SECRET=
@@ -0,0 +1,396 @@
1
+ ---
2
+ extends: CONST_vars.yaml
3
+
4
+ vars:
5
+ srid: &srid {{cookiecutter.srid}}
6
+
7
+ alternate_projections: &alternate_projections
8
+ - EPSG:4326
9
+ - EPSG:{srid}
10
+ - EPSG:21781
11
+
12
+ resolutions: &resolutions [250, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.25, 0.1, 0.05]
13
+
14
+ extent: &extent [2420000, 1030000, 2900000, 1350000]
15
+
16
+ # The application's default language. This is the language used by
17
+ # the application if no specific language is specified in the URLs.
18
+ # This also defines the language used for the text search.
19
+ default_locale_name: fr
20
+
21
+ # All the application interfaces used to create the apache rewrite rules
22
+ interfaces:
23
+ - name: desktop
24
+ default: True
25
+ - name: mobile
26
+ - name: iframe_api
27
+
28
+ interfaces_config:
29
+ default:
30
+ constants:
31
+ defaultTheme: Demo
32
+ defaultLang: '{default_locale_name}'
33
+ gmfOptions:
34
+ map: {}
35
+ view: &view
36
+ projection: EPSG:{srid}
37
+ center: [2600000, 1200000]
38
+ zoom: 3
39
+ resolutions: *resolutions
40
+ extent: *extent
41
+ geolocalisation: True
42
+ gmfElevationOptions:
43
+ layers: [aster, srtm]
44
+ gmfSearchOptions:
45
+ coordinatesProjections: *alternate_projections
46
+ gmfPermalinkOptions:
47
+ projectionCodes: *alternate_projections
48
+ gmfVectorTilesOptions:
49
+ projection: EPSG:{srid}
50
+ tileGrid:
51
+ extent: *extent
52
+ origin: [2420000, 1350000]
53
+ resolutions: *resolutions
54
+ routes:
55
+ fulltextsearchUrl:
56
+ params:
57
+ limit: 30
58
+ partitionlimit: 5
59
+
60
+ desktop:
61
+ constants:
62
+ gmfOptions:
63
+ map:
64
+ maxTilesLoading: 128
65
+ view:
66
+ <<: *view
67
+ constrainResolution: True
68
+ geolocalisation: True
69
+ gmfExternalOGCServers:
70
+ - name: swisstopo WMS
71
+ type: WMS
72
+ url: https://wms.geo.admin.ch/?lang=fr
73
+ - name: swisstopo WMTS
74
+ type: WMTS
75
+ url: https://wmts.geo.admin.ch/1.0.0/WMTSCapabilities.xml?lang=fr
76
+ - name: ASIT
77
+ type: WMTS
78
+ url: https://wmts.asit-asso.ch/wmts/1.0.0/WMTSCapabilities.xml
79
+ ngeoScaleSelectorOptions:
80
+ values: [1000000, 500000, 200000, 100000, 50000, 20000, 10000, 5000, 2000, 1000, 500, 200]
81
+ dropup: True
82
+ gmfMousePositionOptions:
83
+ projections:
84
+ - code: EPSG:2056
85
+ label: CH1903+ / MN95
86
+ filter: ngeoNumberCoordinates::{x}, {y} m
87
+ - code: EPSG:21781
88
+ label: CH1903 / MN03
89
+ filter: ngeoNumberCoordinates::{x}, {y} m
90
+ - code: EPSG:4326
91
+ label: WGS84
92
+ filter: ngeoDMSCoordinates:2:{y}, {x}
93
+ ngeoProfileOptions:
94
+ linesConfiguration:
95
+ aster:
96
+ color: '#0000A0'
97
+ srtm:
98
+ color: '#00A000'
99
+ gmfContextualDataOptions:
100
+ projections: *alternate_projections
101
+ rasterParams: {}
102
+
103
+ mobile:
104
+ constants:
105
+ gmfOptions:
106
+ map: {}
107
+ view:
108
+ <<: *view
109
+ autoRotate: True
110
+ geolocalisation: True
111
+ gmfMobileMeasurePointOptions:
112
+ rasterLayers:
113
+ - name: aster
114
+ unit: m
115
+ - name: srtm
116
+ unit: m
117
+
118
+ api:
119
+ constants:
120
+ # The resolutions list.
121
+ resolutions: *resolutions
122
+
123
+ # The extent restriction, must be in the same projection as `config.projection`.
124
+ # the format is `[minx, miny, maxx, maxy]`for example: `[2420000, 1030000, 2660000, 1350000]`
125
+ # the null is no restriction.
126
+ extent: *extent
127
+
128
+ # The name of the layer to use as background, the layer must be present in the 'background_layers'
129
+ # section of the theme
130
+ backgroundLayer: OSM map
131
+
132
+ # The list of layers (names) that can be queried on mouse click
133
+ queryableLayers:
134
+ - osm_open
135
+ - many_attributes
136
+ - polygon
137
+ routes:
138
+ searchUrl:
139
+ params:
140
+ limit: 30
141
+ partitionlimit: 5
142
+
143
+ admin_interface:
144
+ # Default values for the admin interface's maps.
145
+ map:
146
+ baseLayers:
147
+ - type_: OSM
148
+ view:
149
+ projection: 'EPSG:3857'
150
+ center: [829170, 5933942]
151
+ zoom: 7
152
+ fitSource: False
153
+ fitMaxZoom: 14
154
+ focusOnly: False
155
+
156
+ functionalities:
157
+ # Functionalities that are made available to Mako templates.
158
+ available_in_templates:
159
+ - default_basemap
160
+
161
+ layers:
162
+ geometry_validation: True
163
+
164
+ api:
165
+ {}
166
+ # The OGC server used by the API.
167
+ # ogc_server: Main PNG
168
+ # The name of the API in JavaScript
169
+ # name: <package>
170
+
171
+ # The "vector tiles web service" configuration. See the "vector tiles"
172
+ # chapter in the integrator documentation.
173
+ vector_tiles:
174
+ srid: *srid
175
+ extent: *extent
176
+ resolutions: *resolutions
177
+
178
+ fulltextsearch:
179
+ languages:
180
+ fr: french
181
+ en: english
182
+ de: german
183
+ it: italian
184
+
185
+ shortener:
186
+ # Used to send a confirmation email
187
+ email_from: info@example.com
188
+ email_subject: Geoportal URL
189
+ # Email template, can contain:
190
+ # - {full_url}
191
+ # - {short_url}
192
+ # - {message}
193
+ # - {application_url}
194
+ # - {current_url}
195
+ email_body: |
196
+ Hello,
197
+
198
+ Somebody sent you the following link:
199
+ {short_url}
200
+
201
+ With the message:
202
+ {message}
203
+
204
+ Sincerely yours
205
+ The GeoMapFish team
206
+
207
+ smtp:
208
+ # Used to send email from various feature
209
+ host: smtp.example.com
210
+ ssl: True
211
+ user: <username>
212
+ password: <password>
213
+ starttls: False
214
+
215
+ reset_password:
216
+ # Used to send a reset password email
217
+ email_from: info@camptocamp.com
218
+ email_subject: New password generated for GeoMapFish
219
+ # Email template, can contain:
220
+ # - {user}
221
+ # - {password}
222
+ # - {application_url}
223
+ # - {current_url}
224
+ email_body: |
225
+ Hello {user},
226
+
227
+ You have asked for a new password,
228
+ the newly generated password is: {password}
229
+
230
+ Sincerely yours
231
+ The GeoMapFish team
232
+
233
+ welcome_email:
234
+ # Used to send a welcome email for new user
235
+ email_from: info@camptocamp.com
236
+ email_subject: Welcome to GeoMapFish
237
+ # Email template, can contain:
238
+ # - {user}
239
+ # - {password}
240
+ # - {application_url}
241
+ # - {current_url}
242
+ email_body: |
243
+ Hello {user},
244
+
245
+ You have a new account on GeoMapFish: {application_url}
246
+ Your user name is: {user}
247
+ Your password is: {password}
248
+
249
+ Sincerely yours
250
+ The GeoMapFish team
251
+
252
+ # Checker configuration
253
+ checker:
254
+ fulltextsearch:
255
+ search: text to search
256
+ # print:
257
+ # spec:
258
+ # layout: "1 A4 portrait"
259
+ # outputFormat: "pdf"
260
+ # attributes:
261
+ # title: ""
262
+ # comments: ""
263
+ # datasource: []
264
+ # map:
265
+ # projection: "EPSG:{srid}"
266
+ # dpi: 254
267
+ # rotation: 0
268
+ # center: [2600000, 1200000]
269
+ # scale: 100000
270
+ # longitudeFirst: True
271
+ # layers: []
272
+ # legend: {}
273
+ phantomjs:
274
+ disable: [apihelp]
275
+
276
+ check_collector:
277
+ hosts: []
278
+ # - display: Child:
279
+ # url: {web_protocol}://{host}/child/wsgi
280
+
281
+ # The dogpile.cache configuration.
282
+ cache:
283
+ std:
284
+ # Standalone version
285
+ backend: c2cgeoportal.hybrid
286
+ arguments:
287
+ host: '{REDIS_HOST}'
288
+ port: '{REDIS_PORT}'
289
+ db: '{REDIS_DB}'
290
+ # Kubernetes version
291
+ # arguments:
292
+ # sentinels:
293
+ # - - '{REDIS_HOST}'
294
+ # - '{REDIS_PORT}'
295
+ # connection_kwargs:
296
+ # db: '{REDIS_DB}'
297
+
298
+ # This parameter set the list of hosts allowed to use the iframe api.
299
+ # 'self' will block all external usage, you must add additional hosts separated by space.
300
+ # see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors
301
+ content_security_policy_iframe_api_frame_ancestors: "'self'"
302
+
303
+ # Control the HTTP headers
304
+ headers:
305
+ dynamic: &header {}
306
+ index: *header
307
+ api: *header
308
+ apihelp: *header
309
+ profile: *header
310
+ raster: *header
311
+ vector_tiles: *header
312
+ error: *header
313
+ themes: &auth_header {}
314
+ config: *auth_header
315
+ print: *auth_header
316
+ fulltextsearch: *auth_header
317
+ mapserver: *auth_header
318
+ tinyows: *auth_header
319
+ layers: *auth_header
320
+ shortener: *auth_header
321
+ login: {}
322
+
323
+ update_paths:
324
+ - admin_interface.available_functionalities
325
+ - admin_interface.available_metadata
326
+ - admin_interface.functionalities
327
+ - admin_interface.available_in_templates
328
+ - api
329
+ - authorized_referers
330
+ - cache.std.arguments
331
+ - cache.obj
332
+ - check_collector.disabled
333
+ - check_collector.hosts
334
+ - checker.fulltextsearch
335
+ - checker.lang
336
+ - checker.phantomjs
337
+ - checker.print
338
+ - checker.routes
339
+ - checker.themes
340
+ - content_security_policy.main
341
+ - content_security_policy.admin
342
+ - content_security_policy.apihelp
343
+ - fulltextsearch
344
+ - functionalities.available_in_templates
345
+ - global_headers
346
+ - headers.dynamic.headers
347
+ - headers.index.headers
348
+ - headers.api.headers
349
+ - headers.apihelp.headers
350
+ - headers.profile.headers
351
+ - headers.raster.headers
352
+ - headers.vector_tiles.headers
353
+ - headers.error.headers
354
+ - headers.themes.headers
355
+ - headers.config.headers
356
+ - headers.print.headers
357
+ - headers.fulltextsearch.headers
358
+ - headers.mapserver.headers
359
+ - headers.tinyows.headers
360
+ - headers.layers.headers
361
+ - headers.shortener.headers
362
+ - headers.login.headers
363
+ - interfaces_config.default.constants.ngeoWfsPermalinkOptions
364
+ - interfaces_config.default.constants.gmfOptions.view
365
+ - interfaces_config.default.constants.gmfSearchOptions
366
+ - interfaces_config.default.constants.gmfPermalinkOptions
367
+ - interfaces_config.default.constants.gmfVectorTilesOptions
368
+ - interfaces_config.default.dynamic_constants
369
+ - interfaces_config.default.static
370
+ - interfaces_config.default.routes.fulltextsearchUrl
371
+ - interfaces_config.desktop.constants
372
+ - interfaces_config.desktop.routes
373
+ - interfaces_config.mobile.constants.gmfMobileMeasurePointOptions
374
+ - interfaces_config.iframe_api.constants
375
+ - interfaces_config.api.constants
376
+ - interfaces_config.api.routes.searchUrl
377
+ - interfaces_theme
378
+ - resourceproxy
379
+ - servers
380
+ - shortener.allowed_hosts
381
+ - smtp
382
+ - sqlalchemy
383
+ - sqlalchemy_slave
384
+ - tinyowsproxy
385
+ - authentication
386
+
387
+ no_interpreted:
388
+ - reset_password.email_body
389
+ - shortener.email_body
390
+ - welcome_email.email_body
391
+
392
+ # Only for Standalone version (should be commented for Kubernetes version)
393
+ runtime_postprocess:
394
+ - expression: int({})
395
+ vars:
396
+ - cache.std.arguments.port