MishkaCmsCore.Runtime.Resources.Changes.PublishLayoutDraft (Mishka CMS Core v0.0.3)

Copy Markdown View Source

After a :publish / :master_publish of a MishkaCmsCore.Runtime.LayoutDraft, writes the draft's fields to the live MishkaCmsCore.Runtime.Layout — creating the layout when the draft has no source_layout_id, otherwise updating the existing layout.

The write is scoped to the draft's site (tenant: draft.site_id, authorize?: false) — which is nil for a global layout draft (master-managed) — so it behaves identically for master and tenant publishes and triggers the normal Layout compile pipeline. It runs in an after_action, so a Layout write failure rolls the whole publish transaction back and surfaces the error.

The Layout analogue of MishkaCmsCore.Runtime.Resources.Changes.PublishPageDraft.

Summary

Functions

What publishing draft writes over the layout it was made from: every field it carries but the layout's code. See MishkaCmsCore.Runtime.Resources.Changes.PublishPageDraft.carried/1.

Functions

carried(draft)

@spec carried(struct()) :: map()

What publishing draft writes over the layout it was made from: every field it carries but the layout's code. See MishkaCmsCore.Runtime.Resources.Changes.PublishPageDraft.carried/1.