diff --git a/.gitignore b/.gitignore index 83980cca..e65d6fd8 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,9 @@ data/* !data/edit.htm !data/edit.htm.gz +!data/vars.css +!data/style.css +!data/style.css.gz src/user_setups/active/* include/user_config_override.h src/user_config_override.h diff --git a/data/style.css b/data/style.css new file mode 100644 index 00000000..de23e58c --- /dev/null +++ b/data/style.css @@ -0,0 +1 @@ +:root{--star:url('data:image/svg+xml,')}.c,body{text-align:center}.clear{clear:both}.foot{color:var(--txt);background-color:transparent!important;all:revert;float:right;margin:0;font-size:11px}input:not([type=file]){background-color:var(--fldbg);color:var(--fldfg)}input[type=checkbox],input[type=radio]{width:1em}select{background-color:var(--fldbg);color:var(--fldfg)}input:invalid{border:1px solid var(--redbg)}body{font-family:verdana;width:60%;margin:auto;background:var(--bg);color:var(--txt)}.red{background-color:var(--btnred)}.red:focus,.red:hover{background-color:var(--btnredhi)}#doc{text-align:left;display:inline-block;color:var(--txt);width:100%;min-width:260px;max-width:700px;display:table;clear:both;padding:0 20px;margin:20px}td{font-size:.87rem;padding-bottom:0;padding-top:0}th{padding-top:.5em}*{box-sizing:border-box}a,input,select,textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:.6rem;resize:vertical}label{padding:12px 18px 12px 0;display:inline-block}.required{background-image:var(--star);background-size:1.5em 1.5em;background-position:right;background-repeat:no-repeat}a,button,input[type=submit]{padding:12px;border:1px solid var(--btnbrd);border-radius:.6rem;background-color:var(--btnbg);color:var(--btnfg);font-size:1rem;width:100%;margin:12px 0;display:flex;align-items:center;justify-content:center;text-decoration:none}a:hover,button:hover,input[type=submit]:hover{background-color:var(--btnbghi)}.container{border-radius:.6rem;background-color:var(--grpbg);padding:10px;margin:20px 0}.col-25{float:left;width:25%;text-align:right;margin:0}.col-75{margin:0;float:left;width:75%}.row:after{content:"";display:table;clear:both}.row{font-size:.833rem;margin:5px}.gap,.row:last-of-type{margin:5px 5px 20px 5px}.menu{width:100%;content:"";display:table;clear:both;padding:0 20px;margin:20px}.error,.info,.success,.validation,.warning{border:1px solid;margin:10px auto;padding:15px 10px 15px 50px;background-repeat:no-repeat;background-position:10px center;max-width:460px}@media screen and (max-width:800px){.col-25,.col-75,input[type=submit]{width:100%;margin-top:0}.col-25{text-align:left}label{padding:5px 18px 5px 0}} \ No newline at end of file diff --git a/data/style.css.gz b/data/style.css.gz new file mode 100644 index 00000000..4bab67bd Binary files /dev/null and b/data/style.css.gz differ diff --git a/data/vars.css b/data/vars.css new file mode 100644 index 00000000..54fe4b58 --- /dev/null +++ b/data/vars.css @@ -0,0 +1,13 @@ +:root { + --txt: #000; + --bg: #fff; + --btnfg: #fff; + --btnbg: #1fa3ec; + --btnbghi: #0083cc; + --grpbg: #f2f2f2; + --fldbg: #fff; + --fldfg: #000; + --btnred: #f00; + --btnredhi: #b00; + --btnbrd: transparent; +} \ No newline at end of file diff --git a/platformio.ini b/platformio.ini index 5a5f91df..fbf850b2 100644 --- a/platformio.ini +++ b/platformio.ini @@ -101,6 +101,7 @@ board_build.partitions = user_setups/esp32/partitions_4MB.csv board_build.filesystem = littlefs board_build.embed_files = data/edit.htm.gz + data/style.css.gz ; ----- crash reporter monitor_filters = esp32_exception_decoder diff --git a/src/sys/svc/hasp_http.cpp b/src/sys/svc/hasp_http.cpp index 3182bdcc..f8654eb5 100644 --- a/src/sys/svc/hasp_http.cpp +++ b/src/sys/svc/hasp_http.cpp @@ -106,6 +106,8 @@ WebServer webServer(80); #if defined(CONFIG_IDF_TARGET_ESP32) extern const uint8_t EDIT_HTM_GZ_START[] asm("_binary_data_edit_htm_gz_start"); extern const uint8_t EDIT_HTM_GZ_END[] asm("_binary_data_edit_htm_gz_end"); +extern const uint8_t STYLE_CSS_GZ_START[] asm("_binary_data_style_css_gz_start"); +extern const uint8_t STYLE_CSS_GZ_END[] asm("_binary_data_style_css_gz_end"); #endif // CONFIG_IDF_TARGET_ESP32 #endif // ESP32 @@ -115,19 +117,17 @@ HTTPUpload* upload; static const char HTTP_MENU_BUTTON[] PROGMEM = "
"; -const char MAIN_MENU_BUTTON[] PROGMEM = - ""; -const char MIT_LICENSE[] PROGMEM = "MIT License"; +const char MAIN_MENU_BUTTON[] PROGMEM = "" D_HTTP_MAIN_MENU ""; +const char MIT_LICENSE[] PROGMEM = "MIT License"; const char HTTP_DOCTYPE[] PROGMEM = ""; const char HTTP_META_GO_BACK[] PROGMEM = ""; const char HTTP_HEADER[] PROGMEM = "