Merge commit '33a5e5b3cb81e960e10d7ae8d4b3a2940d38660b'

This commit is contained in:
Alex Tudorache
2016-03-04 09:12:39 +02:00
2 changed files with 29 additions and 4 deletions
+25 -3
View File
@@ -12,7 +12,8 @@
#include "WiFiManager.h"
WiFiManagerParameter::WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length) {
WiFiManagerParameter::WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, int rofield) {
_id = id;
_placeholder = placeholder;
_length = length;
@@ -23,6 +24,25 @@ WiFiManagerParameter::WiFiManagerParameter(const char *id, const char *placehold
if (defaultValue != NULL) {
strncpy(_value, defaultValue, length);
}
if (rofield == 0) {
_rofield = " readonly";
} else {
_rofield = "";
}
}
WiFiManagerParameter::WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length) {
_id = id;
_placeholder = placeholder;
_length = length;
_value = new char[length + 1];
for (int i = 0; i < length; i++) {
_value[i] = 0;
}
if (defaultValue != NULL) {
strncpy(_value, defaultValue, length);
}
_rofield = "";
}
const char* WiFiManagerParameter::getValue() {
@@ -37,6 +57,9 @@ const char* WiFiManagerParameter::getPlaceholder() {
int WiFiManagerParameter::getValueLength() {
return _length;
}
const char* WiFiManagerParameter::getRofield() {
return _rofield;
}
WiFiManager::WiFiManager() {
}
@@ -426,6 +449,7 @@ void WiFiManager::handleWifi(boolean scan) {
snprintf(parLength, 2, "%d", _params[i]->getValueLength());
pitem.replace("{l}", parLength);
pitem.replace("{v}", _params[i]->getValue());
pitem.replace("{r}", _params[i]->getRofield());
page += pitem;
}
@@ -690,5 +714,3 @@ String WiFiManager::toStringIp(IPAddress ip) {
res += String(((ip >> 8 * 3)) & 0xFF);
return res;
}
+4 -1
View File
@@ -31,7 +31,7 @@ const char HTTP_PORTAL_OPTIONS[] PROGMEM = "<form action=\"/wifi\" method=\"get\
const char HTTP_ITEM[] PROGMEM = "<div><a href='#p' onclick='c(this)'>{v}</a>&nbsp;<span class='q {i}'>{r}%</span></div>";
//const char HTTP_ITEM_PADLOCK[] PROGMEM = "<img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAALVBMVEX///8EBwfBwsLw8PAzNjaCg4NTVVUjJiZDRUUUFxdiZGSho6OSk5Pg4eFydHTCjaf3AAAAZElEQVQ4je2NSw7AIAhEBamKn97/uMXEGBvozkWb9C2Zx4xzWykBhFAeYp9gkLyZE0zIMno9n4g19hmdY39scwqVkOXaxph0ZCXQcqxSpgQpONa59wkRDOL93eAXvimwlbPbwwVAegLS1HGfZAAAAABJRU5ErkJggg==' width='13px'/>";
const char HTTP_FORM_START[] PROGMEM = "<form method='get' action='wifisave'><input id='s' name='s' length=32 placeholder='SSID'><br/><input id='p' name='p' length=64 type='password' placeholder='password'><br/>";
const char HTTP_FORM_PARAM[] PROGMEM = "<br/><input id='{i}' name='{n}' length={l} placeholder='{p}' value='{v}'>";
const char HTTP_FORM_PARAM[] PROGMEM = "<br/><input id='{i}' name='{n}' length={l} placeholder='{p}' value='{v}' {r}>";
const char HTTP_FORM_END[] PROGMEM = "<br/><button type='submit'>save</button></form>";
const char HTTP_SCAN_LINK[] PROGMEM = "<br/><div class=\"c\"><a href=\"/wifi\">Scan</a></div>";
@@ -43,16 +43,19 @@ const char HTTP_END[] PROGMEM = "</div></body></html>";
class WiFiManagerParameter {
public:
WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length);
WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, int rofield);
const char *getID();
const char *getValue();
const char *getPlaceholder();
int getValueLength();
const char *getRofield();
private:
const char *_id;
const char *_placeholder;
char *_value;
int _length;
const char *_rofield;
friend class WiFiManager;
};