4#include "../src/wifi_manager.h"
171inline void logWebRequest(
const String& method,
const String& uri,
const String& clientIP)
174 if (uri.startsWith(
"/sensor_json") || uri.startsWith(
API_SENSOR))
177 logDebugSafe(
"\1", method.c_str(), uri.c_str(), clientIP.c_str());
182 logInfoSafe(
"\1", method.c_str(), uri.c_str(), clientIP.c_str());
193String
generateForm(
const String& action,
const String& method,
const String& formContent,
const String& buttonText,
194 const String& buttonIcon);
204String
generateInputField(
const String&
id,
const String& name,
const String& label,
const String& value,
205 const String& type =
"text",
bool required =
false,
const String& placeholder =
"");
215String
generateNumberField(
const String&
id,
const String& name,
const String& label,
int value,
int min,
int max,
279String
generateSuccessPage(
const String& title,
const String& message,
const String& redirectUrl =
"",
280 int redirectDelay = 2);
289String
generateBasePage(
const String& title,
const String& content,
const String& icon =
"");
#define API_SENSOR
Definition jxct_strings.h:8
Система логгирования с красивым форматированием
void logInfoSafe(const char *format, Args &&... args)
Definition logger.h:112
void logDebugSafe(const char *format, Args &&... args)
Definition logger.h:118
bool checkCSRFSafety()
Middleware для проверки CSRF на POST запросах
Definition csrf_protection.cpp:104
String generateBasePage(const String &title, const String &content, const String &icon="")
Генерация базовой HTML структуры с навигацией
Definition web_templates.cpp:360
void setupConfigRoutes()
Настройка маршрутов для конфигурации
Definition routes_config.cpp:88
String generateErrorPage(int errorCode, const String &errorMessage)
Генерация страницы ошибки
Definition web_templates.cpp:367
void setupReportsRoutes()
Настройка маршрутов отчетов
Definition routes_reports.cpp:396
bool isRouteAvailable(const String &uri)
Проверка доступности маршрута в текущем режиме
Definition error_handlers.cpp:266
void logWebRequest(const String &method, const String &uri, const String &clientIP)
Логирование веб-запросов
Definition web_routes.h:171
String generateApModeUnavailablePage(const String &title, const String &icon)
Генерация страницы "Недоступно в AP режиме".
Definition web_templates.cpp:396
void handleStatus()
Обработчик страницы статуса (уже существует в wifi_manager.cpp)
Definition wifi_manager.cpp:391
void handleCriticalError(const String &error)
Обработка критических ошибок сервера
Definition error_handlers.cpp:251
void handleReset()
Обработчик сброса системы
void handleAdvanced()
Обработчик страницы сложных настроек (лог, алгоритм, временная зона)
void setupServiceRoutes()
Настройка сервисных маршрутов (/reset, /status, /info)
Definition routes_service.cpp:41
void handleReadingsUpload()
Обработчик загрузки калибровочных файлов
Definition routes_data.cpp:149
void sendSensorJson()
Отправка JSON данных датчиков
Definition routes_data.cpp:213
void handleIntervals()
Обработчик страницы настроек интервалов
void setupMainRoutes()
Настройка основных маршрутов (/, /save, /status)
Definition routes_main.cpp:9
String generateConfigSection(const String &title, const String &content, const String &helpText="")
Генерация секции конфигурации
String generateValidationErrorResponse(const String &errorMsg)
Генерация HTML ответа с ошибкой валидации
Definition error_handlers.cpp:233
void handleUploadError(const String &error)
Обработка ошибок загрузки файлов
void handleApiConfigImport()
Обработчик API импорта конфигурации
void setupErrorHandlers()
Настройка обработчиков ошибок (404, 500, и т.д.)
Definition error_handlers.cpp:107
void handleRoot()
Обработчик главной страницы (уже существует в wifi_manager.cpp)
Definition routes_main.cpp:179
String generateNumberField(const String &id, const String &name, const String &label, int value, int min, int max, int step=1)
Генерация числового поля с валидацией
void handleReadings()
Обработчик главной страницы показаний
bool validateCSRFToken(const String &token)
Проверка CSRF токена
Definition csrf_protection.cpp:60
String generateInputField(const String &id, const String &name, const String &label, const String &value, const String &type="text", bool required=false, const String &placeholder="")
Генерация поля ввода
String getCSRFHiddenField()
Получение скрытого поля с CSRF токеном для форм
Definition csrf_protection.cpp:93
String generateCSRFToken()
Генерация CSRF токена
Definition csrf_protection.cpp:31
void initCSRFProtection()
Инициализация CSRF защиты
Definition csrf_protection.cpp:172
void handleUpdateStatus()
Обработчик обновления статуса
String generateSuccessPage(const String &title, const String &message, const String &redirectUrl="", int redirectDelay=2)
Генерация страницы успеха
Definition web_templates.cpp:378
String generatePageHeader(const String &title, const String &icon="")
Генерация заголовка HTML страницы
Definition web_templates.cpp:347
String generatePageFooter()
Генерация футера HTML страницы
Definition web_templates.cpp:355
String generateForm(const String &action, const String &method, const String &formContent, const String &buttonText, const String &buttonIcon)
Генерация формы с общими элементами
bool validateConfigInput(bool checkRequired=true)
Валидация входных данных конфигурации
Definition error_handlers.cpp:129
void handleInfo()
Обработчик информации о системе
String methodToString(HTTPMethod method)
Преобразование HTTP метода в строку
Definition csrf_protection.cpp:145
void handleApiConfigExport()
Обработчик API экспорта конфигурации
void setupOtaRoutes()
Настройка маршрутов OTA обновлений
Definition routes_ota.cpp:30
String generateCheckboxField(const String &id, const String &name, const String &label, bool checked)
Генерация поля чекбокса
void setupDataRoutes()
Настройка маршрутов для данных датчиков
Definition routes_data.cpp:434
bool isFeatureAvailable()
Проверка доступности функции в текущем режиме WiFi (без параметров)
Definition error_handlers.cpp:223
String generateFormError(const String &message)
Генерация сообщения об ошибке в форме