diff --git a/src/plugins/themes/controllers/themes_controller.py b/src/plugins/themes/controllers/themes_controller.py index 1f4b0d5..784c7a4 100644 --- a/src/plugins/themes/controllers/themes_controller.py +++ b/src/plugins/themes/controllers/themes_controller.py @@ -506,6 +506,62 @@ def create_form(self, theme=None): form.skipEmptyFeatureAttributes.data = theme["skipEmptyFeatureAttributes"] if "collapseLayerGroupsBelowLevel" in theme: form.collapseLayerGroupsBelowLevel.data = theme["collapseLayerGroupsBelowLevel"] + if "watermark" in theme: + if "text" in theme["watermark"]: + form.watermarkText.data = theme["watermark"]["text"] + if "texpadding" in theme: + form.watermarkTexpadding.data = theme["watermark"]["texpadding"] + if "fontsize" in theme: + form.watermarkFontsize.data = theme["watermark"]["fontsize"] + if "fontfamily" in theme: + form.watermarkFontfamily.data = theme["watermark"]["fontfamily"] + if "fontcolor" in theme: + form.watermarkFontcolor.data = theme["watermark"]["fontcolor"] + if "backgroundcolor" in theme: + form.watermarkBackgroundcolor.data = theme["watermark"]["backgroundcolor"] + if "framecolor" in theme: + form.watermarkFramecolor.data = theme["watermark"]["framecolor"] + if "framewidth" in theme: + form.watermarkFramewidth.data = theme["watermark"]["framewidth"] + if "themeInfoLinks" in theme: + if "entries" in theme["themeInfoLinks"]: + form.themeInfoLinksEntries.data = ", ".join(map(str, theme[ + "themeInfoLinks"]["entries"])) + if "title" in theme: + form.themeInfoLinksTitle.data = theme["themeInfoLinks"]["title"] + if "titleMsgId" in theme: + form.themeInfoLinksTitleMsgId.data = theme["themeInfoLinks"]["titleMsgId"] + if "snapping" in theme: + if "featureCount" in theme["snapping"]: + form.snappingFeatureCount.data = theme["snapping"]["featureCount"] + if "wfsMaxScale" in theme["snapping"]: + form.snappingWfsMaxScale.data = theme["snapping"]["wfsMaxScale"] + if "snaplayers" in theme["snapping"]: + for layer in theme["snapping"]["snaplayers"]: + data = { + "layerName": "", + "min": "", + "max": "" + } + + if "name" in layer: + data["layerName"] = layer["name"] + + if "min" in layer: + data["min"] = layer["min"] + + if "max" in layer: + data["max"] = layer["max"] + + form.snappingSnapLayers.append_entry(data) + + if "featureReport" in theme: + for k,v in theme["featureReport"].items(): + data = {} + data["layerId"] = k + data["templateCfg"] = v + + form.featureReports.append_entry(data) if "backgroundLayers" in theme: for i, layer in enumerate(theme["backgroundLayers"]): @@ -615,7 +671,7 @@ def create_or_update_theme(self, theme, form, tid=None, gid=None): if form.mapCrs.data: item["mapCrs"] = form.mapCrs.data else: - if item in "mapCrs": del item["mapCrs"] + if "mapCrs" in item: del item["mapCrs"] if form.extent.data: item["extent"] = list(map( @@ -738,6 +794,86 @@ def create_or_update_theme(self, theme, form, tid=None, gid=None): else: if "collapseLayerGroupsBelowLevel" in item: del item["collapseLayerGroupsBelowLevel"] + item["watermark"]={} + if form.watermarkText.data: + item["watermark"]["text"] = form.watermarkText.data + else: + if "text" in item["watermark"]: del item["watermark"]["text"] + + if form.watermarkTexpadding.data: + item["watermark"]["texpadding"] = form.watermarkTexpadding.data + else: + if "texpadding" in item["watermark"]: del item["watermark"]["texpadding"] + + if form.watermarkFontsize.data: + item["watermark"]["fontsize"] = form.watermarkFontsize.data + else: + if "fontsize" in item["watermark"]: del item["watermark"]["fontsize"] + + if form.watermarkFontfamily.data: + item["watermark"]["fontfamily"] = form.watermarkFontfamily.data + else: + if "fontfamily" in item["watermark"]: del item["watermark"]["fontfamily"] + + if form.watermarkFontcolor.data: + item["watermark"]["fontcolor"] = form.watermarkFontcolor.data + else: + if "fontcolor" in item["watermark"]: del item["watermark"]["fontcolor"] + + if form.watermarkBackgroundcolor.data: + item["watermark"]["backgroundcolor"] = form.watermarkBackgroundcolor.data + else: + if "backgroundcolor" in item["watermark"]: del item["watermark"]["backgroundcolor"] + + if form.watermarkFramecolor.data: + item["watermark"]["framecolor"] = form.watermarkFramecolor.data + else: + if "framecolor" in item["watermark"]: del item["watermark"]["framecolor"] + + if form.watermarkFramewidth.data: + item["watermark"]["framewidth"] = form.watermarkFramewidth.data + else: + if "framewidth" in item["watermark"]: del item["watermark"]["framewidth"] + + + item["themeInfoLinks"] = {} + if form.themeInfoLinksEntries.data: + item["themeInfoLinks"]["entries"] = list(map( + str, form.themeInfoLinksEntries.data.replace(" ", "").split(","))) + else: + if "entries" in item["themeInfoLinks"]: del item["themeInfoLinks"]["entries"] + if form.themeInfoLinksTitle.data: + item["themeInfoLinks"]["title"] = form.themeInfoLinksTitle.data + else: + if "title" in item["themeInfoLinks"]: del item["themeInfoLinks"]["title"] + if form.themeInfoLinksTitleMsgId.data: + item["themeInfoLinks"]["titleMsgId"] = form.themeInfoLinksTitleMsgId.data + else: + if "titleMsgId" in item["themeInfoLinks"]: del item["themeInfoLinks"]["titleMsgId"] + + item["snapping"] = {} + if form.snappingFeatureCount.data: + item["snapping"]["featureCount"] = form.snappingFeatureCount.data + else: + if "featureCount" in item["snapping"]: del item["snapping"]["featureCount"] + if form.snappingWfsMaxScale.data: + item["snapping"]["wfsMaxScale"] = form.snappingWfsMaxScale.data + else: + if "wfsMaxScale" in item["snapping"]: del item["snapping"]["wfsMaxScale"] + item["snapping"]["snaplayers"] = [] + if form.snappingSnapLayers.data: + for layer in form.snappingSnapLayers.data: + item["snapping"]["snaplayers"].append({ + "name": layer["layerName"], + "min": layer["min"], + "max": layer["max"] + }) + + item["featureReport"] = {} + if form.featureReports.data: + for featureReport in form.featureReports.data: + item["featureReport"][featureReport["layerId"]] = featureReport["templateCfg"] + item["backgroundLayers"] = [] if form.backgroundLayers.data: for layer in form.backgroundLayers.data: diff --git a/src/plugins/themes/forms/theme_form.py b/src/plugins/themes/forms/theme_form.py index cb9d1e2..2ab0f95 100644 --- a/src/plugins/themes/forms/theme_form.py +++ b/src/plugins/themes/forms/theme_form.py @@ -25,7 +25,6 @@ class BackgroundLayerForm(FlaskForm): layerName = SelectField(coerce=str, validators=[DataRequired()]) printLayer = StringField(validators=[Optional()]) visibility = BooleanField(validators=[Optional()]) - class QgisSearchForm(FlaskForm): """Subform for Qgis searches""" @@ -41,7 +40,17 @@ class QgisSearchForm(FlaskForm): group = StringField(validators=[Optional()]) expression = JSONField(validators=[Optional()]) fields = JSONField(validators=[Optional()]) +class SnapLayerForm(FlaskForm): + "Subform for snaplayers" + + layerName = StringField(validators=[DataRequired()]) + min = IntegerField(validators=[Optional()]) + max = IntegerField(validators=[Optional()]) +class FeatureReportForm(FlaskForm): + "Subform to associate layer to featureReport" + layerId = StringField(validators=[DataRequired()]) + templateCfg = StringField(validators=[DataRequired()]) class ThemeForm(FlaskForm): """Main form for Theme GUI""" @@ -104,6 +113,9 @@ class ThemeForm(FlaskForm): default=("coordinates") ) qgisSearchProvider = FieldList(FormField(QgisSearchForm)) + + + minSearchScaleDenom = IntegerField( i18n('plugins.themes.theme.form_minSearchScaleDenom'), description=i18n('plugins.themes.theme.form_minSearchScaleDenom_description'), @@ -234,4 +246,78 @@ class ThemeForm(FlaskForm): backgroundLayers = FieldList(FormField(BackgroundLayerForm)) + # Watermark + watermarkText = StringField( + i18n('plugins.themes.theme.form_watermarkText'), + description=(i18n('plugins.themes.theme.form_watermarkText_description')), + validators=[Optional()] + ) + watermarkTexpadding = IntegerField( + i18n('plugins.themes.theme.form_watermarkTexpadding'), + description=(i18n('plugins.themes.theme.form_watermarkTexpadding_description')), + validators=[Optional()] + ) + watermarkFontsize = IntegerField( + i18n('plugins.themes.theme.form_watermarkFontsize'), + validators=[Optional()] + ) + watermarkFontfamily = StringField( + i18n('plugins.themes.theme.form_watermarkFontfamily'), + validators=[Optional()] + ) + watermarkFontcolor = StringField( + i18n('plugins.themes.theme.form_watermarkFontcolor'), + validators=[Optional(), Regexp(r'^#[0-9A-Fa-f]{6}$', + message=i18n('plugins.themes.theme.form_watermark_color_message'))] + ) + watermarkBackgroundcolor = StringField( + i18n('plugins.themes.theme.form_watermarkBackgroundcolor'), + validators=[Optional(), Regexp(r'^#[0-9A-Fa-f]{6}$', + message=i18n('plugins.themes.theme.form_watermark_color_message'))] + ) + watermarkFramecolor = StringField( + i18n('plugins.themes.theme.form_watermarkFramecolor'), + validators=[Optional(), Regexp(r'^#[0-9A-Fa-f]{6}$', + message=i18n('plugins.themes.theme.form_watermark_color_message'))] + ) + watermarkFramewidth = IntegerField( + i18n('plugins.themes.theme.form_watermarkFramewidth'), + validators=[Optional()] + ) + + # ThemeInfoLinks + themeInfoLinksEntries = StringField( + i18n('plugins.themes.theme.form_themeInfoLinksEntries'), + description=i18n('plugins.themes.theme.form_themeInfoLinksEntries_description'), + default=(""), + validators=[Optional(), Regexp(r'^(\w+)(,\s*\w+)*$', + message=i18n('plugins.themes.theme.form_themeInfoLinksEntries_message'))] + ) + themeInfoLinksTitle = StringField( + i18n('plugins.themes.theme.form_themeInfoLinksTitle'), + description=(i18n('plugins.themes.theme.form_themeInfoLinksTitle_description')), + validators=[Optional()] + ) + themeInfoLinksTitleMsgId = StringField( + i18n('plugins.themes.theme.form_themeInfoLinksTitleMsgId'), + description=(i18n('plugins.themes.theme.form_themeInfoLinksTitleMsgId_description')), + validators=[Optional()] + ) + + # Snapping + snappingFeatureCount = IntegerField( + i18n('plugins.themes.theme.form_snappingFeatureCount'), + description=(i18n('plugins.themes.theme.form_snappingFeatureCount_description')), + validators=[Optional()] + ) + snappingWfsMaxScale = IntegerField( + i18n('plugins.themes.theme.form_snappingWfsMaxScale'), + description=(i18n('plugins.themes.theme.form_snappingWfsMaxScale_description')), + validators=[Optional()] + ) + snappingSnapLayers = FieldList(FormField(SnapLayerForm)) + + # FeatureReport + featureReports = FieldList(FormField(FeatureReportForm)) + submit = SubmitField(i18n('plugins.themes.common.form_submit')) diff --git a/src/plugins/themes/templates/theme.html b/src/plugins/themes/templates/theme.html index 2c9ffd6..369edd8 100644 --- a/src/plugins/themes/templates/theme.html +++ b/src/plugins/themes/templates/theme.html @@ -37,7 +37,7 @@ } $(function() { - $('.search-col').on('click','button.accordion', function(){ + $('.search-col').on('click','button.accordion-qgis', function(){ $(this).toggleClass("active"); var panel = $(this).next(); if (panel.css('max-height') !== '0px') { @@ -76,6 +76,47 @@ $('#bl-table > tbody:last-child').append(html); }); + $('table').on('click', 'button.add-item-snapping', function() { + // add row to table snapping + rowIndex++; + var html = ''; + html += ''; + html += ''; + html += ''; + html += ' '; + html += ''; + html += ''; + html += ' '; + html += ''; + html += '
'; + html += ` `; + html += ` `; + html += '
'; + html += ''; + html += ` `; + html += ''; + $('#sl-table > tbody:last-child').append(html); + }); + + $('table').on('click', 'button.add-item-featurereport', function() { + // add row to table feature Report + rowIndex++; + var html = ''; + html += ''; + html += ''; + html += ''; + html += ' '; + html += ''; + html += '
'; + html += ` `; + html += ` `; + html += '
'; + html += ''; + html += ` `; + html += ''; + $('#rl-table > tbody:last-child').append(html); + }); + $(document).on("click", "button.move-up, button.move-down", function() { // move row in table var row = $(this).closest('tr'); @@ -107,7 +148,7 @@ newSearchIndex++; html =`
- @@ -162,35 +203,29 @@ createEditor(this, editorOptions); }); - $('.advanced-col').on('click','button.accordion', function(){ - $(this).toggleClass("active"); - var panel = $(this).next(); - if (panel.css('max-height') !== '0px') { - panel.css('max-height', '0px'); - } - else { - panel.css('max-height', panel.prop('scrollHeight') + 'px'); - } - }) + {% endblock %} {% block styles %} {% endblock %} @@ -236,59 +320,245 @@

