diff --git a/src/httpserver/http_fns.c b/src/httpserver/http_fns.c index 6d703b8ff..0c26090a8 100644 --- a/src/httpserver/http_fns.c +++ b/src/httpserver/http_fns.c @@ -262,14 +262,26 @@ int http_fn_index(http_request_t *request) { } hprintf128(request,""); hprintf128(request,"
"); - } else if(channelType == ChType_OffLowMidHigh) { - const char *types[]={"Off","Low","Mid","High"}; + } else if(channelType == ChType_OffLowMidHigh || channelType == ChType_OffLowestLowMidHighHighest) { + const char **types; + const char *types4[] = {"Off","Low","Mid","High"}; + const char *types6[] = {"Off", "Lowest", "Low", "Mid", "High", "Highest"}; + int numTypes; int iValue; + + if(channelType == ChType_OffLowMidHigh) { + types = types4; + numTypes = 4; + } else { + types = types6; + numTypes = 6; + } + iValue = CHANNEL_Get(i); hprintf128(request,"

Select speed:

"); hprintf128(request,"",i); - for(j = 0; j < 4; j++) { + for(j = 0; j < numTypes; j++) { const char *check; if(j == iValue) check = "checked"; diff --git a/src/new_pins.c b/src/new_pins.c index 26fa6d927..16a9b96f5 100644 --- a/src/new_pins.c +++ b/src/new_pins.c @@ -953,6 +953,8 @@ int CHANNEL_ParseChannelType(const char *s) { return ChType_LowMidHigh; if(!stricmp(s,"OffLowMidHigh") ) return ChType_OffLowMidHigh; + if(!stricmp(s,"OffLowestLowMidHighHighest") ) + return ChType_OffLowestLowMidHighHighest; if(!stricmp(s,"default") ) return ChType_Default; if(!stricmp(s,"TextField") ) diff --git a/src/new_pins.h b/src/new_pins.h index d60d2d168..68c13c2af 100644 --- a/src/new_pins.h +++ b/src/new_pins.h @@ -50,7 +50,10 @@ enum ChannelType { ChType_LowMidHigh, ChType_TextField, ChType_ReadOnly, + // off (0) and 3 speeds ChType_OffLowMidHigh, + // off (0) and 5 speeds + ChType_OffLowestLowMidHighHighest, };