Normalize template and script slug changes.

This commit is contained in:
2026-07-21 23:18:12 +02:00
parent e28d42d345
commit 8a6274ef6a
8 changed files with 312 additions and 41 deletions

View File

@@ -224,6 +224,12 @@ rule CreateScript {
rule UpdateScript {
when: UpdateScriptRequested(script, changes)
ensures: ScriptFieldsUpdated(script, changes)
if changes.slug != null:
ensures: script.slug = unique_slug(slugify(changes.slug), excluding: script)
if script.file_path != "":
ensures: script.file_path = format("scripts/{slug}.lua", slug: script.slug)
ensures: ScriptFileWritten(script)
ensures: PreviousScriptFileDeleted(script)
ensures: script.updated_at = now
ensures: script.version = script.version + 1
}

View File

@@ -129,6 +129,12 @@ rule CreateAndPublishTemplate {
rule UpdateTemplate {
when: UpdateTemplateRequested(template, changes)
ensures: TemplateFieldsUpdated(template, changes)
if changes.slug != null:
ensures: template.slug = unique_slug(slugify(changes.slug), excluding: template)
if template.file_path != "":
ensures: template.file_path = format("templates/{slug}.liquid", slug: template.slug)
ensures: TemplateFileWritten(template)
ensures: PreviousTemplateFileDeleted(template)
ensures: template.updated_at = now
ensures: template.version = template.version + 1
}