diff --git a/src/AutoConnect.h b/src/AutoConnect.h index 4f3b4be..5dc5492 100644 --- a/src/AutoConnect.h +++ b/src/AutoConnect.h @@ -53,6 +53,7 @@ typedef enum AC_ONBOOTURI { /**< An enumerated type of the designated menu items. */ typedef enum AC_MENUITEM { + AC_MENUITEM_NONE = 0x0000, AC_MENUITEM_CONFIGNEW = 0x0001, AC_MENUITEM_OPENSSIDS = 0x0002, AC_MENUITEM_DISCONNECT = 0x0004, diff --git a/src/AutoConnectPage.cpp b/src/AutoConnectPage.cpp index 4acd000..21a16a5 100644 --- a/src/AutoConnectPage.cpp +++ b/src/AutoConnectPage.cpp @@ -1360,22 +1360,41 @@ String AutoConnect::_token_CURRENT_SSID(PageArgument& args) { return ssid; } +/** + * Generate AutoConnect menu item configured by AutoConnectConfig::attachMenu. + * @param item An enumerated value for the generating item configured in AutoConnectConfig. + * @return HTML string of a li tag with the menu item. + */ String AutoConnect::_attachMenuItem(const AC_MENUITEM_t item) { - String liItem = String(F("
  • " AUTOCONNECT_MENULABEL_CONFIGNEW)); - else if (_apConfig.attachMenu & AC_MENUITEM_OPENSSIDS) - liItem += String(F(">" AUTOCONNECT_MENULABEL_OPENSSIDS)); - else if (_apConfig.attachMenu & AC_MENUITEM_DISCONNECT) - liItem += String(F(">" AUTOCONNECT_MENULABEL_DISCONNECT)); - else if (_apConfig.attachMenu & AC_MENUITEM_RESET) - liItem += String(F(" id=\"reset\">" AUTOCONNECT_MENULABEL_RESET)); - else if (_apConfig.attachMenu & AC_MENUITEM_HOME) - liItem += String(F(">" AUTOCONNECT_MENULABEL_HOME)); - else if (_apConfig.attachMenu & AC_MENUITEM_DEVINFO) - liItem += String(F(">" AUTOCONNECT_MENULABEL_DEVICEINFO)); - liItem += String(F("
  • ")); - return liItem; + AC_MENUITEM_t liItem = static_cast(_apConfig.attachMenu & static_cast(item)); + String li = String(F("
  • " AUTOCONNECT_MENULABEL_RESET)); + else { + li += String(F(">" AUTOCONNECT_MENULABEL_CONFIGNEW)); + break; + case AC_MENUITEM_OPENSSIDS: + li += String(F(AUTOCONNECT_URI_OPEN "\">" AUTOCONNECT_MENULABEL_OPENSSIDS)); + break; + case AC_MENUITEM_DISCONNECT: + li += String(F(AUTOCONNECT_URI_DISCON "\">" AUTOCONNECT_MENULABEL_DISCONNECT)); + break; + case AC_MENUITEM_DEVINFO: + li += String(F(AUTOCONNECT_URI "\">" AUTOCONNECT_MENULABEL_DEVICEINFO)); + break; + case AC_MENUITEM_HOME: + li += String(F("HOME_URI\">" AUTOCONNECT_MENULABEL_HOME)); + break; + default: + li = _emptyString; + break; + } + } + li += String(F("
  • ")); + return li; } /**