From 8d622659e25c8f9849b20e6a05ccf4dbb0803827 Mon Sep 17 00:00:00 2001 From: Relintai Date: Sun, 14 Nov 2021 22:25:19 +0100 Subject: [PATCH] Separated the new body top parameter to main and a segment. The main is only rendered to the list, and the segment is only rendered to an editor. --- modules/admin_panel/admin_panel.cpp | 18 +++++++++++++++--- modules/admin_panel/admin_panel.h | 8 ++++++-- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/modules/admin_panel/admin_panel.cpp b/modules/admin_panel/admin_panel.cpp index cfead24..75d7468 100644 --- a/modules/admin_panel/admin_panel.cpp +++ b/modules/admin_panel/admin_panel.cpp @@ -33,6 +33,7 @@ void AdminPanel::handle_request_main(Request *request) { } render_headers(request); + render_segment_body_top(request); render_controller_panel(request, c); render_footer(request); @@ -47,6 +48,7 @@ void AdminPanel::handle_request_main(Request *request) { void AdminPanel::render_admin_panel_list(Request *request) { render_headers(request); + render_main_body_top(request); String rootlink = request->get_url_root(); @@ -110,8 +112,14 @@ void AdminPanel::clear() { void AdminPanel::render_headers(Request *request) { request->head += _default_headers; +} - request->body += _default_body_top; +void AdminPanel::render_main_body_top(Request *request) { + request->body += _default_main_body_top; +} + +void AdminPanel::render_segment_body_top(Request *request) { + request->body += _default_segment_body_top; } void AdminPanel::render_footer(Request *request) { @@ -121,9 +129,13 @@ void AdminPanel::render_footer(Request *request) { void AdminPanel::set_default_header(const String &val) { _default_headers = val; } -void AdminPanel::set_default_body_top(const String &val) { - _default_body_top = val; +void AdminPanel::set_default_main_body_top(const String &val) { + _default_main_body_top = val; } +void AdminPanel::set_default_segment_body_top(const String &val) { + _default_segment_body_top = val; +} + void AdminPanel::set_default_footer(const String &val) { _default_footer = val; } diff --git a/modules/admin_panel/admin_panel.h b/modules/admin_panel/admin_panel.h index b2f8b76..6fba4d8 100644 --- a/modules/admin_panel/admin_panel.h +++ b/modules/admin_panel/admin_panel.h @@ -23,10 +23,13 @@ public: void clear(); virtual void render_headers(Request *request); + virtual void render_main_body_top(Request *request); + virtual void render_segment_body_top(Request *request); virtual void render_footer(Request *request); void set_default_header(const String &val); - void set_default_body_top(const String &val); + void set_default_main_body_top(const String &val); + void set_default_segment_body_top(const String &val); void set_default_footer(const String &val); static AdminPanel *get_singleton(); @@ -46,7 +49,8 @@ protected: Vector _controllers; String _default_headers; - String _default_body_top; + String _default_main_body_top; + String _default_segment_body_top; String _default_footer; };