diff --git a/admin_interface/static/admin_interface/css/change-form.css b/admin_interface/static/admin_interface/css/change-form.css index 9ba00a1..362ccc5 100644 --- a/admin_interface/static/admin_interface/css/change-form.css +++ b/admin_interface/static/admin_interface/css/change-form.css @@ -1,3 +1,4 @@ +/* fix form submit buttons alignemnt and ordering */ @media (min-width: 768px) { .admin-interface .submit-row { flex-direction: row-reverse; @@ -17,3 +18,17 @@ margin-right: auto; } } +/* endfix */ + +/* fix help-text horizontal alignment when using show-fieldsets-as-tabs / show-inlines-as-tabs options - #317 */ +.admin-interface.show-fieldsets-as-tabs fieldset > .form-row .help, +.admin-interface.show-inlines-as-tabs .inline-related > fieldset .help { + margin-left: 0; + padding-left: 0; +} +.admin-interface.show-fieldsets-as-tabs fieldset > .form-row div:has(.related-widget-wrapper .selector) + .help, +.admin-interface.show-inlines-as-tabs .inline-related > fieldset div:has(.related-widget-wrapper .selector) + .help { + display: flex; + width: 100%; +} +/* endfix */ diff --git a/admin_interface/templates/admin/base_site.html b/admin_interface/templates/admin/base_site.html index 6d3f48c..9df4911 100644 --- a/admin_interface/templates/admin/base_site.html +++ b/admin_interface/templates/admin/base_site.html @@ -147,6 +147,13 @@ admin-interface {% if theme.form_pagination_sticky %} sticky-pagination {% endif %} {% if theme.list_filter_highlight %} list-filter-highlight {% endif %} {% if theme.list_filter_sticky %} list-filter-sticky {% endif %} + +{% admin_interface_use_changeform_tabs adminform inline_admin_formsets as admin_interface_use_changeform_tabs %} +{% if admin_interface_use_changeform_tabs %} + {% if theme.show_fieldsets_as_tabs %} show-fieldsets-as-tabs {% endif %} + {% if theme.show_inlines_as_tabs %} show-inlines-as-tabs {% endif %} +{% endif %} + {% if theme.collapsible_stacked_inlines %} collapsible-stacked-inlines {% if theme.collapsible_stacked_inlines_collapsed %} collapsible-stacked-inlines-collapsed {% endif %} {% endif %} diff --git a/admin_interface/templatetags/admin_interface_tags.py b/admin_interface/templatetags/admin_interface_tags.py index 011aa07..c0c92c4 100644 --- a/admin_interface/templatetags/admin_interface_tags.py +++ b/admin_interface/templatetags/admin_interface_tags.py @@ -171,8 +171,12 @@ def admin_interface_date_hierarchy_removal_link(changelist, date_field_name): @register.simple_tag() def admin_interface_use_changeform_tabs(adminform, inline_forms): theme = get_admin_interface_theme() - has_fieldset_tabs = theme.show_fieldsets_as_tabs and len(adminform.fieldsets) > 1 - has_inline_tabs = theme.show_inlines_as_tabs and len(inline_forms) > 0 + has_fieldset_tabs = ( + theme.show_fieldsets_as_tabs and adminform and len(adminform.fieldsets) > 1 + ) + has_inline_tabs = ( + theme.show_inlines_as_tabs and inline_forms and len(inline_forms) > 0 + ) has_tabs = has_fieldset_tabs or has_inline_tabs return has_tabs