Initial commit: Grav CMS setup with HTML reference material
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
{% extends "forms/field.html.twig" %}
|
||||
|
||||
{% macro page_options(globals, pages_list) %}
|
||||
{% set field = globals.field %}
|
||||
{% set value = globals.value %}
|
||||
{% if field.options and depth == 0 %}
|
||||
{% for key, value in field.options %}
|
||||
<option value="{{ key|e('html_attr') }}">{{ value|t }}</option>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% for page_route, option in pages_list %}
|
||||
<option {% if page_route == value or (field.multiple and page_route in value) %}selected="selected"{% endif %} value="{{ page_route }}">{{ option|raw }}</option>
|
||||
{% endfor %}
|
||||
{% endmacro %}
|
||||
|
||||
{% import _self as macro %}
|
||||
|
||||
{% block global_attributes %}
|
||||
data-grav-selectize="{{ (field.selectize is defined ? field.selectize : {})|json_encode|e('html_attr') }}"
|
||||
data-grav-field="select"
|
||||
data-grav-disabled="{{ originalValue is null ? 'true' : 'false' }}"
|
||||
data-grav-default="{{ field.default|json_encode|e('html_attr') }}"
|
||||
{% endblock %}
|
||||
|
||||
{% block input %}
|
||||
{% do admin.enablePages %}
|
||||
{% set start_page = field.start_route ? pages.find(field.start_route) : null %}
|
||||
{% set show_all = field.show_all is same as(false) ? false : true %}
|
||||
{% set show_fullpath = field.show_fullpath is same as(true) ? true : false %}
|
||||
{% set show_slug = field.show_slug is same as(true) ? true : false %}
|
||||
{% set show_modular = field.show_modular is same as(true) ? true : false %}
|
||||
{% set limit_levels = field.limit_levels ?: false %}
|
||||
|
||||
{% set page_list = grav.pages.getList(start_page, 0, true, show_all, show_fullpath, show_slug, show_modular, limit_levels) %}
|
||||
|
||||
<div class="form-select-wrapper {{ field.size }}">
|
||||
<select class="{{ field.classes }}" name="{{ (scope ~ field.name)|fieldName ~ (field.multiple ? '[]' : '') }}"
|
||||
{% if field.autofocus in ['on', 'true', 1] %}autofocus="autofocus"{% endif %}
|
||||
{% if field.novalidate in ['on', 'true', 1] %}novalidate="novalidate"{% endif %}
|
||||
{% if field.validate.required in ['on', 'true', 1] %}required="required"{% endif %}
|
||||
{% if field.multiple in ['on', 'true', 1] %}multiple="multiple"{% endif %}
|
||||
{% if field.disabled or isDisabledToggleable %}disabled="disabled"{% endif %}
|
||||
>
|
||||
{% if field.show_root %}
|
||||
<option value="/">/ (root)</option>
|
||||
{% endif %}
|
||||
{{ macro.page_options(_context, page_list) }}
|
||||
</select>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user