diff --git a/esp-link/cgi.c b/esp-link/cgi.c index d667be3..6d0d79e 100644 --- a/esp-link/cgi.c +++ b/esp-link/cgi.c @@ -190,7 +190,7 @@ int ICACHE_FLASH_ATTR printGlobalInfo(char *buff, int buflen, char *token) { extern char *esp_link_version; // in user_main.c -int ICACHE_FLASH_ATTR cgiMenu(HttpdConnData *connData) { +int ICACHE_FLASH_ATTR cgiMenu(HttpdConnData *connData) { //This is where we can modify the navigation that is auto generated if (connData->conn==NULL) return HTTPD_CGI_DONE; // Connection aborted. Clean up. char buff[1024]; // don't use jsonHeader so the response does get cached diff --git a/esp-link/cgitelnet.c b/esp-link/cgitelnet.c index 0b3d0c9..0530fc8 100644 --- a/esp-link/cgitelnet.c +++ b/esp-link/cgitelnet.c @@ -11,12 +11,12 @@ int ICACHE_FLASH_ATTR cgiTelnetGet(HttpdConnData *connData) { int len; - os_printf("Current telnet ports: port1=%d port2=%d\n", - flashConfig.telnet_port1, flashConfig.telnet_port2); + os_printf("Current telnet ports: port0=%d port1=%d\n", + flashConfig.telnet_port0, flashConfig.telnet_port1); len = os_sprintf(buff, - "{ \"port1\": \"%d\", \"port2\": \"%d\" }", - flashConfig.telnet_port1, flashConfig.telnet_port2); + "{ \"port0\": \"%d\", \"port1\": \"%d\" }", + flashConfig.telnet_port0, flashConfig.telnet_port1); jsonHeader(connData, 200); httpdSend(connData, buff, len); @@ -33,13 +33,13 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) { } int8_t ok = 0; - uint16_t port1, port2; + uint16_t port0, port1; + ok |= getUInt16Arg(connData, "port0", &port0); ok |= getUInt16Arg(connData, "port1", &port1); - ok |= getUInt16Arg(connData, "port2", &port2); if (ok <= 0) { //If we get at least one good value, this should be >= 1 - ets_sprintf(buf, "Unable to fetch telnet ports.\n Received: port1=%d port2=%d\n", - flashConfig.telnet_port1, flashConfig.telnet_port2); + ets_sprintf(buf, "Unable to fetch telnet ports.\n Received: port0=%d port1=%d\n", + flashConfig.telnet_port0, flashConfig.telnet_port1); os_printf(buf); errorResponse(connData, 400, buf); return HTTPD_CGI_DONE; @@ -47,23 +47,23 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) { if (ok > 0) { // fill both port variables from flash or ajax provided value + if (!port0) port0 = flashConfig.telnet_port0; if (!port1) port1 = flashConfig.telnet_port1; - if (!port2) port2 = flashConfig.telnet_port2; // check whether ports are different - if (port1 == port2) { - os_sprintf(buf, "Ports cannot be the same.\n Tried to set: port1=%d port2=%d\n", - flashConfig.telnet_port1, flashConfig.telnet_port2); + if (port0 == port1) { + os_sprintf(buf, "Ports cannot be the same.\n Tried to set: port0=%d port1=%d\n", + flashConfig.telnet_port0, flashConfig.telnet_port1); os_printf(buf); errorResponse(connData, 400, buf); return HTTPD_CGI_DONE; } // we're good, set flashconfig + flashConfig.telnet_port0 = port0; flashConfig.telnet_port1 = port1; - flashConfig.telnet_port2 = port2; - os_printf("Telnet ports changed: port1=%d port2=%d\n", - flashConfig.telnet_port1, flashConfig.telnet_port2); + os_printf("Telnet ports changed: port0=%d port1=%d\n", + flashConfig.telnet_port0, flashConfig.telnet_port1); // save to flash if (configSave()) { @@ -77,8 +77,8 @@ int ICACHE_FLASH_ATTR cgiTelnetSet(HttpdConnData *connData) { // apply the changes serbridgeInit(); - serbridgeStart(0, flashConfig.telnet_port1, flashDefault.telnet_port1mode); - serbridgeStart(1, flashConfig.telnet_port2, flashDefault.telnet_port2mode); + serbridgeStart(0, flashConfig.telnet_port0, flashDefault.telnet_port0mode); + serbridgeStart(1, flashConfig.telnet_port1, flashDefault.telnet_port1mode); } diff --git a/esp-link/config.c b/esp-link/config.c index 98fcd21..ab0f385 100644 --- a/esp-link/config.c +++ b/esp-link/config.c @@ -35,10 +35,10 @@ FlashConfig flashDefault = { .data_bits = EIGHT_BITS, .parity = NONE_BITS, .stop_bits = ONE_STOP_BIT, - .telnet_port1 = 23, - .telnet_port2 = 2323, + .telnet_port0 = 23, + .telnet_port1 = 2323, + .telnet_port0mode = 0, .telnet_port1mode = 0, - .telnet_port2mode = 0, }; typedef union { @@ -166,8 +166,8 @@ bool ICACHE_FLASH_ATTR configRestore(void) { flashConfig.stop_bits = flashDefault.stop_bits; } + if (flashConfig.telnet_port0 == 0) { flashConfig.telnet_port0 = flashDefault.telnet_port0; } if (flashConfig.telnet_port1 == 0) { flashConfig.telnet_port1 = flashDefault.telnet_port1; } - if (flashConfig.telnet_port2 == 0) { flashConfig.telnet_port2 = flashDefault.telnet_port2; } return true; } diff --git a/esp-link/config.h b/esp-link/config.h index 6cbff12..094c044 100644 --- a/esp-link/config.h +++ b/esp-link/config.h @@ -41,10 +41,10 @@ typedef struct { int8_t data_bits; int8_t parity; int8_t stop_bits; - uint16_t telnet_port1, // Telnet port settings - telnet_port2; - int8_t telnet_port1mode, - telnet_port2mode; + uint16_t telnet_port0, // Telnet port settings + telnet_port1; + int8_t telnet_port0mode, + telnet_port1mode; } FlashConfig; extern FlashConfig flashConfig; extern FlashConfig flashDefault; diff --git a/esp-link/main.c b/esp-link/main.c index 49982f4..90202fa 100644 --- a/esp-link/main.c +++ b/esp-link/main.c @@ -182,8 +182,8 @@ user_init(void) { // init the wifi-serial transparent bridge (port 23) serbridgeInit(); - serbridgeStart(0, flashConfig.telnet_port1, flashDefault.telnet_port1mode); - serbridgeStart(1, flashConfig.telnet_port2, flashDefault.telnet_port2mode); + serbridgeStart(0, flashConfig.telnet_port0, flashDefault.telnet_port0mode); + serbridgeStart(1, flashConfig.telnet_port1, flashDefault.telnet_port1mode); uart_add_recv_cb(&serbridgeUartCb); #ifdef SHOW_HEAP_USE diff --git a/html/home.html b/html/home.html index a3d2b87..5bce56b 100644 --- a/html/home.html +++ b/html/home.html @@ -53,19 +53,19 @@
There are two ports available for telnet to use by default: 23 & 2323
- Note - this time, only port1 may be changed & used sucessfully.
Current Telnet ports | |
Telnet port 1: -
+ Click to edit!
Default port: 23 | |
Telnet port 2: -
+ Click to edit!
@@ -175,8 +175,8 @@
onLoad(function() {
makeAjaxInput("system", "description");
makeAjaxInput("system", "name");
+ makeAjaxInput("telnet", "port0");
makeAjaxInput("telnet", "port1");
- makeAjaxInput("telnet", "port2");
fetchPins();
getWifiInfo();
getSystemInfo();
diff --git a/html/ui.js b/html/ui.js
index f4f1cd9..5e83bab 100644
--- a/html/ui.js
+++ b/html/ui.js
@@ -401,6 +401,7 @@ function showNotification(text) {
var el = $("#notification");
el.innerHTML = text;
el.removeAttribute('hidden');
+ // window.scrollTo(0, 0); //Uncomment this line so window will scroll up on regular notifications
if (notifTimeout != null) clearTimeout(notifTimeout);
notifTimout = setTimeout(function() {
el.setAttribute('hidden', '');
Default port: 2323 |