From 7b1c64c08eb5fac44777d31ed689362676ef6616 Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 Date: Tue, 28 Dec 2021 20:27:16 +0100 Subject: [PATCH] webserver cleanups --- main/CMakeLists.txt | 2 ++ main/webserver.cpp | 43 +++++++++++++++++++++++++++---- main/webserver.h | 30 --------------------- main/webserver_displaycontrol.cpp | 24 +++++++++++++++++ main/webserver_displaycontrol.h | 20 +------------- main/webserver_dumpnvs.cpp | 21 +++++++++++++++ main/webserver_dumpnvs.h | 17 +----------- main/webserver_newsettings.cpp | 0 main/webserver_newsettings.h | 0 main/webserver_ota.cpp | 20 ++++++++++++++ main/webserver_ota.h | 18 +------------ main/webserver_settings.cpp | 22 ++++++++++++++++ main/webserver_settings.h | 18 +------------ main/webserver_stringsettings.cpp | 17 ++++++++++++ main/webserver_stringsettings.h | 14 +--------- 15 files changed, 149 insertions(+), 117 deletions(-) create mode 100644 main/webserver_newsettings.cpp create mode 100644 main/webserver_newsettings.h diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt index 9e96a9f..ea18466 100644 --- a/main/CMakeLists.txt +++ b/main/CMakeLists.txt @@ -218,6 +218,7 @@ set(headers webserver_ota.h webserver_settings.h webserver_stringsettings.h + webserver_newsettings.h widgets/doubleprogressbar.h displays/menudisplaywithtime.h wifi_bobbycar.h @@ -444,6 +445,7 @@ set(sources webserver_ota.cpp webserver_settings.cpp webserver_stringsettings.cpp + webserver_newsettings.cpp widgets/doubleprogressbar.cpp wifi_bobbycar.cpp wifitexthelpers.cpp diff --git a/main/webserver.cpp b/main/webserver.cpp index 63896e3..88e9ba5 100644 --- a/main/webserver.cpp +++ b/main/webserver.cpp @@ -1,19 +1,50 @@ #include "webserver.h" #include "sdkconfig.h" +// system includes +#include + +// esp-idf includes +#include + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include +#include +#include + +// local includes +#include "webserver_lock.h" +#include "webserver_displaycontrol.h" +#ifdef FEATURE_OTA +#include "webserver_ota.h" +#endif +#include "webserver_settings.h" +#include "webserver_stringsettings.h" +#ifdef OLD_NVS +#include "webserver_dumpnvs.h" +#endif +#include "globals.h" + using namespace std::chrono_literals; #ifdef FEATURE_WEBSERVER namespace { constexpr const char * const TAG = "BOBBYWEB"; -} // namespace -namespace bobbywebserver { -bool forceRefresh{false}; +//bool forceRefresh{false}; bool lastScreenWasMenu{}; int8_t lastSelectIndex{}; std::vector> menuBuf{}; -} + +esp_err_t webserver_reboot_handler(httpd_req_t *req); +bool menuDisplayChanged(); +esp_err_t webserver_status_handler(httpd_req_t *req); +} // namespace bobbywebserver httpd_handle_t httpdHandle; @@ -72,6 +103,8 @@ void handleWebserver() #endif } +namespace { + esp_err_t webserver_reboot_handler(httpd_req_t *req) { esp_restart(); @@ -81,7 +114,6 @@ esp_err_t webserver_reboot_handler(httpd_req_t *req) bool menuDisplayChanged() { - using namespace bobbywebserver; if (auto currentDisplay = static_cast(espgui::currentDisplay.get())) { lastScreenWasMenu = true; @@ -170,4 +202,5 @@ esp_err_t webserver_status_handler(httpd_req_t *req) } } +} // namespace #endif diff --git a/main/webserver.h b/main/webserver.h index f6770b5..6312b93 100644 --- a/main/webserver.h +++ b/main/webserver.h @@ -1,30 +1,9 @@ #pragma once -// system includes -#include -#include - // esp-idf includes #ifdef FEATURE_WEBSERVER #include #endif -#include - -// 3rdparty lib includes -#include -#include - -// local includes -#include "webserver_lock.h" -#include "webserver_displaycontrol.h" -#ifdef FEATURE_OTA -#include "webserver_ota.h" -#endif -#include "webserver_settings.h" -#include "webserver_stringsettings.h" -#ifdef OLD_NVS -#include "webserver_dumpnvs.h" -#endif #ifdef FEATURE_WEBSERVER extern httpd_handle_t httpdHandle; @@ -32,13 +11,4 @@ extern httpd_handle_t httpdHandle; void initWebserver(); void handleWebserver(); bool MenuDisplayChanged(); -esp_err_t webserver_reboot_handler(httpd_req_t *req); -esp_err_t webserver_status_handler(httpd_req_t *req); - -namespace bobbywebserver { -extern bool forceRefresh; -extern bool lastScreenWasMenu; -extern int8_t lastSelectIndex; -extern std::vector> menuBuf; -} #endif diff --git a/main/webserver_displaycontrol.cpp b/main/webserver_displaycontrol.cpp index 78f96f8..61ce8bc 100644 --- a/main/webserver_displaycontrol.cpp +++ b/main/webserver_displaycontrol.cpp @@ -1,5 +1,29 @@ #include "webserver_displaycontrol.h" +// esp-idf includes +#ifdef FEATURE_WEBSERVER +#include +#endif +#include + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// local includes +#include "buttons.h" +#include "globals.h" +#include "webserver_lock.h" + #ifdef FEATURE_WEBSERVER using esphttpdutils::HtmlTag; using namespace std::chrono_literals; diff --git a/main/webserver_displaycontrol.h b/main/webserver_displaycontrol.h index 2fd9d72..7a7736e 100644 --- a/main/webserver_displaycontrol.h +++ b/main/webserver_displaycontrol.h @@ -4,25 +4,7 @@ #ifdef FEATURE_WEBSERVER #include #endif -#include - -// 3rdparty lib includes -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -// local includes -#include "buttons.h" -#include "globals.h" -#include "webserver_lock.h" +#include #ifdef FEATURE_WEBSERVER esp_err_t webserver_root_handler(httpd_req_t *req); diff --git a/main/webserver_dumpnvs.cpp b/main/webserver_dumpnvs.cpp index 8750640..7094b69 100644 --- a/main/webserver_dumpnvs.cpp +++ b/main/webserver_dumpnvs.cpp @@ -1,5 +1,26 @@ #include "webserver_dumpnvs.h" +// esp-idf includes +#ifdef FEATURE_WEBSERVER +#include +#endif +#include + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include +#include +#include + +// local includes +#include "globals.h" +#include "webserver_lock.h" +#include "settingsutils.h" + using esphttpdutils::HtmlTag; using namespace espchrono; using namespace std::chrono_literals; diff --git a/main/webserver_dumpnvs.h b/main/webserver_dumpnvs.h index c8306aa..9653e26 100644 --- a/main/webserver_dumpnvs.h +++ b/main/webserver_dumpnvs.h @@ -4,22 +4,7 @@ #ifdef FEATURE_WEBSERVER #include #endif -#include - -// 3rdparty lib includes -#include -#include -#include -#include -#include -#include -#include -#include - -// local includes -#include "globals.h" -#include "webserver_lock.h" -#include "settingsutils.h" +#include #ifdef FEATURE_WEBSERVER esp_err_t webserver_dump_nvs_handler(httpd_req_t *req); diff --git a/main/webserver_newsettings.cpp b/main/webserver_newsettings.cpp new file mode 100644 index 0000000..e69de29 diff --git a/main/webserver_newsettings.h b/main/webserver_newsettings.h new file mode 100644 index 0000000..e69de29 diff --git a/main/webserver_ota.cpp b/main/webserver_ota.cpp index 93b72b3..706758b 100644 --- a/main/webserver_ota.cpp +++ b/main/webserver_ota.cpp @@ -1,6 +1,26 @@ #include "webserver_ota.h" +// esp-idf includes +#ifdef FEATURE_WEBSERVER +#include +#endif +#include +#include + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include +#include + // local includes +#ifdef FEATURE_OTA +#include "ota.h" +#endif +#include "webserver_lock.h" #include "globals.h" #if defined(FEATURE_WEBSERVER) && defined(FEATURE_OTA) diff --git a/main/webserver_ota.h b/main/webserver_ota.h index 81c11e3..c76ed46 100644 --- a/main/webserver_ota.h +++ b/main/webserver_ota.h @@ -4,23 +4,7 @@ #ifdef FEATURE_WEBSERVER #include #endif -#include -#include - -// 3rdparty lib includes -#include -#include -#include -#include -#include -#include -#include - -// local includes -#ifdef FEATURE_OTA -#include "ota.h" -#endif -#include "webserver_lock.h" +#include #if defined(FEATURE_WEBSERVER) && defined(FEATURE_OTA) esp_err_t webserver_ota_handler(httpd_req_t *req); diff --git a/main/webserver_settings.cpp b/main/webserver_settings.cpp index 0868bae..9af8304 100644 --- a/main/webserver_settings.cpp +++ b/main/webserver_settings.cpp @@ -1,5 +1,27 @@ #include "webserver_settings.h" +// system includes +#include + +// esp-idf includes +#ifdef FEATURE_WEBSERVER +#include +#endif +#include + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include +#include + +// local includes +#include "globals.h" +#include "webserver_lock.h" + #ifdef FEATURE_WEBSERVER using namespace std::chrono_literals; using esphttpdutils::HtmlTag; diff --git a/main/webserver_settings.h b/main/webserver_settings.h index 71647ab..db6c309 100644 --- a/main/webserver_settings.h +++ b/main/webserver_settings.h @@ -1,26 +1,10 @@ #pragma once -// system includes -#include - // esp-idf includes #ifdef FEATURE_WEBSERVER #include #endif -#include - -// 3rdparty lib includes -#include -#include -#include -#include -#include -#include -#include - -// local includes -#include "globals.h" -#include "webserver_lock.h" +#include #ifdef FEATURE_WEBSERVER esp_err_t webserver_settings_handler(httpd_req_t *req); diff --git a/main/webserver_stringsettings.cpp b/main/webserver_stringsettings.cpp index 716a1a0..f398d36 100644 --- a/main/webserver_stringsettings.cpp +++ b/main/webserver_stringsettings.cpp @@ -1,5 +1,22 @@ #include "webserver_stringsettings.h" +// esp-idf includes +#ifdef FEATURE_WEBSERVER +#include +#endif + +// 3rdparty lib includes +#include +#include +#include +#include +#include +#include + +// local includes +#include "globals.h" +#include "webserver_lock.h" + #ifdef FEATURE_WEBSERVER using namespace std::chrono_literals; using esphttpdutils::HtmlTag; diff --git a/main/webserver_stringsettings.h b/main/webserver_stringsettings.h index 0e881f4..abd4309 100644 --- a/main/webserver_stringsettings.h +++ b/main/webserver_stringsettings.h @@ -4,19 +4,7 @@ #ifdef FEATURE_WEBSERVER #include #endif -#include - -// 3rdparty lib includes -#include -#include -#include -#include -#include -#include - -// local includes -#include "globals.h" -#include "webserver_lock.h" +#include #ifdef FEATURE_WEBSERVER esp_err_t webserver_stringSettings_handler(httpd_req_t *req);