Page_NTPSettings.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. const char PAGE_NTPConfiguration[] PROGMEM = R"=====(
  2. <meta name="viewport" content="width=device-width, initial-scale=1" />
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <a href="admin.html" class="btn btn--s"><</a>&nbsp;&nbsp;<strong>NTP Settings</strong>
  5. <hr>
  6. <form action="" method="get">
  7. <table border="0" cellspacing="0" cellpadding="3" >
  8. <tr><td align="right">NTP Server:</td><td><input type="text" id="ntpserver" name="ntpserver" maxlength="172" value=""></td></tr>
  9. <tr><td align="right">Update:</td><td><input type="text" id="update" name="update" size="3"maxlength="6" value=""> minutes (0=disable)</td></tr>
  10. <tr><td>Timezone</td><td>
  11. <select id="tz" name="tz">
  12. <option value="-120">(GMT-12:00)</option>
  13. <option value="-110">(GMT-11:00)</option>
  14. <option value="-100">(GMT-10:00)</option>
  15. <option value="-90">(GMT-09:00)</option>
  16. <option value="-80">(GMT-08:00)</option>
  17. <option value="-70">(GMT-07:00)</option>
  18. <option value="-60">(GMT-06:00)</option>
  19. <option value="-50">(GMT-05:00)</option>
  20. <option value="-40">(GMT-04:00)</option>
  21. <option value="-35">(GMT-03:30)</option>
  22. <option value="-30">(GMT-03:00)</option>
  23. <option value="-20">(GMT-02:00)</option>
  24. <option value="-10">(GMT-01:00)</option>
  25. <option value="0">(GMT+00:00)</option>
  26. <option value="10">(GMT+01:00)</option>
  27. <option value="20">(GMT+02:00)</option>
  28. <option value="30">(GMT+03:00)</option>
  29. <option value="35">(GMT+03:30)</option>
  30. <option value="40">(GMT+04:00)</option>
  31. <option value="45">(GMT+04:30)</option>
  32. <option value="50">(GMT+05:00)</option>
  33. <option value="55">(GMT+05:30)</option>
  34. <option value="57">(GMT+05:45)</option>
  35. <option value="60">(GMT+06:00)</option>
  36. <option value="65">(GMT+06:30)</option>
  37. <option value="70">(GMT+07:00)</option>
  38. <option value="80">(GMT+08:00)</option>
  39. <option value="90">(GMT+09:00)</option>
  40. <option value="95">(GMT+09:30)</option>
  41. <option value="100">(GMT+10:00)</option>
  42. <option value="110">(GMT+11:00)</option>
  43. <option value="120">(GMT+12:00)</option>
  44. <option value="120">(GMT+12:00)</option>
  45. <option value="130">(GMT+13:00)</option>
  46. </select>
  47. </td></tr>
  48. <tr><td align="right">Daylight saving:</td><td><input type="checkbox" id="dst" name="dst"></td></tr>
  49. <tr><td colspan="2" align="center"><input type="submit" style="width:150px" class="btn btn--m btn--blue" value="Save"></td></tr>
  50. </table>
  51. </form>
  52. <script>
  53. window.onload = function ()
  54. {
  55. load("style.css","css", function()
  56. {
  57. load("microajax.js","js", function()
  58. {
  59. setValues("/admin/ntpvalues");
  60. });
  61. });
  62. }
  63. function load(e,t,n){if("js"==t){var a=document.createElement("script");a.src=e,a.type="text/javascript",a.async=!1,a.onload=function(){n()},document.getElementsByTagName("head")[0].appendChild(a)}else if("css"==t){var a=document.createElement("link");a.href=e,a.rel="stylesheet",a.type="text/css",a.async=!1,a.onload=function(){n()},document.getElementsByTagName("head")[0].appendChild(a)}}
  64. </script>
  65. )=====";
  66. void send_NTP_configuration_html()
  67. {
  68. digitalWrite(Blue_Led, LOW);
  69. if (server.args() > 0 ) // Save Settings
  70. {
  71. config.daylight = false;
  72. String temp = "";
  73. for ( uint8_t i = 0; i < server.args(); i++ ) {
  74. if (server.argName(i) == "ntpserver") config.ntpServerName = urldecode( server.arg(i));
  75. if (server.argName(i) == "update") config.Update_Time_Via_NTP_Every = server.arg(i).toInt();
  76. if (server.argName(i) == "tz") config.timezone = server.arg(i).toInt();
  77. if (server.argName(i) == "dst") config.daylight = true;
  78. }
  79. WriteConfig();
  80. firstStart = true;
  81. }
  82. server.send ( 200, "text/html", PAGE_NTPConfiguration );
  83. Serial.println(__FUNCTION__);
  84. digitalWrite(Blue_Led, HIGH);
  85. }
  86. void send_NTP_configuration_values_html()
  87. {
  88. String values ="";
  89. values += "ntpserver|" + (String) config.ntpServerName + "|input\n";
  90. values += "update|" + (String) config.Update_Time_Via_NTP_Every + "|input\n";
  91. values += "tz|" + (String) config.timezone + "|input\n";
  92. values += "dst|" + (String) (config.daylight ? "checked" : "") + "|chk\n";
  93. server.send ( 200, "text/plain", values);
  94. Serial.println(__FUNCTION__);
  95. }