From 2022224e4b5a9ddf4a8cdfa96f9dd14260360023 Mon Sep 17 00:00:00 2001 From: Lu-Fi Date: Wed, 20 Nov 2024 10:19:37 +0100 Subject: [PATCH] allow {filename} placeholder in workflow --- docs/usage.md | 1 + src/documents/consumer.py | 1 + src/documents/serialisers.py | 1 + src/documents/signals/handlers.py | 1 + src/documents/templating/title.py | 2 ++ 5 files changed, 6 insertions(+) diff --git a/docs/usage.md b/docs/usage.md index 8f22ec3eb..a4b197989 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -411,6 +411,7 @@ applied. You can use the following placeholders with any trigger type: - `{added_day}`: added day - `{added_time}`: added time in HH:MM format - `{original_filename}`: original file name without extension +- `{filename}`: current file name without extension The following placeholders are only available for "added" or "updated" triggers diff --git a/src/documents/consumer.py b/src/documents/consumer.py index 1cd8ad509..c25a8150b 100644 --- a/src/documents/consumer.py +++ b/src/documents/consumer.py @@ -673,6 +673,7 @@ class ConsumerPlugin( owner_username, local_added, self.filename, + self.filename, ) def _store( diff --git a/src/documents/serialisers.py b/src/documents/serialisers.py index 45bf672d8..7e0e8adbf 100644 --- a/src/documents/serialisers.py +++ b/src/documents/serialisers.py @@ -1864,6 +1864,7 @@ class WorkflowActionSerializer(serializers.ModelSerializer): added_time="", owner_username="", original_filename="", + filename="", created="", created_year="", created_year_short="", diff --git a/src/documents/signals/handlers.py b/src/documents/signals/handlers.py index 114654c64..dffffb618 100644 --- a/src/documents/signals/handlers.py +++ b/src/documents/signals/handlers.py @@ -615,6 +615,7 @@ def run_workflows( document.owner.username if document.owner else "", timezone.localtime(document.added), document.original_filename or "", + document.filename or "", timezone.localtime(document.created), ) except Exception: diff --git a/src/documents/templating/title.py b/src/documents/templating/title.py index 1dc668c27..c54a3d376 100644 --- a/src/documents/templating/title.py +++ b/src/documents/templating/title.py @@ -9,6 +9,7 @@ def parse_doc_title_w_placeholders( owner_username: str, local_added: datetime, original_filename: str, + filename: str, created: datetime | None = None, ) -> str: """ @@ -29,6 +30,7 @@ def parse_doc_title_w_placeholders( "added_time": local_added.strftime("%H:%M"), "owner_username": owner_username, "original_filename": Path(original_filename).stem, + "filename": Path(filename).stem, } if created is not None: formatting.update(