From d805fd614ca05f625d6dd633137b9bcbe3894647 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Tue, 26 Aug 2025 12:29:51 +0300 Subject: [PATCH] private template placeholder --- app/controllers/api/templates_clone_controller.rb | 2 ++ app/controllers/templates_clone_and_replace_controller.rb | 2 ++ app/controllers/templates_controller.rb | 2 ++ app/controllers/templates_uploads_controller.rb | 2 ++ config/locales/i18n.yml | 6 ++++++ lib/templates.rb | 4 ++++ 6 files changed, 18 insertions(+) diff --git a/app/controllers/api/templates_clone_controller.rb b/app/controllers/api/templates_clone_controller.rb index 9835850a..ec101433 100644 --- a/app/controllers/api/templates_clone_controller.rb +++ b/app/controllers/api/templates_clone_controller.rb @@ -26,6 +26,8 @@ module Api original_template: @template, documents: params[:documents]) + Templates.maybe_assign_access(cloned_template) + cloned_template.save! WebhookUrls.enqueue_events(cloned_template, 'template.created') diff --git a/app/controllers/templates_clone_and_replace_controller.rb b/app/controllers/templates_clone_and_replace_controller.rb index f4acfd3f..2d7c7782 100644 --- a/app/controllers/templates_clone_and_replace_controller.rb +++ b/app/controllers/templates_clone_and_replace_controller.rb @@ -17,6 +17,8 @@ class TemplatesCloneAndReplaceController < ApplicationController documents = Templates::ReplaceAttachments.call(cloned_template, params, extract_fields: true) + Templates.maybe_assign_access(cloned_template) + cloned_template.save! Templates::CloneAttachments.call(template: cloned_template, original_template: @template, diff --git a/app/controllers/templates_controller.rb b/app/controllers/templates_controller.rb index 6b8f3b7a..d86a5ad8 100644 --- a/app/controllers/templates_controller.rb +++ b/app/controllers/templates_controller.rb @@ -69,6 +69,8 @@ class TemplatesController < ApplicationController @template.account = current_account end + Templates.maybe_assign_access(@template) + if @template.save Templates::CloneAttachments.call(template: @template, original_template: @base_template) if @base_template diff --git a/app/controllers/templates_uploads_controller.rb b/app/controllers/templates_uploads_controller.rb index e6fb1069..e8c00aea 100644 --- a/app/controllers/templates_uploads_controller.rb +++ b/app/controllers/templates_uploads_controller.rb @@ -46,6 +46,8 @@ class TemplatesUploadsController < ApplicationController template.folder = TemplateFolders.find_or_create_by_name(current_user, params[:folder_name]) template.name = File.basename((url_params || params)[:files].first.original_filename, '.*') + Templates.maybe_assign_access(template) + template.save! template diff --git a/config/locales/i18n.yml b/config/locales/i18n.yml index 3243e90c..0e2805a7 100644 --- a/config/locales/i18n.yml +++ b/config/locales/i18n.yml @@ -36,6 +36,7 @@ en: &en bcc_recipients: BCC recipients resend_pending: Re-send pending always_enforce_signing_order: Always enforce the signing order + create_templates_with_private_access_by_default: Create templates with private access by default ensure_unique_recipients: Ensure unique recipients edit_per_party: Edit per party reply_to: Reply to @@ -900,6 +901,7 @@ en: &en range_without_total: "%{from}-%{to} events" es: &es + create_templates_with_private_access_by_default: Crear plantillas con acceso privado por defecto party: Parte edit_order: Edita Pedido select: Seleccionar @@ -1780,6 +1782,7 @@ es: &es range_without_total: "%{from}-%{to} eventos" it: &it + create_templates_with_private_access_by_default: Crea modelli con accesso privato per impostazione predefinita party: Parte edit_order: Modifica Ordine select: Seleziona @@ -2660,6 +2663,7 @@ it: &it range_without_total: "%{from}-%{to} eventi" fr: &fr + create_templates_with_private_access_by_default: Créer des modèles avec un accès privé par défaut party: Partie edit_order: Modifier la commande select: Sélectionner @@ -3543,6 +3547,7 @@ fr: &fr range_without_total: "%{from} à %{to} événements" pt: &pt + create_templates_with_private_access_by_default: Criar modelos com acesso privado por padrão party: Parte edit_order: Edita Pedido select: Selecionar @@ -4424,6 +4429,7 @@ pt: &pt range_without_total: "%{from}-%{to} eventos" de: &de + create_templates_with_private_access_by_default: Vorlagen standardmäßig mit privatem Zugriff erstellen party: Partei edit_order: Bestellung bearbeiten select: Auswählen diff --git a/lib/templates.rb b/lib/templates.rb index e1dbdf33..73aaef80 100644 --- a/lib/templates.rb +++ b/lib/templates.rb @@ -37,6 +37,10 @@ module Templates hash end + def maybe_assign_access(_template) + nil + end + def search(current_user, templates, keyword) if Docuseal.fulltext_search? fulltext_search(current_user, templates, keyword)