{# app/templates/admin/content-page-edit.html #} {% extends "admin/base.html" %} {% from 'shared/macros/alerts.html' import loading_state, error_state, alert_dynamic %} {% from 'shared/macros/headers.html' import page_header_flex, back_button, action_button %} {% from 'shared/macros/inputs.html' import number_stepper %} {% from 'shared/macros/richtext.html' import quill_css, quill_js, quill_editor %} {% block title %}{% if page_id %}Edit{% else %}Create{% endif %} Content Page{% endblock %} {% block alpine_data %}contentPageEditor({{ page_id if page_id else 'null' }}){% endblock %} {% block quill_css %} {{ quill_css() }} {% endblock %} {% block quill_script %} {{ quill_js() }} {% endblock %} {% block content %} {# Dynamic title/subtitle and save button text based on create vs edit mode #}

Create a new platform default or vendor-specific page Modify an existing content page

{{ back_button('/admin/content-pages', 'Back to List') }}
{{ loading_state('Loading page...') }} {{ error_state('Error', show_condition='error && !loading') }} {{ alert_dynamic(type='success', message_var='successMessage', show_condition='successMessage') }}

Basic Information

URL-safe identifier (lowercase, numbers, hyphens, underscores only)

Platform defaults are shown to all vendors This page will only be visible for the selected vendor

Page Content

{{ quill_editor( id='content-editor', model='form.content', placeholder='Write your content here...', min_height='300px', toolbar='full', help_text='Use the toolbar to format your content. Supports headings, lists, links, images, and more.' ) }}

Enter Markdown content. Will be converted to HTML when displayed.

SEO & Metadata

/300 characters (150-160 recommended)

Navigation & Display

{{ number_stepper(model='form.display_order', min=0, max=100, step=1, label='Display Order') }}

Lower = first

Make this page visible to the public

{% endblock %} {% block extra_scripts %} {% endblock %}