{{ title }}

{{ i18n('plugins.themes.theme.options_advancedparams') }}

-
- -
- {{ wtf.render_field(form.description, form_type="horizontal") }} - {{ wtf.render_field(form.attribution, form_type="horizontal") }} - {{ wtf.render_field(form.attributionUrl, form_type="horizontal") }} - {{ wtf.render_field(form.extent, form_type="horizontal") }} - {{ wtf.render_field(form.scales, form_type="horizontal") }} - {{ wtf.render_field(form.format, form_type="horizontal") }} - {{ wtf.render_field(form.tileSize, form_type="horizontal") }} - {{ wtf.render_field(form.tiled, form_type="horizontal", horizontal_columns=('sm', 0, 7)) }} - {{ wtf.render_field(form.disabled, form_type="horizontal", horizontal_columns=('sm', 0, 7)) }} +
+
+

+ +

+
+
+ {{ wtf.render_field(form.description, form_type="horizontal") }} + {{ wtf.render_field(form.attribution, form_type="horizontal") }} + {{ wtf.render_field(form.attributionUrl, form_type="horizontal") }} + {{ wtf.render_field(form.extent, form_type="horizontal") }} + {{ wtf.render_field(form.scales, form_type="horizontal") }} + {{ wtf.render_field(form.format, form_type="horizontal") }} + {{ wtf.render_field(form.tileSize, form_type="horizontal") }} + {{ wtf.render_field(form.tiled, form_type="horizontal", horizontal_columns=('sm', 0, 7)) }} + {{ wtf.render_field(form.disabled, form_type="horizontal", horizontal_columns=('sm', 0, 7)) }} +
+
- -
- {{ wtf.render_field(form.printScales, form_type="horizontal") }} - {{ wtf.render_field(form.printResolutions, form_type="horizontal") }} - {{ wtf.render_field(form.defaultPrintLayout, form_type="horizontal") }} - {{ wtf.render_field(form.printLabelBlacklist, form_type="horizontal") }} - {{ wtf.render_field(form.extraPrintLayers, form_type="horizontal") }} - {{ wtf.render_field(form.printLabelForAttribution, form_type="horizontal") }} - {{ wtf.render_field(form.extraPrintParameters, form_type="horizontal", placeholder = "ex : TRANSPARENT=true, BGCOLOR=green") }} - {{ wtf.render_field(form.extraDxfParameters, form_type="horizontal", placeholder = "ex : MODE=NOSYMBOLOGY, USE_TITLE_AS_LAYERNAME=true") }} +
+

+ +

+
+
+ {{ wtf.render_field(form.printScales, form_type="horizontal") }} + {{ wtf.render_field(form.printResolutions, form_type="horizontal") }} + {{ wtf.render_field(form.defaultPrintLayout, form_type="horizontal") }} + {{ wtf.render_field(form.printLabelBlacklist, form_type="horizontal") }} + {{ wtf.render_field(form.extraPrintLayers, form_type="horizontal") }} + {{ wtf.render_field(form.printLabelForAttribution, form_type="horizontal") }} + {{ wtf.render_field(form.extraPrintParameters, form_type="horizontal", placeholder = "ex : TRANSPARENT=true, BGCOLOR=green") }} + {{ wtf.render_field(form.extraDxfParameters, form_type="horizontal", placeholder = "ex : MODE=NOSYMBOLOGY, USE_TITLE_AS_LAYERNAME=true") }} + +
+

+ +

+
+
+
+ {{ i18n('plugins.themes.theme.form_watermark_description') }} +
+ {{ wtf.render_field(form.watermarkText, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkTexpadding, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkFontsize, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkFontfamily, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkFontcolor, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkBackgroundcolor, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkFramecolor, form_type="horizontal") }} + {{ wtf.render_field(form.watermarkFramewidth, form_type="horizontal") }} +
+
+
+ +
+
- -
- {{ wtf.render_field(form.minSearchScaleDenom, form_type="horizontal") }} - {{ wtf.render_field(form.printLabelForSearchResult, form_type="horizontal") }} -
+
+

+ +

+
+
+ {{ wtf.render_field(form.minSearchScaleDenom, form_type="horizontal") }} + {{ wtf.render_field(form.printLabelForSearchResult, form_type="horizontal") }} +
+
+
- -
- {{ wtf.render_field(form.collapseLayerGroupsBelowLevel, form_type="horizontal") }} - {{ wtf.render_field(form.layerTreeHiddenSublayers, form_type="horizontal") }} - {{ wtf.render_field(form.extraLegendParameters, form_type="horizontal", placeholder = "ex : LAYERFONTSIZE=10, LAYERFONTBOLD=false") }} - {{ wtf.render_field(form.flags, form_type="horizontal") }} + +
+

+ +

+
+
+ {{ wtf.render_field(form.collapseLayerGroupsBelowLevel, form_type="horizontal") }} + {{ wtf.render_field(form.layerTreeHiddenSublayers, form_type="horizontal") }} + {{ wtf.render_field(form.extraLegendParameters, form_type="horizontal", placeholder = "ex : LAYERFONTSIZE=10, LAYERFONTBOLD=false") }} + {{ wtf.render_field(form.flags, form_type="horizontal") }} + +
+ + +
+ +
+

+ +

+
+
+
+ {{ i18n('plugins.themes.theme.form_themeSnapping_description') }} +
+ + +
+
+ + + + + + + + + + + + {% for snapLayer in form.snappingSnapLayers %} + + + + + + + + {% endfor %} + +
{{ i18n('plugins.themes.theme.snappingLayerName') }}{{ i18n('plugins.themes.theme.snappingLayerMin') }}{{ i18n('plugins.themes.theme.snappingLayerMax') }} + +
{{ snapLayer.layerName(class_='form-control') }}{{ snapLayer.min(class_='form-control') }}{{ snapLayer.max(class_='form-control') }} +
+ + +
+
+ +
+
+
+ + + {{ wtf.render_field(form.snappingFeatureCount, form_type="horizontal") }} + {{ wtf.render_field(form.snappingWfsMaxScale, form_type="horizontal") }} +
+
+
+ +
+

+ +

+
+
+
+ {{ i18n('plugins.themes.theme.form_themeFeatureReport_description') }} +
+ + +
+
+ + + + + + + + + + + {% for featureReport in form.featureReports %} + + + + + + + {% endfor %} + +
{{ i18n('plugins.themes.theme.featureReportLayerId') }}{{ i18n('plugins.themes.theme.featureReportTemplateCfg') }} + +
{{ featureReport.layerId(class_='form-control') }}{{ featureReport.templateCfg(class_='form-control') }} +
+ + +
+
+ +
+
+
+
+
+
+ +
+
+
-
@@ -300,7 +570,7 @@

QGIS searches


