Temporary workaround until this is fixed. Guard the subtab loop in /usr/local/opnsense/mvc/app/views/layout_partials/base_tabs_content.volt:
- {% for subtab in tab['subtabs']|default({})%}
+ {% for subtab in tab['subtabs']|default({})%}{% if subtab[2] is defined %}
<div id="subtab_{{subtab[0]}}" class="tab-pane fade{% if formData['activetab']|default("") == subtab[0] %} in active {% endif %}">
{{ partial("layout_partials/base_form",['fields':subtab[2],'id':'frm_'~subtab[0],'data_title':subtab[1],'apply_btn_id':'save_'~subtab[0]])}}
</div>
- {% endfor %}
+ {% endif %}{% endfor %}
make a backup first
sudo cp /usr/local/opnsense/mvc/app/views/layout_partials/base_tabs_content.volt /root/base_tabs_content.volt.bak
change the content
sudo sed -i '' \
-e "s/{% for subtab in tab\['subtabs'\]|default({})%}/{% for subtab in tab['subtabs']|default({})%}{% if subtab[2] is defined %}/" \
-e 's/^ {% endfor %}/ {% endif %}{% endfor %}/' \
/usr/local/opnsense/mvc/app/views/layout_partials/base_tabs_content.volt
clear cache
rm -rf /var/lib/php/cache/*
restart webgui
configctl webgui restart