{% for provider in form.qgisSearchProvider %}
- diff --git a/src/translations/ca.json b/src/translations/ca.json index 764a17c..98032b4 100644 --- a/src/translations/ca.json +++ b/src/translations/ca.json @@ -1,417 +1,452 @@ -{ - "locale": "ca", - "interface": { - "common": { - "add": "Afegeix", - "all": "Tots", - "assigned_groups": "Grups assignats", - "assigned_roles": "Rols assignats", - "assigned_users": "Usuaris assignats", - "confirm_message_remove": "Vols eliminar el recurs?", - "delete": "Elimina", - "description": "Descripció", - "edit": "Edita", - "form_cancel": "Cancel·la", - "form_name_error": "El nom ja està en ús.", - "form_priority": "Prioritat", - "form_priority_message": "La prioritat ha de ser igual o superior a 0", - "form_submit": "Desa", - "group": "Grup", - "group_members": "Membres del grup", - "groups": "Grups", - "id": "ID", - "import_resources": "Importa recursos", - "message_required": "Aquest camp és obligatori.", - "name": "Nom", - "new": "Nou", - "new_permission": "Nova permís", - "ph_search": "Cerca", - "registrable_group": "Grup registrable", - "remove": "Elimina", - "resource": "Recurs", - "role": "Rol", - "roles": "Rols", - "title": "Títol", - "type": "Tipus", - "url": "URL", - "user": "Usuari", - "users": "Usuaris", - "permission": "Permís" - }, - "groups": { - "confirm_message_delete": "Vols eliminar el grup?", - "new_group": "Nou grup", - "title": "Grups" - }, - "main": { - "access_denied": "Accés denegat", - "access_denied_detail": "L'usuari no té permís per accedir al backend d'administració.", - "delete_resource_message_success": "{} ha estat eliminat.", - "force_readonly_datasets": "Fes tots els conjunts d'edició només de lectura", - "force_readonly_datasets_help": "Suprimeix qualsevol permís d'escriptura en generar permisos de conjunt de dades. Útil per posar ràpidament tots els conjunts de dades en només lectura.", - "generate_configs": "Genera la configuració del servei", - "home_title": "Inici", - "login": "Inicia sessió com a administrador", - "logout": "Tanca sessió", - "new_resource_message_error": "No s'ha pogut crear {}.", - "new_resource_message_success": "{} ha estat creat.", - "next": "Següent", - "page_navigation": "Navegació de pàgina", - "per_page": "per pàgina", - "previous": "Anterior", - "qgis_server_log_lines": "Nombre de línies", - "read_qgis_server_logs": "Llegeix els registres del servidor QGIS", - "registration_title": "Registre", - "subtitle": "Eina d'administració per als serveis QWC", - "timeout_error": "La generació de la configuració ha trigat massa. Possibles causes:\n- Hi ha un problema de connectivitat de xarxa\n- La recuperació de les capacitats ha trigat massa (massa temes / massa capes / capes remotes lentes)\n- El 'proxy_read_timeout' del qwc-api-gateway és massa baix", - "title": "QWC Admin", - "update_resource_message_error": "No s'ha pogut actualitzar {}.", - "update_resource_message_success": "{} ha estat actualitzat.", - "use_cached_project_metadata": "Utilitza les metadades del projecte en memòria cau si estan disponibles", - "use_cached_project_metadata_help": "Utilitza les capacitats WMS/WMTS en memòria cau per a temes i capes externes, si estan disponibles, i omet la regeneració de les miniatures dels temes. Útil per regenerar ràpidament la configuració si només s'han fet canvis de permisos o configuració de serveis però no s'han fet canvis als fitxers de projecte." - }, - "permissions": { - "confirm_message_delete": "Vols eliminar el permís?", - "ph_select_resource": "Selecciona un recurs", - "priority": "Prioritat", - "resource_type": "Tipus de recurs", - "role_filter": "Filtre de rol", - "title": "Permisos", - "type_filter": "Filtre de tipus", - "write": "Escriptura" - }, - "registrable_groups": { - "confirm_message_delete": "Vols eliminar el grup registrable?", - "new_registrable_group": "Nou grup registrable", - "title": "Grups registrables" - }, - "registration_requests": { - "accept": "Accepta", - "add_to_group": "Afegeix al grup", - "confirm_message_delete": "Vols eliminar la sol·licitud de registre?", - "created_at": "Creat el", - "email": "Correu electrònic", - "form_action": "Acció", - "form_submit": "Actualitza membres del grup", - "group": "Grup registrable sol·licitat", - "registration_requests": "Sol·licituds de registre", - "reject": "Rebutja", - "reject_request": "Rebutja la sol·licitud", - "remove_from_group": "Elimina del grup", - "send_message_error": "No s'ha pogut enviar la notificació a l'usuari:", - "send_message_success": "L'usuari ha estat notificat de les actualitzacions de la sol·licitud de registre.", - "skip": "Omet", - "title": "Sol·licituds de registre pendents" - }, - "resources": { - "add_layers_map_message_error": "No s'han trobat capes per a aquest mapa.", - "add_layers_message_success": "S'han afegit capes noves.", - "add_maps_message_error": "No s'han trobat mapes addicionals.", - "add_maps_message_success": "S'han afegit mapes nous.", - "add_permissions_message_error": "No s'han trobat permisos addicionals.", - "add_permissions_message_success": "S'han afegit permisos nous.", - "add_resource_message_error": "No s'ha pogut afegir el recurs {}", - "add_resources_message_error": "No s'han trobat recursos addicionals.", - "add_resources_message_success": "S'han afegit recursos nous.", - "check_unused": "Comprova els no utilitzats", - "confirm_message_delete": "Vols eliminar el recurs?", - "confirm_message_remove_cascaded": "Vols eliminar el recurs i els seus fills?", - "confirm_message_remove_selected": "Vols eliminar els recursos seleccionats ${}?", - "form_import_type": "Tipus de recursos a importar del mapa", - "form_role": "Permisos de rol dels recursos a importar del mapa", - "form_write": "Escriptura", - "hierarchy_title": "Jerarquia de recursos", - "import_children_message_error": "La importació d'arxius fills no està suportada per aquest tipus de recurs.", - "import_layer_message_error": "No s'ha pogut importar la capa {}", - "import_layers": "Importa capes", - "import_layers_message_error": "No s'han pogut importar capes:", - "import_maps": "Importa mapes", - "import_maps_message_error": "No s'han pogut importar mapes:", - "import_resources": "Importa recursos", - "import_resources_message_error": "No s'han pogut importar recursos:", - "import_resources_title": "Importa", - "message_import_layers": "Important capes...", - "message_import_maps": "Important mapes...", - "message_not_referenced": "El recurs no s'ha trobat en cap configuració de servei", - "new_resource": "Nou recurs", - "parent": "Pare", - "parent_resource": "Recurs pare", - "permissions": "Permisos", - "remove_cascaded": "Elimina en cascada", - "remove_selected": "Elimina seleccionats", - "resource": "recurs", - "resource_hierarchy_title": "Jerarquia de recursos", - "resource_permissions": "Permisos de recursos", - "title": "Recursos", - "type_filter": "Filtre de tipus" - }, - "roles": { - "confirm_message_delete": "Vols eliminar el rol?", - "new_role": "Nou rol", - "title": "Rols" - }, - "users": { - "authentication": "Autenticació", - "confirm_message_delete": "Vols eliminar l'usuari?", - "confirm_sendmail": "La contrasenya es restablirà i s'enviarà un correu d'invitació a {}, vols continuar?", - "force_password_change": "Força el canvi de contrasenya a la propera connexió", - "form_email": "Correu electrònic", - "form_email_error": "Si us plau, utilitza una adreça de correu electrònic diferent.", - "form_failed_login": "Intents d'inici de sessió fallits", - "form_failed_login_message": "El nombre ha de ser igual o superior a 0", - "form_last_sign_in": "Última connexió", - "form_name": "Nom d'usuari", - "form_password": "Contrasenya", - "form_password_repeat": "Repeteix la contrasenya", - "form_totp": "Secret TOTP", - "groups_roles": "Grups i rols", - "mail_subject": "El teu accés a {}", - "new_user": "Nou usuari", - "no_mail_config": "No s'ha configurat el correu electrònic d'enviament, no es pot enviar el correu d'invitació.", - "no_user_email": "No s'ha desat correu electrònic per a l'usuari, no es pot enviar el correu electrònic.", - "save_and_send": "Desa i envia invitació", - "send_mail_failure": "No s'ha pogut enviar el correu d'invitació.", - "send_mail_success": "Correu d'invitació enviat correctament.", - "sendmail": "Envia invitació", - "set_random_password_send_invite": "Estableix contrasenya aleatòria i envia invitació per correu", - "title": "Usuaris", - "user_info": "Informació de l'usuari" - } - }, - "plugins": { - "config_editor": { - "edit_message_error": "No s'ha pogut llegir", - "json_message_error": "JSON invàlid", - "save_message_error": "No s'ha pogut desar", - "subtitle": "Edita les configuracions d'entrada", - "title": "Editor de Configuracions", - "update_message_success": "ha estat actualitzat" - }, - "themes": { - "backgroundlayers": { - "action_created": "creat", - "action_updated": "actualitzat", - "create_message_error": "No s'ha pogut crear la capa d'enfosc", - "create_title": "Afegeix la capa d'enfosc", - "delete_message_error": "No s'ha pogut eliminar la capa d'enfosc.", - "delete_message_success": "La capa d'enfosc s'ha eliminat.", - "edit_layer": "Edita la capa", - "edit_title": "Edita la capa d'enfosc", - "new_wms_layer": "Nova capa WMS", - "new_wmts_layer": "Nova capa WMTS", - "new_xyz_layer": "Nova capa XYZ", - "save_action_message_error": "No s'ha pogut desar la capa d'enfosc", - "save_action_message_success": "La capa d'enfosc", - "title": "Capes d'enfosc", - "update_message_error": "No s'ha pogut actualitzar la capa d'enfosc" - }, - "common": { - "confirm_message_delete_layer": "Realment vols eliminar la capa {}?", - "connect": "Connecta", - "crs": "CRS", - "delete_layer": "Elimina la capa", - "form_attribution": "Atribució", - "form_submit": "Desa", - "form_thumbnail": "Miniatura", - "format": "Format", - "layer": "Capa", - "title": "Temes" - }, - "files": { - "confirm_message_delete_project": "Realment vols eliminar {}?", - "delete_project": "Elimina el projecte", - "file_delete_message_error": "El fitxer no s'ha pogut eliminar.", - "file_extract_message_success": "i s'ha extret", - "file_save_message_error": "El fitxer no s'ha pogut desar.", - "file_upload_message_error": "El fitxer no s'ha pogut pujar", - "file_upload_message_success": "El fitxer s'ha pujat correctament", - "form_layer_allowed": "Si us plau, només utilitza fitxers geoespacials", - "form_layer_file": "Capa geoespacial", - "form_project_allowed": "Si us plau, només utilitza projectes QGS !", - "form_project_file": "Projecte QGIS", - "form_submit": "Puja", - "form_template_file": "Plantilla HTML", - "geospatial_file": "Fitxers geoespacials", - "project": "Projecte", - "project_delete_message_error": "El projecte no s'ha pogut eliminar.", - "project_save_message_error": "El projecte no s'ha pogut desar.", - "project_upload_message_error": "El projecte no s'ha pogut pujar", - "project_upload_message_success": "El projecte s'ha pujat correctament", - "qgis_projects": "Projectes QGIS", - "template_delete_message_error": "El fitxer no s'ha pogut eliminar.", - "template_delete_title": "Elimina plantilles", - "template_save_message_error": "La plantilla no s'ha pogut desar.", - "template_upload_message_error": "La plantilla no s'ha pogut pujar", - "template_upload_message_success": "La plantilla s'ha pujat correctament", - "template_upload_title": "Puja plantilles", - "title": "Puja fitxers" - }, - "info_templates": { - "confirm_message_delete_template": "Realment vols eliminar {}?", - "create_message_warning": "No s'ha pogut crear la plantilla.", - "create_title": "Afegeix plantilla", - "delete_message_warning": "No s'ha pogut eliminar el recurs per a la plantilla", - "delete_template": "Elimina la plantilla", - "edit_message_warning": "No s'ha pogut actualitzar la plantilla.", - "edit_title": "Edita la plantilla", - "project": "Projecte", - "save_message_error": "No s'ha pogut desar la configuració de la plantilla.", - "save_message_succes": "La configuració de la plantilla s'ha desat.", - "template": "Plantilla", - "title": "Plantilles HTML", - "update_message_resource_warning": "El recurs per a featureInfoLayer ja existeix", - "update_message_template_warning": "Ja existeix una plantilla per a aquesta capa" - }, - "mapthumbs": { - "confirm_message_delete_mapthumb": "Realment vols eliminar {}?", - "delete_mapthumb": "Elimina la miniatura", - "delete_message_error": "La miniatura no s'ha pogut eliminar.", - "form_allowed": "Si us plau, només utilitza jpg o png!", - "form_file": "Imatge", - "save_message_error": "La miniatura no s'ha pogut desar.", - "title": "Miniatures de mapes", - "upload_message_error": "La miniatura no s'ha pogut pujar", - "upload_message_success": "La miniatura s'ha pujat correctament" - }, - "theme": { - "background_layer": "Capa d'enfosc", - "background_layer_message": "(Opcional): La visibilitat inicial d'aquesta capa d'enfosc quan es carregui el tema.", - "form_additionalMouseCrs": "C.R.S. addicionals", - "form_additionalMouseCrs_description": "C.R.S. addicionals per a l'indicació de coordenades del ratolí.", - "form_attributionUrl": "URL d'atribució", - "form_attributionUrl_description": "Enllaç associat a l'atribució.", - "form_attribution_description": "Atribució del tema, es mostra a la cantonada inferior dreta del mapa.", - "form_collapseLayerGroupsBelowLevel": "col·lapsa els grups de capes per sota del nivell", - "form_collapseLayerGroupsBelowLevel_description": "Nivell de l'arbre de capes per sota del qual es col·lapsen els grups. Per defecte, l'arbre està completament expandit.", - "form_crs_description": "La projecció del mapa.", - "form_default": "Per defecte", - "form_defaultPrintLayout": "Plantilla d'impressió per defecte", - "form_defaultPrintLayout_description": "Nom de la plantilla d'impressió a seleccionar per defecte.", - "form_default_description": "Si es vol utilitzar aquest tema com a tema inicial.", - "form_description_description": "Una descripció addicional per mostrar sota el títol del tema.", - "form_disabled": "Desactiva aquest tema", - "form_disabled_description": "Omet aquest tema de la configuració.", - "form_extent": "Extensió", - "form_extent_description": "Suprimeix l'extensió del tema. En mapCrs. [xmin, ymin, xmax, ymax]. ", - "form_extent_message": "Si us plau, introdueix una llista separada per comes de 4 números.", - "form_extraDxfParameters": "Paràmetres DXF addicionals", - "form_extraDxfParameters_description": "Paràmetres de consulta addicionals a afegir a la petició d'exportació DXF.", - "form_extraDxfParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", - "form_extraLegendParameters": "Paràmetres d' llegenda addicionals", - "form_extraLegendParameters_description": "Paràmetres de consulta addicionals a afegir a la petició GetLegendGraphic.", - "form_extraLegendParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", - "form_extraPrintLayers": "Capes d'impressió addicionals", - "form_extraPrintLayers_description": "Llista d'arxius de capes a marcar com a internes d'impressió, és a dir, que s'ometen de l'arbre de capes QWC.", - "form_extraPrintLayers_message": "Si us plau, introdueix una llista separada per comes de noms.", - "form_extraPrintParameters": "Paràmetres d'impressió addicionals", - "form_extraPrintParameters_description": "Paràmetres de consulta addicionals a afegir a la petició GetPrint.", - "form_extraPrintParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", - "form_flags": "Banderes", - "form_flags_description": "Llista de noms de banderes arbitràries. La visibilitat dels elements del menú, els botons de la barra d'eines i els botons del mapa es pot controlar en funció de les banderes que un tema declara.", - "form_flags_message": "Si us plau, introdueix una llista separada per comes de noms.", - "form_format_description": "Format d'imatge sol·licitat pel servei WMS. Per defecte és 'image/png'.", - "form_layerTreeHiddenSublayers": "Sublayers ocultes de LayerTree", - "form_layerTreeHiddenSublayers_description": "Llista de noms de subcapes a ometre a l'arbre de capes (però encara es mostren al mapa).", - "form_layerTreeHiddenSublayers_message": "Si us plau, introdueix una llista separada per comes de noms.", - "form_mapTips": "Activa l'indicació de ratolí per defecte", - "form_mapTips_description": "Activa l'indicació de ratolí del tema per defecte", - "form_minSearchScaleDenom": "Escala mínima per a resultats de cerca", - "form_minSearchScaleDenom_description": "Escala a aplicar quan es fa zoom per a resultats de cerca.", - "form_printLabelBlacklist": "Llista negra d'etiquetes d'impressió", - "form_printLabelBlacklist_description": "Llista d'ids d'etiquetes de compositor a no mostrar a la finestra d'impressió.", - "form_printLabelBlacklist_message": "Si us plau, introdueix una llista separada per comes de noms.", - "form_printLabelForAttribution": "Etiqueta d'impressió per a l'atribució", - "form_printLabelForAttribution_description": "ID d'una etiqueta de disseny d'impressió a la qual s'escriurà el text d'atribució actual (si n'hi ha) quan s'imprimeix.", - "form_printLabelForSearchResult": "Etiqueta d'impressió per a resultats de cerca", - "form_printLabelForSearchResult_description": "ID d'una etiqueta de disseny d'impressió a la qual s'escriurà el text de resultat de cerca actual (si n'hi ha) quan s'imprimeix.", - "form_printResolutions": "Resolucions d'impressió", - "form_printResolutions_description": "Llista de resolucions d'impressió disponibles.", - "form_printResolutions_message": "Si us plau, introdueix una llista separada per comes de números.", - "form_printScales": "Escales d'impressió", - "form_printScales_description": "Llista d'escales d'impressió disponibles.", - "form_printScales_message": "Si us plau, introdueix una llista separada per comes de números.", - "form_scales": "Escales", - "form_scales_description": "Llista d'escales del mapa disponibles.", - "form_scales_message": "Si us plau, introdueix una llista separada per comes de números.", - "form_searchProviders": "Proveïdors de cerca", - "form_searchProviders_description": "Llista de proveïdors de cerca disponibles.", - "form_skipEmptyFeatureAttributes": "Omet els atributs de les característiques buides", - "form_skipEmptyFeatureAttributes_description": "Si s'ometen els atributs buits de les característiques d'informació.", - "form_thumbnail_description": "Nom del fitxer de la miniatura del tema. Per defecte, es genera automàticament via WMS GetMap.", - "form_tileSize": "Mida de la fitxa", - "form_tileSize_description": "Amplada i altura de la fitxa WMS.", - "form_tileSize_message": "Si us plau, introdueix una llista separada per comes de 2 números.", - "form_tiled": "Tilades", - "form_tiled_description": "Tilació de les capes", - "form_title_description": "Títol del tema personalitzat.", - "form_url": "Projecte", - "options_advancedparams": "Paràmetres avançats", - "options_global": "Opcions globals", - "options_interface": "Opcions d'interfície", - "options_print": "Opcions d'impressió", - "options_search": "Opcions de cerca", - "print_layer": "Capa d'impressió", - "print_layer_message": "(Opcional): Nom d'una capa del Projecte QGIS que s'ha d'utilitzar quan s'imprimeix." - }, - "themes": { - "confirm_message_delete_theme": "Realment vols eliminar el tema?", - "copy_url": "Copia l'URL al porta-retalls", - "create_theme_message_error": "No s'ha pogut crear el tema", - "create_theme_message_integrity_error": "El recurs per a aquest mapa ja existeix", - "create_theme_message_success": "Aquest tema s'ha creat", - "create_theme_title": "Crea tema", - "delete_theme": "Elimina el tema", - "delete_theme_message_error": "No s'ha pogut eliminar el recurs per a mapa", - "disabled": "Desactivat", - "edit_theme": "Edita el tema", - "edit_theme_title": "Edita el tema", - "group_confirm_message_delete": "Realment vols eliminar el grup de temes?", - "group_delete": "Elimina el grup de temes", - "group_move_down": "Mou el grup de temes cap avall", - "group_move_up": "Mou el grup de temes cap amunt", - "group_title": "Títol", - "group_title_edit": "Edita el títol", - "move_down": "Mou el tema cap avall", - "move_theme_to_group": "Mou el tema al grup", - "move_up": "Mou el tema cap amunt", - "new_group": "Nou grup de temes", - "new_theme": "Nou tema", - "reload_theme_message": "La configuració del tema s'ha recarregat des del disc.", - "save_theme_message_error": "No s'ha pogut desar la configuració del tema.", - "save_theme_message_success": "La configuració del tema s'ha desat.", - "theme": "Tema", - "theme_groups": "Grups de temes", - "themes": "Temes", - "title": "Configuració del tema", - "update_theme_message_error": "No s'ha pogut actualitzar el tema", - "update_theme_message_success": "Aquest tema s'ha actualitzat", - "update_theme_title": "Actualitza tema" - }, - "wmslayer": { - "add": "Afegeix capa d'enfosc WMS", - "capabilities_url": "URL de capacitats WMS", - "form_tiled": "tilat" - }, - "wmtslayer": { - "add": "Afegeix capa d'enfosc WMTS", - "capabilities_url": "URL de capacitats WMTS", - "form_with_capabilities": "Desa les capacitats? (Només necessari per a QGIS Server WMTS!)", - "style": "Estil", - "tilematrix": "Matriu de tessel·lació" - }, - "xyzlayer": { - "add": "Afegeix capa d'enfosc XYZ" - } - } - }, - "registration_requests": { - "user_notification": { - "footer": "", - "salutation": "Hola %(username)s", - "subject": "Actualitzacions de registre de grup", - "user_added_to_groups": "T'has afegit als següents grups:", - "user_removed_from_groups": "T'has eliminat dels següents grups:", - "user_requests_declined": "Les sol·licituds de registre de membres per als següents grups han estat rebutjades:" - } - } - } \ No newline at end of file +{ + "locale": "ca", + "interface": { + "common": { + "add": "Afegeix", + "all": "Tots", + "assigned_groups": "Grups assignats", + "assigned_roles": "Rols assignats", + "assigned_users": "Usuaris assignats", + "confirm_message_remove": "Vols eliminar el recurs?", + "delete": "Elimina", + "description": "Descripció", + "edit": "Edita", + "form_cancel": "Cancel·la", + "form_name_error": "El nom ja està en ús.", + "form_priority": "Prioritat", + "form_priority_message": "La prioritat ha de ser igual o superior a 0", + "form_submit": "Desa", + "group": "Grup", + "group_members": "Membres del grup", + "groups": "Grups", + "id": "ID", + "import_resources": "Importa recursos", + "message_required": "Aquest camp és obligatori.", + "name": "Nom", + "new": "Nou", + "new_permission": "Nova permís", + "ph_search": "Cerca", + "registrable_group": "Grup registrable", + "remove": "Elimina", + "resource": "Recurs", + "role": "Rol", + "roles": "Rols", + "title": "Títol", + "type": "Tipus", + "url": "URL", + "user": "Usuari", + "users": "Usuaris", + "permission": "Permís" + }, + "groups": { + "confirm_message_delete": "Vols eliminar el grup?", + "new_group": "Nou grup", + "title": "Grups" + }, + "main": { + "access_denied": "Accés denegat", + "access_denied_detail": "L'usuari no té permís per accedir al backend d'administració.", + "delete_resource_message_success": "{} ha estat eliminat.", + "force_readonly_datasets": "Fes tots els conjunts d'edició només de lectura", + "force_readonly_datasets_help": "Suprimeix qualsevol permís d'escriptura en generar permisos de conjunt de dades. Útil per posar ràpidament tots els conjunts de dades en només lectura.", + "generate_configs": "Genera la configuració del servei", + "home_title": "Inici", + "login": "Inicia sessió com a administrador", + "logout": "Tanca sessió", + "new_resource_message_error": "No s'ha pogut crear {}.", + "new_resource_message_success": "{} ha estat creat.", + "next": "Següent", + "page_navigation": "Navegació de pàgina", + "per_page": "per pàgina", + "previous": "Anterior", + "qgis_server_log_lines": "Nombre de línies", + "read_qgis_server_logs": "Llegeix els registres del servidor QGIS", + "registration_title": "Registre", + "subtitle": "Eina d'administració per als serveis QWC", + "timeout_error": "La generació de la configuració ha trigat massa. Possibles causes:\n- Hi ha un problema de connectivitat de xarxa\n- La recuperació de les capacitats ha trigat massa (massa temes / massa capes / capes remotes lentes)\n- El 'proxy_read_timeout' del qwc-api-gateway és massa baix", + "title": "QWC Admin", + "update_resource_message_error": "No s'ha pogut actualitzar {}.", + "update_resource_message_success": "{} ha estat actualitzat.", + "use_cached_project_metadata": "Utilitza les metadades del projecte en memòria cau si estan disponibles", + "use_cached_project_metadata_help": "Utilitza les capacitats WMS/WMTS en memòria cau per a temes i capes externes, si estan disponibles, i omet la regeneració de les miniatures dels temes. Útil per regenerar ràpidament la configuració si només s'han fet canvis de permisos o configuració de serveis però no s'han fet canvis als fitxers de projecte." + }, + "permissions": { + "confirm_message_delete": "Vols eliminar el permís?", + "ph_select_resource": "Selecciona un recurs", + "priority": "Prioritat", + "resource_type": "Tipus de recurs", + "role_filter": "Filtre de rol", + "title": "Permisos", + "type_filter": "Filtre de tipus", + "write": "Escriptura" + }, + "registrable_groups": { + "confirm_message_delete": "Vols eliminar el grup registrable?", + "new_registrable_group": "Nou grup registrable", + "title": "Grups registrables" + }, + "registration_requests": { + "accept": "Accepta", + "add_to_group": "Afegeix al grup", + "confirm_message_delete": "Vols eliminar la sol·licitud de registre?", + "created_at": "Creat el", + "email": "Correu electrònic", + "form_action": "Acció", + "form_submit": "Actualitza membres del grup", + "group": "Grup registrable sol·licitat", + "registration_requests": "Sol·licituds de registre", + "reject": "Rebutja", + "reject_request": "Rebutja la sol·licitud", + "remove_from_group": "Elimina del grup", + "send_message_error": "No s'ha pogut enviar la notificació a l'usuari:", + "send_message_success": "L'usuari ha estat notificat de les actualitzacions de la sol·licitud de registre.", + "skip": "Omet", + "title": "Sol·licituds de registre pendents" + }, + "resources": { + "add_layers_map_message_error": "No s'han trobat capes per a aquest mapa.", + "add_layers_message_success": "S'han afegit capes noves.", + "add_maps_message_error": "No s'han trobat mapes addicionals.", + "add_maps_message_success": "S'han afegit mapes nous.", + "add_permissions_message_error": "No s'han trobat permisos addicionals.", + "add_permissions_message_success": "S'han afegit permisos nous.", + "add_resource_message_error": "No s'ha pogut afegir el recurs {}", + "add_resources_message_error": "No s'han trobat recursos addicionals.", + "add_resources_message_success": "S'han afegit recursos nous.", + "check_unused": "Comprova els no utilitzats", + "confirm_message_delete": "Vols eliminar el recurs?", + "confirm_message_remove_cascaded": "Vols eliminar el recurs i els seus fills?", + "confirm_message_remove_selected": "Vols eliminar els recursos seleccionats ${}?", + "form_import_type": "Tipus de recursos a importar del mapa", + "form_role": "Permisos de rol dels recursos a importar del mapa", + "form_write": "Escriptura", + "hierarchy_title": "Jerarquia de recursos", + "import_children_message_error": "La importació d'arxius fills no està suportada per aquest tipus de recurs.", + "import_layer_message_error": "No s'ha pogut importar la capa {}", + "import_layers": "Importa capes", + "import_layers_message_error": "No s'han pogut importar capes:", + "import_maps": "Importa mapes", + "import_maps_message_error": "No s'han pogut importar mapes:", + "import_resources": "Importa recursos", + "import_resources_message_error": "No s'han pogut importar recursos:", + "import_resources_title": "Importa", + "message_import_layers": "Important capes...", + "message_import_maps": "Important mapes...", + "message_not_referenced": "El recurs no s'ha trobat en cap configuració de servei", + "new_resource": "Nou recurs", + "parent": "Pare", + "parent_resource": "Recurs pare", + "permissions": "Permisos", + "remove_cascaded": "Elimina en cascada", + "remove_selected": "Elimina seleccionats", + "resource": "recurs", + "resource_hierarchy_title": "Jerarquia de recursos", + "resource_permissions": "Permisos de recursos", + "title": "Recursos", + "type_filter": "Filtre de tipus" + }, + "roles": { + "confirm_message_delete": "Vols eliminar el rol?", + "new_role": "Nou rol", + "title": "Rols" + }, + "users": { + "authentication": "Autenticació", + "confirm_message_delete": "Vols eliminar l'usuari?", + "confirm_sendmail": "La contrasenya es restablirà i s'enviarà un correu d'invitació a {}, vols continuar?", + "force_password_change": "Força el canvi de contrasenya a la propera connexió", + "form_email": "Correu electrònic", + "form_email_error": "Si us plau, utilitza una adreça de correu electrònic diferent.", + "form_failed_login": "Intents d'inici de sessió fallits", + "form_failed_login_message": "El nombre ha de ser igual o superior a 0", + "form_last_sign_in": "Última connexió", + "form_name": "Nom d'usuari", + "form_password": "Contrasenya", + "form_password_repeat": "Repeteix la contrasenya", + "form_totp": "Secret TOTP", + "groups_roles": "Grups i rols", + "mail_subject": "El teu accés a {}", + "new_user": "Nou usuari", + "no_mail_config": "No s'ha configurat el correu electrònic d'enviament, no es pot enviar el correu d'invitació.", + "no_user_email": "No s'ha desat correu electrònic per a l'usuari, no es pot enviar el correu electrònic.", + "save_and_send": "Desa i envia invitació", + "send_mail_failure": "No s'ha pogut enviar el correu d'invitació.", + "send_mail_success": "Correu d'invitació enviat correctament.", + "sendmail": "Envia invitació", + "set_random_password_send_invite": "Estableix contrasenya aleatòria i envia invitació per correu", + "title": "Usuaris", + "user_info": "Informació de l'usuari" + } + }, + "plugins": { + "config_editor": { + "edit_message_error": "No s'ha pogut llegir", + "json_message_error": "JSON invàlid", + "save_message_error": "No s'ha pogut desar", + "subtitle": "Edita les configuracions d'entrada", + "title": "Editor de Configuracions", + "update_message_success": "ha estat actualitzat" + }, + "themes": { + "backgroundlayers": { + "action_created": "creat", + "action_updated": "actualitzat", + "create_message_error": "No s'ha pogut crear la capa d'enfosc", + "create_title": "Afegeix la capa d'enfosc", + "delete_message_error": "No s'ha pogut eliminar la capa d'enfosc.", + "delete_message_success": "La capa d'enfosc s'ha eliminat.", + "edit_layer": "Edita la capa", + "edit_title": "Edita la capa d'enfosc", + "new_wms_layer": "Nova capa WMS", + "new_wmts_layer": "Nova capa WMTS", + "new_xyz_layer": "Nova capa XYZ", + "save_action_message_error": "No s'ha pogut desar la capa d'enfosc", + "save_action_message_success": "La capa d'enfosc", + "title": "Capes d'enfosc", + "update_message_error": "No s'ha pogut actualitzar la capa d'enfosc" + }, + "common": { + "confirm_message_delete_layer": "Realment vols eliminar la capa {}?", + "connect": "Connecta", + "crs": "CRS", + "delete_layer": "Elimina la capa", + "form_attribution": "Atribució", + "form_submit": "Desa", + "form_thumbnail": "Miniatura", + "format": "Format", + "layer": "Capa", + "title": "Temes" + }, + "files": { + "confirm_message_delete_project": "Realment vols eliminar {}?", + "delete_project": "Elimina el projecte", + "file_delete_message_error": "El fitxer no s'ha pogut eliminar.", + "file_extract_message_success": "i s'ha extret", + "file_save_message_error": "El fitxer no s'ha pogut desar.", + "file_upload_message_error": "El fitxer no s'ha pogut pujar", + "file_upload_message_success": "El fitxer s'ha pujat correctament", + "form_layer_allowed": "Si us plau, només utilitza fitxers geoespacials", + "form_layer_file": "Capa geoespacial", + "form_project_allowed": "Si us plau, només utilitza projectes QGS !", + "form_project_file": "Projecte QGIS", + "form_submit": "Puja", + "form_template_file": "Plantilla HTML", + "geospatial_file": "Fitxers geoespacials", + "project": "Projecte", + "project_delete_message_error": "El projecte no s'ha pogut eliminar.", + "project_save_message_error": "El projecte no s'ha pogut desar.", + "project_upload_message_error": "El projecte no s'ha pogut pujar", + "project_upload_message_success": "El projecte s'ha pujat correctament", + "qgis_projects": "Projectes QGIS", + "template_delete_message_error": "El fitxer no s'ha pogut eliminar.", + "template_delete_title": "Elimina plantilles", + "template_save_message_error": "La plantilla no s'ha pogut desar.", + "template_upload_message_error": "La plantilla no s'ha pogut pujar", + "template_upload_message_success": "La plantilla s'ha pujat correctament", + "template_upload_title": "Puja plantilles", + "title": "Puja fitxers" + }, + "info_templates": { + "confirm_message_delete_template": "Realment vols eliminar {}?", + "create_message_warning": "No s'ha pogut crear la plantilla.", + "create_title": "Afegeix plantilla", + "delete_message_warning": "No s'ha pogut eliminar el recurs per a la plantilla", + "delete_template": "Elimina la plantilla", + "edit_message_warning": "No s'ha pogut actualitzar la plantilla.", + "edit_title": "Edita la plantilla", + "project": "Projecte", + "save_message_error": "No s'ha pogut desar la configuració de la plantilla.", + "save_message_succes": "La configuració de la plantilla s'ha desat.", + "template": "Plantilla", + "title": "Plantilles HTML", + "update_message_resource_warning": "El recurs per a featureInfoLayer ja existeix", + "update_message_template_warning": "Ja existeix una plantilla per a aquesta capa" + }, + "mapthumbs": { + "confirm_message_delete_mapthumb": "Realment vols eliminar {}?", + "delete_mapthumb": "Elimina la miniatura", + "delete_message_error": "La miniatura no s'ha pogut eliminar.", + "form_allowed": "Si us plau, només utilitza jpg o png!", + "form_file": "Imatge", + "save_message_error": "La miniatura no s'ha pogut desar.", + "title": "Miniatures de mapes", + "upload_message_error": "La miniatura no s'ha pogut pujar", + "upload_message_success": "La miniatura s'ha pujat correctament" + }, + "theme": { + "background_layer": "Capa d'enfosc", + "background_layer_message": "(Opcional): La visibilitat inicial d'aquesta capa d'enfosc quan es carregui el tema.", + "featureReportLayerId": "Layer ID", + "featureReportTemplateCfg": "Template config ID", + "form_additionalMouseCrs": "C.R.S. addicionals", + "form_additionalMouseCrs_description": "C.R.S. addicionals per a l'indicació de coordenades del ratolí.", + "form_attributionUrl": "URL d'atribució", + "form_attributionUrl_description": "Enllaç associat a l'atribució.", + "form_attribution_description": "Atribució del tema, es mostra a la cantonada inferior dreta del mapa.", + "form_collapseLayerGroupsBelowLevel": "col·lapsa els grups de capes per sota del nivell", + "form_collapseLayerGroupsBelowLevel_description": "Nivell de l'arbre de capes per sota del qual es col·lapsen els grups. Per defecte, l'arbre està completament expandit.", + "form_crs_description": "La projecció del mapa.", + "form_default": "Per defecte", + "form_defaultPrintLayout": "Plantilla d'impressió per defecte", + "form_defaultPrintLayout_description": "Nom de la plantilla d'impressió a seleccionar per defecte.", + "form_default_description": "Si es vol utilitzar aquest tema com a tema inicial.", + "form_description_description": "Una descripció addicional per mostrar sota el títol del tema.", + "form_disabled": "Desactiva aquest tema", + "form_disabled_description": "Omet aquest tema de la configuració.", + "form_extent": "Extensió", + "form_extent_description": "Suprimeix l'extensió del tema. En mapCrs. [xmin, ymin, xmax, ymax]. ", + "form_extent_message": "Si us plau, introdueix una llista separada per comes de 4 números.", + "form_extraDxfParameters": "Paràmetres DXF addicionals", + "form_extraDxfParameters_description": "Paràmetres de consulta addicionals a afegir a la petició d'exportació DXF.", + "form_extraDxfParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", + "form_extraLegendParameters": "Paràmetres d' llegenda addicionals", + "form_extraLegendParameters_description": "Paràmetres de consulta addicionals a afegir a la petició GetLegendGraphic.", + "form_extraLegendParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", + "form_extraPrintLayers": "Capes d'impressió addicionals", + "form_extraPrintLayers_description": "Llista d'arxius de capes a marcar com a internes d'impressió, és a dir, que s'ometen de l'arbre de capes QWC.", + "form_extraPrintLayers_message": "Si us plau, introdueix una llista separada per comes de noms.", + "form_extraPrintParameters": "Paràmetres d'impressió addicionals", + "form_extraPrintParameters_description": "Paràmetres de consulta addicionals a afegir a la petició GetPrint.", + "form_extraPrintParameters_message": "Si us plau, introdueix una llista separada per comes de KEY=VALUE.", + "form_flags": "Banderes", + "form_flags_description": "Llista de noms de banderes arbitràries. La visibilitat dels elements del menú, els botons de la barra d'eines i els botons del mapa es pot controlar en funció de les banderes que un tema declara.", + "form_flags_message": "Si us plau, introdueix una llista separada per comes de noms.", + "form_format_description": "Format d'imatge sol·licitat pel servei WMS. Per defecte és 'image/png'.", + "form_layerTreeHiddenSublayers": "Sublayers ocultes de LayerTree", + "form_layerTreeHiddenSublayers_description": "Llista de noms de subcapes a ometre a l'arbre de capes (però encara es mostren al mapa).", + "form_layerTreeHiddenSublayers_message": "Si us plau, introdueix una llista separada per comes de noms.", + "form_mapTips": "Activa l'indicació de ratolí per defecte", + "form_mapTips_description": "Activa l'indicació de ratolí del tema per defecte", + "form_minSearchScaleDenom": "Escala mínima per a resultats de cerca", + "form_minSearchScaleDenom_description": "Escala a aplicar quan es fa zoom per a resultats de cerca.", + "form_printLabelBlacklist": "Llista negra d'etiquetes d'impressió", + "form_printLabelBlacklist_description": "Llista d'ids d'etiquetes de compositor a no mostrar a la finestra d'impressió.", + "form_printLabelBlacklist_message": "Si us plau, introdueix una llista separada per comes de noms.", + "form_printLabelForAttribution": "Etiqueta d'impressió per a l'atribució", + "form_printLabelForAttribution_description": "ID d'una etiqueta de disseny d'impressió a la qual s'escriurà el text d'atribució actual (si n'hi ha) quan s'imprimeix.", + "form_printLabelForSearchResult": "Etiqueta d'impressió per a resultats de cerca", + "form_printLabelForSearchResult_description": "ID d'una etiqueta de disseny d'impressió a la qual s'escriurà el text de resultat de cerca actual (si n'hi ha) quan s'imprimeix.", + "form_printResolutions": "Resolucions d'impressió", + "form_printResolutions_description": "Llista de resolucions d'impressió disponibles.", + "form_printResolutions_message": "Si us plau, introdueix una llista separada per comes de números.", + "form_printScales": "Escales d'impressió", + "form_printScales_description": "Llista d'escales d'impressió disponibles.", + "form_printScales_message": "Si us plau, introdueix una llista separada per comes de números.", + "form_scales": "Escales", + "form_scales_description": "Llista d'escales del mapa disponibles.", + "form_scales_message": "Si us plau, introdueix una llista separada per comes de números.", + "form_searchProviders": "Proveïdors de cerca", + "form_searchProviders_description": "Llista de proveïdors de cerca disponibles.", + "form_skipEmptyFeatureAttributes": "Omet els atributs de les característiques buides", + "form_skipEmptyFeatureAttributes_description": "Si s'ometen els atributs buits de les característiques d'informació.", + "form_snappingFeatureCount": "Feature count", + "form_snappingFeatureCount_description": "The maximum number of snapping geometries to retreive for the current map extent (default: 500).", + "form_snappingWfsMaxScale": "WfsMaxScale", + "form_snappingWfsMaxScale_description": "The maximum scale denominator (exclusive) up to which loaded WFS layers should be used for snapping.", + "form_themeFeatureReport": "Feature report", + "form_themeFeatureReport_description": "Configure feature report templates, choose WMS sublayer ID and associated template ID to pass to the documentService.", + "form_themeInfoLinks": "Theme info links", + "form_themeInfoLinksEntries": "Theme info links entries", + "form_themeInfoLinksEntries_description": "List of theme info link names", + "form_themeInfoLinksEntries_message": "Please enter a comma separted list of names.", + "form_themeInfoLinksTitle": "Theme info links title", + "form_themeInfoLinksTitleMsgId": "Theme info links title message ID", + "form_themeInfoLinksTitleMsgId_description": "Alternative to title, a message ID, translated through the translation files.", + "form_themeInfoLinksTitle_description": "An arbitrary string shown as title of the menu.", + "form_themeInfoLinks_description": "Custom links to additional resources, shown as a menu in the theme selector in the theme switcher.", + "form_themeSnapping": "Snapping", + "form_themeSnapping_description": "Snapping configuration", + "form_thumbnail_description": "Nom del fitxer de la miniatura del tema. Per defecte, es genera automàticament via WMS GetMap.", + "form_tileSize": "Mida de la fitxa", + "form_tileSize_description": "Amplada i altura de la fitxa WMS.", + "form_tileSize_message": "Si us plau, introdueix una llista separada per comes de 2 números.", + "form_tiled": "Tilades", + "form_tiled_description": "Tilació de les capes", + "form_title_description": "Títol del tema personalitzat.", + "form_url": "Projecte", + "form_watermark": "Watermark", + "form_watermarkBackgroundcolor": "Frame background color", + "form_watermarkFontcolor": "Font color", + "form_watermarkFontfamily": "Font family", + "form_watermarkFontsize": "Font size", + "form_watermarkFramecolor": "Frame color", + "form_watermarkFramewidth": "Frame width", + "form_watermarkTexpadding": "Text padding", + "form_watermarkTexpadding_description": " Padding between text and frame, in points.", + "form_watermarkText": "Text", + "form_watermarkText_description": "Arbitrary text.", + "form_watermark_color_message": "Please enter an hexadecimal format color (ex : #FFFFFF)", + "form_watermark_description": "Configuration of watermark to add to raster export images.", + "options_advancedparams": "Paràmetres avançats", + "options_global": "Opcions globals", + "options_interface": "Opcions d'interfície", + "options_print": "Opcions d'impressió", + "options_search": "Opcions de cerca", + "print_layer": "Capa d'impressió", + "print_layer_message": "(Opcional): Nom d'una capa del Projecte QGIS que s'ha d'utilitzar quan s'imprimeix.", + "snappingLayerMax": "snappingLayerMax", + "snappingLayerMin": "snappingLayerMin", + "snappingLayerName": "snappingLayerName" + }, + "themes": { + "confirm_message_delete_theme": "Realment vols eliminar el tema?", + "copy_url": "Copia l'URL al porta-retalls", + "create_theme_message_error": "No s'ha pogut crear el tema", + "create_theme_message_integrity_error": "El recurs per a aquest mapa ja existeix", + "create_theme_message_success": "Aquest tema s'ha creat", + "create_theme_title": "Crea tema", + "delete_theme": "Elimina el tema", + "delete_theme_message_error": "No s'ha pogut eliminar el recurs per a mapa", + "disabled": "Desactivat", + "edit_theme": "Edita el tema", + "edit_theme_title": "Edita el tema", + "group_confirm_message_delete": "Realment vols eliminar el grup de temes?", + "group_delete": "Elimina el grup de temes", + "group_move_down": "Mou el grup de temes cap avall", + "group_move_up": "Mou el grup de temes cap amunt", + "group_title": "Títol", + "group_title_edit": "Edita el títol", + "move_down": "Mou el tema cap avall", + "move_theme_to_group": "Mou el tema al grup", + "move_up": "Mou el tema cap amunt", + "new_group": "Nou grup de temes", + "new_theme": "Nou tema", + "reload_theme_message": "La configuració del tema s'ha recarregat des del disc.", + "save_theme_message_error": "No s'ha pogut desar la configuració del tema.", + "save_theme_message_success": "La configuració del tema s'ha desat.", + "theme": "Tema", + "theme_groups": "Grups de temes", + "themes": "Temes", + "title": "Configuració del tema", + "update_theme_message_error": "No s'ha pogut actualitzar el tema", + "update_theme_message_success": "Aquest tema s'ha actualitzat", + "update_theme_title": "Actualitza tema" + }, + "wmslayer": { + "add": "Afegeix capa d'enfosc WMS", + "capabilities_url": "URL de capacitats WMS", + "form_tiled": "tilat" + }, + "wmtslayer": { + "add": "Afegeix capa d'enfosc WMTS", + "capabilities_url": "URL de capacitats WMTS", + "form_with_capabilities": "Desa les capacitats? (Només necessari per a QGIS Server WMTS!)", + "style": "Estil", + "tilematrix": "Matriu de tessel·lació" + }, + "xyzlayer": { + "add": "Afegeix capa d'enfosc XYZ" + } + } + }, + "registration_requests": { + "user_notification": { + "footer": "", + "salutation": "Hola %(username)s", + "subject": "Actualitzacions de registre de grup", + "user_added_to_groups": "T'has afegit als següents grups:", + "user_removed_from_groups": "T'has eliminat dels següents grups:", + "user_requests_declined": "Les sol·licituds de registre de membres per als següents grups han estat rebutjades:" + } + } +} \ No newline at end of file diff --git a/src/translations/de.json b/src/translations/de.json index c275b40..a6074dc 100644 --- a/src/translations/de.json +++ b/src/translations/de.json @@ -276,6 +276,8 @@ "theme": { "background_layer": "Hintergrundebene", "background_layer_message": "Optional: Die initiale Sichtbarkeit dieser Ebene beim Laden des Themas.", + "featureReportLayerId": "Layer ID", + "featureReportTemplateCfg": "Template config ID", "form_additionalMouseCrs": "Zus. KBS", "form_additionalMouseCrs_description": "Zusätzliche KBS für die Mousekoordinatenanzeige.", "form_attributionUrl": "Attribution URL", @@ -337,6 +339,23 @@ "form_searchProviders_description": "Liste der verfügbaren Suchdienste.", "form_skipEmptyFeatureAttributes": "Leere Objektattribute auslassen", "form_skipEmptyFeatureAttributes_description": "Ob leere Attribute in der Objektinfo ausgelassen werden sollen.", + "form_snappingFeatureCount": "Feature count", + "form_snappingFeatureCount_description": "The maximum number of snapping geometries to retreive for the current map extent (default: 500).", + "form_snappingWfsMaxScale": "WfsMaxScale", + "form_snappingWfsMaxScale_description": "The maximum scale denominator (exclusive) up to which loaded WFS layers should be used for snapping.", + "form_themeFeatureReport": "Feature report", + "form_themeFeatureReport_description": "Configure feature report templates, choose WMS sublayer ID and associated template ID to pass to the documentService.", + "form_themeInfoLinks": "Theme info links", + "form_themeInfoLinksEntries": "Theme info links entries", + "form_themeInfoLinksEntries_description": "List of theme info link names", + "form_themeInfoLinksEntries_message": "Please enter a comma separted list of names.", + "form_themeInfoLinksTitle": "Theme info links title", + "form_themeInfoLinksTitleMsgId": "Theme info links title message ID", + "form_themeInfoLinksTitleMsgId_description": "Alternative to title, a message ID, translated through the translation files.", + "form_themeInfoLinksTitle_description": "An arbitrary string shown as title of the menu.", + "form_themeInfoLinks_description": "Custom links to additional resources, shown as a menu in the theme selector in the theme switcher.", + "form_themeSnapping": "Snapping", + "form_themeSnapping_description": "Snapping configuration", "form_thumbnail_description": "Dateiname des Themenvorschaubildes. Standardmässig via WMS GetMap generiert.", "form_tileSize": "Tile size", "form_tileSize_description": "WMS tile width and height.", @@ -345,13 +364,29 @@ "form_tiled_description": "Gekachelte Ebenenanfragen", "form_title_description": "Thementitel.", "form_url": "Projekt", + "form_watermark": "Watermark", + "form_watermarkBackgroundcolor": "Frame background color", + "form_watermarkFontcolor": "Font color", + "form_watermarkFontfamily": "Font family", + "form_watermarkFontsize": "Font size", + "form_watermarkFramecolor": "Frame color", + "form_watermarkFramewidth": "Frame width", + "form_watermarkTexpadding": "Text padding", + "form_watermarkTexpadding_description": " Padding between text and frame, in points.", + "form_watermarkText": "Text", + "form_watermarkText_description": "Arbitrary text.", + "form_watermark_color_message": "Please enter an hexadecimal format color (ex : #FFFFFF)", + "form_watermark_description": "Configuration of watermark to add to raster export images.", "options_advancedparams": "Advanced parameters", "options_global": "Global options", "options_interface": "Interface options", "options_print": "Print options", "options_search": "Search options", "print_layer": "Druckebene", - "print_layer_message": "Optional: Name der QGIS Projektebene, die beim Druck verwendet werden soll." + "print_layer_message": "Optional: Name der QGIS Projektebene, die beim Druck verwendet werden soll.", + "snappingLayerMax": "snappingLayerMax", + "snappingLayerMin": "snappingLayerMin", + "snappingLayerName": "snappingLayerName" }, "themes": { "confirm_message_delete_theme": "Thema wirklich löschen?", diff --git a/src/translations/en.json b/src/translations/en.json index 7a42745..d797135 100644 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -276,6 +276,8 @@ "theme": { "background_layer": "Background layer", "background_layer_message": "(Optional): The initial visibility of this background layer when loading the theme.", + "featureReportLayerId": "Layer ID", + "featureReportTemplateCfg": "Template config ID", "form_additionalMouseCrs": "Add. CRS", "form_additionalMouseCrs_description": "Additional CRS for the mouse coordinate display.", "form_attributionUrl": "Attribution URL", @@ -337,6 +339,23 @@ "form_searchProviders_description": "List of available search providers.", "form_skipEmptyFeatureAttributes": "Skip empty feature attributes", "form_skipEmptyFeatureAttributes_description": "Whether to omit empty attributes from the feature information.", + "form_snappingFeatureCount": "Feature count", + "form_snappingFeatureCount_description": "The maximum number of snapping geometries to retreive for the current map extent (default: 500).", + "form_snappingWfsMaxScale": "WfsMaxScale", + "form_snappingWfsMaxScale_description": "The maximum scale denominator (exclusive) up to which loaded WFS layers should be used for snapping.", + "form_themeFeatureReport": "Feature report", + "form_themeFeatureReport_description": "Configure feature report templates, choose WMS sublayer ID and associated template ID to pass to the documentService.", + "form_themeInfoLinks": "Theme info links", + "form_themeInfoLinksEntries": "Theme info links entries", + "form_themeInfoLinksEntries_description": "List of theme info link names", + "form_themeInfoLinksEntries_message": "Please enter a comma separted list of names.", + "form_themeInfoLinksTitle": "Theme info links title", + "form_themeInfoLinksTitleMsgId": "Theme info links title message ID", + "form_themeInfoLinksTitleMsgId_description": "Alternative to title, a message ID, translated through the translation files.", + "form_themeInfoLinksTitle_description": "An arbitrary string shown as title of the menu.", + "form_themeInfoLinks_description": "Custom links to additional resources, shown as a menu in the theme selector in the theme switcher.", + "form_themeSnapping": "Snapping", + "form_themeSnapping_description": "Snapping configuration", "form_thumbnail_description": "Filename of the theme thumbnail. By default, autogenerated via WMS GetMap.", "form_tileSize": "Tile size", "form_tileSize_description": "WMS tile width and height.", @@ -345,13 +364,29 @@ "form_tiled_description": "Tiling the layers", "form_title_description": "Customized theme title.", "form_url": "Project", + "form_watermark": "Watermark", + "form_watermarkBackgroundcolor": "Frame background color", + "form_watermarkFontcolor": "Font color", + "form_watermarkFontfamily": "Font family", + "form_watermarkFontsize": "Font size", + "form_watermarkFramecolor": "Frame color", + "form_watermarkFramewidth": "Frame width", + "form_watermarkTexpadding": "Text padding", + "form_watermarkTexpadding_description": " Padding between text and frame, in points.", + "form_watermarkText": "Text", + "form_watermarkText_description": "Arbitrary text.", + "form_watermark_color_message": "Please enter an hexadecimal format color (ex : #FFFFFF)", + "form_watermark_description": "Configuration of watermark to add to raster export images.", "options_advancedparams": "Advanced parameters", "options_global": "Global options", "options_interface": "Interface options", "options_print": "Print options", "options_search": "Search options", "print_layer": "Print layer", - "print_layer_message": "(Optional): Name of a layer of the QGIS Project which should be used when printing." + "print_layer_message": "(Optional): Name of a layer of the QGIS Project which should be used when printing.", + "snappingLayerMax": "Max", + "snappingLayerMin": "Min", + "snappingLayerName": "Layer name" }, "themes": { "confirm_message_delete_theme": "Really delete theme?", diff --git a/src/translations/es.json b/src/translations/es.json index 43a7ea4..9e97722 100644 --- a/src/translations/es.json +++ b/src/translations/es.json @@ -276,6 +276,8 @@ "theme": { "background_layer": "Capa de fondo", "background_layer_message": "(Opcional): La visibilidad inicial de esta capa de fondo al cargar el tema.", + "featureReportLayerId": "Layer ID", + "featureReportTemplateCfg": "Template config ID", "form_additionalMouseCrs": "CRS adicional", "form_additionalMouseCrs_description": "CRS adicional para la visualización de coordenadas del ratón.", "form_attributionUrl": "Attribution URL", @@ -337,6 +339,23 @@ "form_searchProviders_description": "Lista de proveedores de búsqueda disponibles.", "form_skipEmptyFeatureAttributes": "Omitir atributos de entidad vacíos", "form_skipEmptyFeatureAttributes_description": "Si se deben omitir los atributos vacíos de la información de entidad.", + "form_snappingFeatureCount": "Feature count", + "form_snappingFeatureCount_description": "The maximum number of snapping geometries to retreive for the current map extent (default: 500).", + "form_snappingWfsMaxScale": "WfsMaxScale", + "form_snappingWfsMaxScale_description": "The maximum scale denominator (exclusive) up to which loaded WFS layers should be used for snapping.", + "form_themeFeatureReport": "Feature report", + "form_themeFeatureReport_description": "Configure feature report templates, choose WMS sublayer ID and associated template ID to pass to the documentService.", + "form_themeInfoLinks": "Theme info links", + "form_themeInfoLinksEntries": "Theme info links entries", + "form_themeInfoLinksEntries_description": "List of theme info link names", + "form_themeInfoLinksEntries_message": "Please enter a comma separted list of names.", + "form_themeInfoLinksTitle": "Theme info links title", + "form_themeInfoLinksTitleMsgId": "Theme info links title message ID", + "form_themeInfoLinksTitleMsgId_description": "Alternative to title, a message ID, translated through the translation files.", + "form_themeInfoLinksTitle_description": "An arbitrary string shown as title of the menu.", + "form_themeInfoLinks_description": "Custom links to additional resources, shown as a menu in the theme selector in the theme switcher.", + "form_themeSnapping": "Snapping", + "form_themeSnapping_description": "Snapping configuration", "form_thumbnail_description": "Nombre de archivo de la miniatura del tema. Por defecto, autogenerado vía WMS GetMap.", "form_tileSize": "Tile size", "form_tileSize_description": "WMS tile width and height.", @@ -345,13 +364,29 @@ "form_tiled_description": "Mosaico de las capas", "form_title_description": "Título personalizado del tema.", "form_url": "Proyecto", + "form_watermark": "Watermark", + "form_watermarkBackgroundcolor": "Frame background color", + "form_watermarkFontcolor": "Font color", + "form_watermarkFontfamily": "Font family", + "form_watermarkFontsize": "Font size", + "form_watermarkFramecolor": "Frame color", + "form_watermarkFramewidth": "Frame width", + "form_watermarkTexpadding": "Text padding", + "form_watermarkTexpadding_description": " Padding between text and frame, in points.", + "form_watermarkText": "Text", + "form_watermarkText_description": "Arbitrary text.", + "form_watermark_color_message": "Please enter an hexadecimal format color (ex : #FFFFFF)", + "form_watermark_description": "Configuration of watermark to add to raster export images.", "options_advancedparams": "Advanced parameters", "options_global": "Global options", "options_interface": "Interface options", "options_print": "Print options", "options_search": "Search options", "print_layer": "Capa de impresión", - "print_layer_message": "(Opcional): Nombre de una capa del Proyecto QGIS que debe usarse al imprimir." + "print_layer_message": "(Opcional): Nombre de una capa del Proyecto QGIS que debe usarse al imprimir.", + "snappingLayerMax": "snappingLayerMax", + "snappingLayerMin": "snappingLayerMin", + "snappingLayerName": "snappingLayerName" }, "themes": { "confirm_message_delete_theme": "¿Realmente eliminar tema?", diff --git a/src/translations/fr.json b/src/translations/fr.json index e8f54b1..a1cd4dd 100644 --- a/src/translations/fr.json +++ b/src/translations/fr.json @@ -276,6 +276,8 @@ "theme": { "background_layer": "Fonds de plan", "background_layer_message": "(Optionnel): Visibilité initiale de ce fond de plan au moment du chargement du thème.", + "featureReportLayerId": "Layer ID", + "featureReportTemplateCfg": "Template config ID", "form_additionalMouseCrs": "CRS add.", "form_additionalMouseCrs_description": "CRS additionnels pour l'affichage des coordonnées de la souris.", "form_attributionUrl": "URL d'attribution", @@ -337,6 +339,23 @@ "form_searchProviders_description": "Liste des fournisseurs de recherche disponibles.", "form_skipEmptyFeatureAttributes": "Ne pas afficher les attributs vides", "form_skipEmptyFeatureAttributes_description": "S'il faut omettre les attributs vides dans les informations de l'objet.", + "form_snappingFeatureCount": "Feature count", + "form_snappingFeatureCount_description": "Nombre maximal de géométries accrochées à récupérer pour l'emprise courante (valeur par défaut: 500).", + "form_snappingWfsMaxScale": "WfsMaxScale", + "form_snappingWfsMaxScale_description": "Echelle maximale (borne exclusive) au dessus de laquelle les couches WFS chargées doivent être utilisées pour l'accrochage.", + "form_themeFeatureReport": "Feature report", + "form_themeFeatureReport_description": "Configuration des rapports, associer l'ID de la couche WMS à un ID du template pour le documentService.", + "form_themeInfoLinks": "Liens d'information du thème", + "form_themeInfoLinksEntries": "Entrées des liens du thème", + "form_themeInfoLinksEntries_description": "Liste des noms des liens à ajouter dans le menu de ce thème.", + "form_themeInfoLinksEntries_message": "SVP, entrer une liste de noms séparés par une virgule.", + "form_themeInfoLinksTitle": "Titre du menu des liens", + "form_themeInfoLinksTitleMsgId": "ID du titre du lien", + "form_themeInfoLinksTitleMsgId_description": "Alternative au titre, l'identifiant du titre, correspondant à une traduction dans les fichiers de traduction.", + "form_themeInfoLinksTitle_description": "Titre arbitraire à afficher comme titre du menu des liens dans ce thème.", + "form_themeInfoLinks_description": "Liens personnalisés vers des ressources supplémentaires, affiché comme un menu dans le selectionneur de thèmes.", + "form_themeSnapping": "Accrochage (Snapping)", + "form_themeSnapping_description": "Configuration de l'accrochage des couches", "form_thumbnail_description": "Nom du fichier de la miniature du thème. Par défaut, la miniature est autogénérée grâce à un GetMap WMS.", "form_tileSize": "Taille des tuiles", "form_tileSize_description": "Hauteur et largeur des tuiles WMS.", @@ -345,13 +364,29 @@ "form_tiled_description": "Tuiler les couches", "form_title_description": "Personnalisation du titre du thème.", "form_url": "Projet", + "form_watermark": "Filigrane", + "form_watermarkBackgroundcolor": "Couleur de l'arrièere plan", + "form_watermarkFontcolor": "Couleur de la police", + "form_watermarkFontfamily": "Police d'écriture", + "form_watermarkFontsize": "Taille de la police", + "form_watermarkFramecolor": "Couleur du cadre", + "form_watermarkFramewidth": "Taille du cadre", + "form_watermarkTexpadding": "Espacement autour du texte", + "form_watermarkTexpadding_description": " Espacement entre le texte et le cadre, en points.", + "form_watermarkText": "Texte", + "form_watermarkText_description": "Texte arbitraire.", + "form_watermark_color_message": "SVP, entrer un code couleur au format hexadécimal (ex : #FFFFFF)", + "form_watermark_description": "Configuration du filigrane à ajouter sur les images lors de l'export raster.", "options_advancedparams": "Paramètres avancés", "options_global": "Options générales", "options_interface": "Options pour l'interface", "options_print": "Options pour l'impression", "options_search": "Options pour la recherche", "print_layer": "Couches d'impression", - "print_layer_message": "(Optionnel): Nom de la couche du projet QGIS qui doit être utilisée lors de l'impression." + "print_layer_message": "(Optionnel): Nom de la couche du projet QGIS qui doit être utilisée lors de l'impression.", + "snappingLayerMax": "snappingLayerMax", + "snappingLayerMin": "snappingLayerMin", + "snappingLayerName": "snappingLayerName" }, "themes": { "confirm_message_delete_theme": "Voulez-vous vraiment supprimer ce thème?", diff --git a/src/translations/tsconfig.json b/src/translations/tsconfig.json index 8ff0a93..075961f 100644 --- a/src/translations/tsconfig.json +++ b/src/translations/tsconfig.json @@ -250,6 +250,8 @@ "plugins.themes.mapthumbs.upload_message_success", "plugins.themes.theme.background_layer", "plugins.themes.theme.background_layer_message", + "plugins.themes.theme.featureReportLayerId", + "plugins.themes.theme.featureReportTemplateCfg", "plugins.themes.theme.form_additionalMouseCrs", "plugins.themes.theme.form_additionalMouseCrs_description", "plugins.themes.theme.form_attributionUrl", @@ -311,6 +313,23 @@ "plugins.themes.theme.form_searchProviders_description", "plugins.themes.theme.form_skipEmptyFeatureAttributes", "plugins.themes.theme.form_skipEmptyFeatureAttributes_description", + "plugins.themes.theme.form_snappingFeatureCount", + "plugins.themes.theme.form_snappingFeatureCount_description", + "plugins.themes.theme.form_snappingWfsMaxScale", + "plugins.themes.theme.form_snappingWfsMaxScale_description", + "plugins.themes.theme.form_themeFeatureReport", + "plugins.themes.theme.form_themeFeatureReport_description", + "plugins.themes.theme.form_themeInfoLinks", + "plugins.themes.theme.form_themeInfoLinksEntries", + "plugins.themes.theme.form_themeInfoLinksEntries_description", + "plugins.themes.theme.form_themeInfoLinksEntries_message", + "plugins.themes.theme.form_themeInfoLinksTitle", + "plugins.themes.theme.form_themeInfoLinksTitleMsgId", + "plugins.themes.theme.form_themeInfoLinksTitleMsgId_description", + "plugins.themes.theme.form_themeInfoLinksTitle_description", + "plugins.themes.theme.form_themeInfoLinks_description", + "plugins.themes.theme.form_themeSnapping", + "plugins.themes.theme.form_themeSnapping_description", "plugins.themes.theme.form_thumbnail_description", "plugins.themes.theme.form_tileSize", "plugins.themes.theme.form_tileSize_description", @@ -319,6 +338,19 @@ "plugins.themes.theme.form_tiled_description", "plugins.themes.theme.form_title_description", "plugins.themes.theme.form_url", + "plugins.themes.theme.form_watermark", + "plugins.themes.theme.form_watermarkBackgroundcolor", + "plugins.themes.theme.form_watermarkFontcolor", + "plugins.themes.theme.form_watermarkFontfamily", + "plugins.themes.theme.form_watermarkFontsize", + "plugins.themes.theme.form_watermarkFramecolor", + "plugins.themes.theme.form_watermarkFramewidth", + "plugins.themes.theme.form_watermarkTexpadding", + "plugins.themes.theme.form_watermarkTexpadding_description", + "plugins.themes.theme.form_watermarkText", + "plugins.themes.theme.form_watermarkText_description", + "plugins.themes.theme.form_watermark_color_message", + "plugins.themes.theme.form_watermark_description", "plugins.themes.theme.options_advancedparams", "plugins.themes.theme.options_global", "plugins.themes.theme.options_interface", @@ -326,6 +358,9 @@ "plugins.themes.theme.options_search", "plugins.themes.theme.print_layer", "plugins.themes.theme.print_layer_message", + "plugins.themes.theme.snappingLayerMax", + "plugins.themes.theme.snappingLayerMin", + "plugins.themes.theme.snappingLayerName", "plugins.themes.themes.confirm_message_delete_theme", "plugins.themes.themes.copy_url", "plugins.themes.themes.create_theme_message_error",