Browse Source

Deploy updates

Ondřej Hruška 3 years ago
parent
commit
faedddffdd
Signed by: Ondřej Hruška <ondra@ondrovo.com> GPG key ID: 2C5FD5035250423D

+ 7 - 5
about.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>About ESPTerm :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;
@@ -27,6 +27,8 @@
27 27
 	<span class="lead">Validation errors for:</span>&nbsp;<span class="list"></span>
28 28
 </div>
29 29
 
30
+<div class="Box message hidden"></div>
31
+
30 32
 <div class="Box">
31 33
 	<img src="/img/cvut.svg" id="logo" class="mq-tablet-min">
32 34
 	<h2>ESP8266 Remote Terminal</h2>
@@ -50,12 +52,12 @@
50 52
 	<table>
51 53
 		<tr>
52 54
 			<th>ESPTerm</th>
53
-			<td>v???, built 2017-09-24 at&nbsp;20:55 CEST</td>
55
+			<td>v2.0.0, built 2017-09-26 at&nbsp;18:29 CEST</td>
54 56
 		</tr>
55 57
 		<tr>
56 58
 			<th>Git hash</th>
57
-			<td>back-end: <a href="https://github.com/espterm/espterm-firmware/commit/00000000">00000000</a>,
58
-				front-end: <a href="https://github.com/espterm/espterm-front-end/commit/310033b">310033b</td>
59
+			<td>back-end: <a href="https://github.com/espterm/espterm-firmware/commit/8c55202">8c55202</a>,
60
+				front-end: <a href="https://github.com/espterm/espterm-front-end/commit/f5dd70a">f5dd70a</td>
59 61
 		</tr>
60 62
 		<tr>
61 63
 			<th>libesphttpd</th>

+ 7 - 2
cfg_network.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>Network Settings :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;
@@ -27,7 +27,10 @@
27 27
 	<span class="lead">Validation errors for:</span>&nbsp;<span class="list"></span>
28 28
 </div>
29 29
 
30
+<div class="Box message hidden"></div>
30 31
 
32
+
33
+<!-- STA -->
31 34
 <form class="Box str mobcol" action="network_set.html" method="GET" id="form-netsta">
32 35
 	<h2 tabindex=0>DHCP Client (Station)</h2>
33 36
 
@@ -61,6 +64,7 @@
61 64
 	</div>
62 65
 </form>
63 66
 
67
+<!-- AP -->
64 68
 <form class="Box str mobcol" action="network_set.html" method="GET" id="form-netap">
65 69
 	<h2 tabindex=0>DHCP Server (AP)</h2>
66 70
 
@@ -99,6 +103,7 @@
99 103
 	</div>
100 104
 </form>
101 105
 
106
+<!-- MACs -->
102 107
 <div class="Box mobcol">
103 108
 	<h2>MAC addresses</h2>
104 109
 

+ 45 - 14
cfg_system.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>System Settings :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;
@@ -27,6 +27,9 @@
27 27
 	<span class="lead">Validation errors for:</span>&nbsp;<span class="list"></span>
28 28
 </div>
29 29
 
30
+<div class="Box message hidden"></div>
31
+
32
+<!-- Persist -->
30 33
 <div class="Box str mobcol">
31 34
 	<h2 tabindex=0>Save & Restore</h2>
32 35
 
@@ -50,18 +53,44 @@
50 53
 	<div class="Row buttons2">
51 54
 		<a onclick="return confirm('Restore to firmware default settings? This will reset all active settings and switch to AP mode with the default SSID.');"
52 55
 		   href="restore_hard.html">
53
-			Reset active settings to firmware defaults		</a>
54
-	</div>
56
+			Reset active settings to factory defaults		</a><br>
57
+		(This clears the WiFi config! Does not affect saved defaults or admin password.)	</div>
55 58
 </div>
56 59
 
60
+<!-- Overclock -->
61
+<form class="Box str mobcol" action="system_set.html" method="GET" id="form-hw">
62
+	<h2 tabindex=0>Hardware Tuning</h2>
63
+
64
+	<div class="Row explain">
65
+		
66
+		ESP8266 can be overclocked from 80&nbsp;MHz to 160&nbsp;MHz. 
67
+		This will make it more responsive and allow faster screen updates
68
+		at the expense of slightly higher power consumption. This can also make 
69
+		it more susceptible to interference. Use with care.
70
+			</div>
71
+
72
+	<div class="Row checkbox" >
73
+		<label>Overclock to 160MHz</label><!--
74
+		--><span class="box" tabindex=0 role=checkbox></span>
75
+		<input type="hidden" id="overclock" name="overclock" value="">
76
+	</div>
77
+
78
+	<div class="Row buttons">
79
+		<a class="button icn-ok" href="#" onclick="qs('#form-hw').submit()">Apply!</a>
80
+	</div>
81
+</form>
82
+
83
+
57 84
 
58
-<form class="Box str mobcol" action="system_set.html" method="GET" id="form-2">
85
+<!-- Access perms -->
86
+<form class="Box str mobcol" action="system_set.html" method="GET" id="form-access">
59 87
 	<h2 tabindex=0>Access Restrictions</h2>
60 88
 
61 89
 	<div class="Row explain">
62 90
 		
63 91
 		Some parts, or all of the web interface can be protected by a password prompt.
64
-		Leave the new password fields empty if you do not wish to change it.
92
+		Leave the new password fields empty if you do not wish to change it.<br>
93
+		The default password is "%def_access_pw%".
65 94
 		</div>
66 95
 
67 96
 	<div class="Row">
@@ -86,7 +115,7 @@
86 115
 	</div>
87 116
 
88 117
 	<div class="Row">
89
-		<label for="access_pw2">New pass., repeat</label>
118
+		<label for="access_pw2">Repeat</label>
90 119
 		<input type="password" name="access_pw2" id="access_pw2" readonly onfocus="this.removeAttribute('readonly')" style="cursor:text" autocomplete="off">
91 120
 	</div>
92 121
 
@@ -96,11 +125,12 @@
96 125
 	</div>
97 126
 
98 127
 	<div class="Row buttons">
99
-		<a class="button icn-ok" href="#" onclick="qs('#form-2').submit()">Apply!</a>
128
+		<a class="button icn-ok" href="#" onclick="qs('#form-access').submit()">Apply!</a>
100 129
 	</div>
101 130
 </form>
102 131
 
103
-<form class="Box str mobcol" action="system_set.html" method="GET" id="form-3">
132
+<!-- Admin pw -->
133
+<form class="Box str mobcol" action="system_set.html" method="GET" id="form-admin">
104 134
 	<h2 tabindex=0>Change Admin Password</h2>
105 135
 
106 136
 	<div class="Row explain">
@@ -109,26 +139,27 @@
109 139
 		and to change access restrictions. This password is not saved as part 
110 140
 		of the main config, i.e. using save / restore does not affect this 
111 141
 		password. When the admin password is forgotten, the easiest way to
112
-		re-gain access is to wipe and re-flash the chip. 
142
+		re-gain access is to wipe and re-flash the chip.<br>
143
+		The default admin password is "%def_admin_pw%".
113 144
 			</div>
114 145
 
115 146
 	<div class="Row">
116
-		<label for="admin_pw">New admin pass.</label>
147
+		<label for="admin_pw">New admin password</label>
117 148
 		<input type="password" name="admin_pw" id="admin_pw">
118 149
 	</div>
119 150
 
120 151
 	<div class="Row">
121
-		<label for="admin_pw2">New pass., repeat</label>
152
+		<label for="admin_pw2">Repeat</label>
122 153
 		<input type="password" name="admin_pw2" id="admin_pw2">
123 154
 	</div>
124 155
 
125 156
 	<div class="Row">
126
-		<label for="pw">Old admin pass.</label>
157
+		<label for="pw">Old admin password</label>
127 158
 		<input type="password" name="pw" id="pw" required>
128 159
 	</div>
129 160
 
130 161
 	<div class="Row buttons">
131
-		<a class="button icn-ok" href="#" onclick="qs('#form-3').submit()">Apply!</a>
162
+		<a class="button icn-ok" href="#" onclick="qs('#form-admin').submit()">Apply!</a>
132 163
 	</div>
133 164
 </form>
134 165
 

+ 183 - 134
cfg_term.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>Terminal Settings :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;
@@ -27,22 +27,25 @@
27 27
 	<span class="lead">Validation errors for:</span>&nbsp;<span class="list"></span>
28 28
 </div>
29 29
 
30
+<div class="Box message hidden"></div>
31
+
30 32
 <div class="Box">
31 33
 	<a href="reset_screen.html">Reset screen & parser</a>
32 34
 </div>
33 35
 
34
-<form class="Box mobopen str" action="term_set.html" method="GET" id='form-initial'>
35
-	<h2>Initial Settings</h2>
36
+<!-- Theme -->
37
+<form class="Box mobcol str" action="term_set.html" method="GET" id='form-scheme'>
38
+	<h2>Color Scheme</h2>
36 39
 
37 40
 	<div class="Row explain">
38 41
 		
39
-		Those are the initial settings used after ESPTerm powers on or when the screen
40
-		reset command is received. Some options can be changed by the application via escape sequences, 
41
-		those changes won't be saved in Flash.
42
+		To select default text and background color, click on the
43
+		preview palette. Alternatively, use numbers 0-15 for theme colors, 16-255 for standard 
44
+		colors and hex (#FFFFFF) for True Color (24-bit).
42 45
 			</div>
43 46
 
44 47
 	<div class="Row">
45
-		<label for="theme">Color scheme</label>
48
+		<label for="theme">Color palette</label>
46 49
 		<select name="theme" id="theme" class="short" onchange="showColor()">
47 50
 			<option value="0">Tango</option>
48 51
 			<option value="1">Linux (CGA)</option>
@@ -58,100 +61,118 @@
58 61
 	</div>
59 62
 
60 63
 	<div class="Row color-preview">
61
-		<div class="colorprev">
62
-			<span data-fg=0 data-bg="0" style="text-shadow: 0 0 4px white;">30</span><!--
63
-			--><span data-fg=1 data-bg="0">31</span><!--
64
-			--><span data-fg=2 data-bg="0">32</span><!--
65
-			--><span data-fg=3 data-bg="0">33</span><!--
66
-			--><span data-fg=4 data-bg="0">34</span><!--
67
-			--><span data-fg=5 data-bg="0">35</span><!--
68
-			--><span data-fg=6 data-bg="0">36</span><!--
69
-			--><span data-fg=7 data-bg="0">37</span>
70
-		</div>
64
+		<label>Background</label>
65
+		<div>
66
+			<div class="colorprev bg">
67
+				<span data-bg=0 data-fg=15>0</span><!--
68
+				--><span data-bg=1 data-fg=15>1</span><!--
69
+				--><span data-bg=2 data-fg=15>2</span><!--
70
+				--><span data-bg=3 data-fg=0>3</span><!--
71
+				--><span data-bg=4 data-fg=15>4</span><!--
72
+				--><span data-bg=5 data-fg=15>5</span><!--
73
+				--><span data-bg=6 data-fg=15>6</span><!--
74
+				--><span data-bg=7 data-fg=0>7</span>
75
+			</div>
71 76
 
72
-		<div class="colorprev">
73
-			<span data-fg=8 data-bg="0">90</span><!--
74
-			--><span data-fg=9 data-bg="0">91</span><!--
75
-			--><span data-fg=10 data-bg="0">92</span><!--
76
-			--><span data-fg=11 data-bg="0">93</span><!--
77
-			--><span data-fg=12 data-bg="0">94</span><!--
78
-			--><span data-fg=13 data-bg="0">95</span><!--
79
-			--><span data-fg=14 data-bg="0">96</span><!--
80
-			--><span data-fg=15 data-bg="0">97</span>
77
+			<div class="colorprev bg">
78
+				<span data-bg=8 data-fg=15>8</span><!--
79
+				--><span data-bg=9 data-fg=0>9</span><!--
80
+				--><span data-bg=10 data-fg=0>10</span><!--
81
+				--><span data-bg=11 data-fg=0>11</span><!--
82
+				--><span data-bg=12 data-fg=0>12</span><!--
83
+				--><span data-bg=13 data-fg=0>13</span><!--
84
+				--><span data-bg=14 data-fg=0>14</span><!--
85
+				--><span data-bg=15 data-fg=0>15</span>
86
+			</div>
81 87
 		</div>
88
+	</div>
82 89
 
83
-		<div class="colorprev">
84
-			<span data-bg=0 data-fg="15">40</span><!--
85
-			--><span data-bg=1 data-fg="15">41</span><!--
86
-			--><span data-bg=2 data-fg="15">42</span><!--
87
-			--><span data-bg=3 data-fg="0">43</span><!--
88
-			--><span data-bg=4 data-fg="15">44</span><!--
89
-			--><span data-bg=5 data-fg="15">45</span><!--
90
-			--><span data-bg=6 data-fg="15">46</span><!--
91
-			--><span data-bg=7 data-fg="0">47</span>
92
-		</div>
90
+	<div class="Row color-preview">
91
+		<label>Foreground</label>
92
+		<div>
93
+			<div class="colorprev fg">
94
+				<span data-fg=0 data-bg=0 style="text-shadow: 0 0 4px white;">0</span><!--
95
+				--><span data-fg=1 data-bg=0>1</span><!--
96
+				--><span data-fg=2 data-bg=0>2</span><!--
97
+				--><span data-fg=3 data-bg=0>3</span><!--
98
+				--><span data-fg=4 data-bg=0>4</span><!--
99
+				--><span data-fg=5 data-bg=0>5</span><!--
100
+				--><span data-fg=6 data-bg=0>6</span><!--
101
+				--><span data-fg=7 data-bg=0>7</span>
102
+			</div>
93 103
 
94
-		<div class="colorprev">
95
-			<span data-bg=8 data-fg="15">100</span><!--
96
-			--><span data-bg=9 data-fg="0">101</span><!--
97
-			--><span data-bg=10 data-fg="0">102</span><!--
98
-			--><span data-bg=11 data-fg="0">103</span><!--
99
-			--><span data-bg=12 data-fg="0">104</span><!--
100
-			--><span data-bg=13 data-fg="0">105</span><!--
101
-			--><span data-bg=14 data-fg="0">106</span><!--
102
-			--><span data-bg=15 data-fg="0">107</span>
104
+			<div class="colorprev fg">
105
+				<span data-fg=8 data-bg=0>8</span><!--
106
+				--><span data-fg=9 data-bg=0>9</span><!--
107
+				--><span data-fg=10 data-bg=0>10</span><!--
108
+				--><span data-fg=11 data-bg=0>11</span><!--
109
+				--><span data-fg=12 data-bg=0>12</span><!--
110
+				--><span data-fg=13 data-bg=0>13</span><!--
111
+				--><span data-fg=14 data-bg=0>14</span><!--
112
+				--><span data-fg=15 data-bg=0>15</span>
113
+			</div>
103 114
 		</div>
104 115
 	</div>
105 116
 
106 117
 	<div class="Row color-preview">
107
-		<div id="color-example" data-fg="" data-bg="">
118
+		<label>Defaults</label>
119
+		<div class="color-example" data-fg="" data-bg="">
108 120
 			Default colors preview		</div>
109 121
 	</div>
110 122
 
123
+	<div class="Row color-preview">
124
+		<label>Presets</label>
125
+		<div id="fgbg_presets"></div>
126
+	</div>
127
+
111 128
 	<div class="Row">
112
-		<label>Text / background</label>
113
-		<select name="default_fg" id="default_fg" class="short" onchange="showColor()">
114
-						<option value="0">Black</option>
115
-						<option value="1">Red</option>
116
-						<option value="2">Green</option>
117
-						<option value="3">Yellow</option>
118
-						<option value="4">Blue</option>
119
-						<option value="5">Purple</option>
120
-						<option value="6">Cyan</option>
121
-						<option value="7">Silver</option>
122
-						<option value="8">Gray</option>
123
-						<option value="9">Light Red</option>
124
-						<option value="10">Light Green</option>
125
-						<option value="11">Light Yellow</option>
126
-						<option value="12">Light Blue</option>
127
-						<option value="13">Light Purple</option>
128
-						<option value="14">Light Cyan</option>
129
-						<option value="15">White</option>
130
-					</select>&nbsp;<!--
131
-		--><select name="default_bg" id="default_bg" class="short" onchange="showColor()">
132
-						<option value="0">Black</option>
133
-						<option value="1">Red</option>
134
-						<option value="2">Green</option>
135
-						<option value="3">Yellow</option>
136
-						<option value="4">Blue</option>
137
-						<option value="5">Purple</option>
138
-						<option value="6">Cyan</option>
139
-						<option value="7">Silver</option>
140
-						<option value="8">Gray</option>
141
-						<option value="9">Light Red</option>
142
-						<option value="10">Light Green</option>
143
-						<option value="11">Light Yellow</option>
144
-						<option value="12">Light Blue</option>
145
-						<option value="13">Light Purple</option>
146
-						<option value="14">Light Cyan</option>
147
-						<option value="15">White</option>
148
-					</select>
129
+		<div class="SubRow">
130
+			<label for="default_fg">Default fg.</label>
131
+			<input type="text" name="default_fg" id="default_fg" class="short" value="7">
132
+		</div>
133
+		<div class="SubRow">
134
+			<label for="default_bg">Default bg.</label>
135
+			<input type="text" name="default_bg" id="default_bg" class="short" value="0">
136
+		</div>
149 137
 	</div>
150 138
 
151 139
 	<div class="Row">
152
-		<label for="term_width">Width / height</label>
153
-		<input type="number" step=1 min=1 max=255 name="term_width" id="term_width" value="80" required>&nbsp;<!--
154
-		--><input type="number" step=1 min=1 max=255 name="term_height" id="term_height" value="25" required>
140
+		<label>Cursor style</label>
141
+		<select name="cursor_shape" id="cursor_shape">
142
+			<option value="0">Block, blinking</option>
143
+			<option value="2">Block, steady</option>
144
+			<option value="3">Underline, blinking</option>
145
+			<option value="4">Underline, steady</option>
146
+			<option value="5">I-bar, blinking</option>
147
+			<option value="6">I-bar, steady</option>
148
+		</select>
149
+	</div>
150
+
151
+	<div class="Row buttons">
152
+		<a class="button icn-ok" href="#" onclick="qs('#form-scheme').submit()">Apply!</a>
153
+	</div>
154
+</form>
155
+
156
+<!-- Initials -->
157
+<form class="Box mobcol str" action="term_set.html" method="GET" id='form-initial'>
158
+	<h2>Initial Settings</h2>
159
+
160
+	<div class="Row explain">
161
+		
162
+		Those are the initial settings used after ESPTerm powers on, or when the screen
163
+		reset command is received (<code>\ec</code>). They can be changed by the 
164
+		terminal application using escape sequences.
165
+			</div>
166
+
167
+	<div class="Row">
168
+		<div class="SubRow">
169
+			<label for="term_width">Width</label>
170
+			<input type="number" step=1 min=1 max=255 name="term_width" id="term_width" value="80" required>
171
+		</div>
172
+		<div class="SubRow">
173
+			<label for="term_height">Height</label>
174
+			<input type="number" step=1 min=1 max=255 name="term_height" id="term_height" value="25" required>
175
+		</div>
155 176
 	</div>
156 177
 
157 178
 	<div class="Row">
@@ -167,23 +188,32 @@
167 188
 
168 189
 	<div class="Row">
169 190
 		<label>Button labels</label>
170
-		<input class="short" type="text" name="btn1" id="btn1" value="OK">&nbsp;
171
-		<input class="short" type="text" name="btn2" id="btn2" value="Cancel">&nbsp;
172
-		<input class="short" type="text" name="btn3" id="btn3" value="">&nbsp;
173
-		<input class="short" type="text" name="btn4" id="btn4" value="">&nbsp;
174
-		<input class="short" type="text" name="btn5" id="btn5" value="Help">
191
+		<input class="tiny" type="text" name="btn1" id="btn1" value="OK">
192
+		<input class="tiny" type="text" name="btn2" id="btn2" value="Cancel">
193
+		<input class="tiny" type="text" name="btn3" id="btn3" value="">
194
+		<input class="tiny" type="text" name="btn4" id="btn4" value="">
195
+		<input class="tiny" type="text" name="btn5" id="btn5" value="Help">
175 196
 	</div>
176 197
 
177 198
 	<div class="Row">
178
-		<label>Cursor style</label>
179
-		<select name="cursor_shape" id="cursor_shape">
180
-			<option value="0">Block, blinking</option>
181
-			<option value="2">Block, steady</option>
182
-			<option value="3">Underline, blinking</option>
183
-			<option value="4">Underline, steady</option>
184
-			<option value="5">I-bar, blinking</option>
185
-			<option value="6">I-bar, steady</option>
186
-		</select>
199
+		<label>Button codes<br>(ASCII, dec, CSV)</label>
200
+		<input class="tiny" type="text" name="bm1" id="bm1" value="01,121">
201
+		<input class="tiny" type="text" name="bm2" id="bm2" value="01,110">
202
+		<input class="tiny" type="text" name="bm3" id="bm3" value="">
203
+		<input class="tiny" type="text" name="bm4" id="bm4" value="">
204
+		<input class="tiny" type="text" name="bm5" id="bm5" value="05">
205
+	</div>
206
+
207
+	<div class="Row checkbox" >
208
+		<label>Enter = CR+LF (LNM)</label><!--
209
+		--><span class="box" tabindex=0 role=checkbox></span>
210
+		<input type="hidden" id="crlf_mode" name="crlf_mode" value="">
211
+	</div>
212
+
213
+	<div class="Row checkbox" >
214
+		<label>Local Echo (<span style="text-decoration:overline">SRM</span>)</label><!--
215
+		--><span class="box" tabindex=0 role=checkbox></span>
216
+		<input type="hidden" id="loopback" name="loopback" value="">
187 217
 	</div>
188 218
 
189 219
 	<div class="Row buttons">
@@ -191,12 +221,13 @@
191 221
 	</div>
192 222
 </form>
193 223
 
194
-<form class="Box fold str" action="term_set.html" method="GET" id="form-uart">
195
-	<h2 tabindex=0>Serial Port</h2>
224
+<!-- UART -->
225
+<form class="Box mobcol str" action="term_set.html" method="GET" id="form-uart">
226
+	<h2 tabindex=0>Serial Port Parameters</h2>
196 227
 
197 228
 	<div class="Row explain">
198 229
 		
199
-		This form controls the primary, communication UART. The debug UART is fixed 
230
+		This form controls the communication UART. The debug UART is fixed 
200 231
 		at 115.200 baud, one stop-bit and no parity.
201 232
 			</div>
202 233
 
@@ -246,7 +277,8 @@
246 277
 	</div>
247 278
 </form>
248 279
 
249
-<form class="Box fold str" action="term_set.html" method="GET" id='form-expert'>
280
+<!-- Expert terminal opts -->
281
+<form class="Box mobcol str" action="term_set.html" method="GET" id='form-expert'>
250 282
 	<h2>Expert Options</h2>
251 283
 
252 284
 	<div class="Row explain">
@@ -272,15 +304,6 @@
272 304
 		<span class="mq-no-phone">&nbsp;ms</span>
273 305
 	</div>
274 306
 
275
-	<div class="Row">
276
-		<label>Button codes<br>(ASCII, dec, CSV)</label>
277
-		<input class="short" type="text" name="bm1" id="bm1" value="01,121">&nbsp;
278
-		<input class="short" type="text" name="bm2" id="bm2" value="01,110">&nbsp;
279
-		<input class="short" type="text" name="bm3" id="bm3" value="">&nbsp;
280
-		<input class="short" type="text" name="bm4" id="bm4" value="">&nbsp;
281
-		<input class="short" type="text" name="bm5" id="bm5" value="05">
282
-	</div>
283
-
284 307
 	<div class="Row checkbox" >
285 308
 		<label>SS3 Fn keys</label><!--
286 309
 		--><span class="box" tabindex=0 role=checkbox></span>
@@ -294,31 +317,17 @@
294 317
 	</div>
295 318
 
296 319
 	<div class="Row checkbox" >
297
-		<label>Enter sends CR+LF</label><!--
298
-		--><span class="box" tabindex=0 role=checkbox></span>
299
-		<input type="hidden" id="crlf_mode" name="crlf_mode" value="">
300
-	</div>
301
-
302
-	<div class="Row checkbox" >
303 320
 		<label>Show nav links</label><!--
304 321
 		--><span class="box" tabindex=0 role=checkbox></span>
305 322
 		<input type="hidden" id="show_config_links" name="show_config_links" value="1">
306 323
 	</div>
307 324
 
308
-	<div class="Row checkbox" >
309
-		<label>Local Echo</label><!--
310
-		--><span class="box" tabindex=0 role=checkbox></span>
311
-		<input type="hidden" id="loopback" name="loopback" value="">
312
-	</div>
313
-
314 325
 	<div class="Row buttons">
315 326
 		<a class="button icn-ok" href="#" onclick="qs('#form-expert').submit()">Apply!</a>
316 327
 	</div>
317 328
 </form>
318 329
 
319 330
 <script>
320
-	$('#default_fg').val(7);
321
-	$('#default_bg').val(0);
322 331
 	$('#cursor_shape').val();
323 332
 	$('#theme').val(0);
324 333
 
@@ -327,20 +336,60 @@
327 336
     $('#uart_stopbits').val(1);
328 337
 
329 338
 	function showColor() {
330
-		var ex = qs('#color-example');
331
-		ex.dataset.fg = +$('#default_fg').val();
332
-		ex.dataset.bg = +$('#default_bg').val();
339
+		var ex = qs('.color-example');
340
+		var fg = $('#default_fg').val();
341
+		var bg = $('#default_bg').val();
342
+
343
+		if (/^\d+$/.test(fg)) fg = +fg;
344
+		else if (!/^#[\da-f]{6}$/i.test(fg)) {
345
+		  fg = 'black';
346
+		}
347
+
348
+		if (/^\d+$/.test(bg)) bg = +bg;
349
+		else if (!/^#[\da-f]{6}$/i.test(bg)) {
350
+		  bg = 'black';
351
+		}
352
+
353
+		ex.dataset.fg = fg;
354
+		ex.dataset.bg = bg;
355
+
333 356
 		themes.themePreview(+$('#theme').val())
334 357
 	}
335 358
 	showColor();
336 359
 
337
-	$('.colorprev span').on('click', function() {
338
-		var fg = this.dataset.fg;
360
+	$('#default_fg').on('input', showColor)
361
+	$('#default_bg').on('input', showColor)
362
+
363
+	$('.colorprev.bg span').on('click', function() {
339 364
 		var bg = this.dataset.bg;
340
-		if (typeof fg != 'undefined') $('#default_fg').val(fg);
341 365
 		if (typeof bg != 'undefined') $('#default_bg').val(bg);
342 366
 		showColor()
343 367
 	});
368
+
369
+	$('.colorprev.fg span').on('click', function() {
370
+		var fg = this.dataset.fg;
371
+		if (typeof fg != 'undefined') $('#default_fg').val(fg);
372
+		showColor()
373
+	});
374
+
375
+	var $presets = $('#fgbg_presets');
376
+	for(var i = 0; i < themes.fgbgThemes.length; i++) {
377
+	  fg = themes.fgbgThemes[i][0];
378
+	  bg = themes.fgbgThemes[i][1];
379
+      $presets
380
+        .htmlAppend(
381
+          '<span class="preset" ' +
382
+          'data-xfg="'+fg+'" data-xbg="'+bg+'" ' +
383
+          'style="color:'+fg+';background:'+bg+'">&nbsp;['+i+']&nbsp;</span>');
384
+
385
+	  if ((i+1)%5==0) $presets.htmlAppend('<br>');
386
+	}
387
+
388
+	$('.preset').on('click', function() {
389
+      $('#default_fg').val(this.dataset.xfg)
390
+      $('#default_bg').val(this.dataset.xbg)
391
+      showColor()
392
+	});
344 393
 </script>
345 394
 
346 395
 <div class="botpad"></div>

+ 6 - 2
cfg_wifi.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>WiFi Settings :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;
@@ -27,6 +27,9 @@
27 27
 	<span class="lead">Validation errors for:</span>&nbsp;<span class="list"></span>
28 28
 </div>
29 29
 
30
+<div class="Box message hidden"></div>
31
+
32
+<!-- AP -->
30 33
 <form class="Box str mobcol" action="wifi_set.html" method="GET" id="form-ap">
31 34
 	<h2 tabindex=0>Built-in Access Point</h2>
32 35
 
@@ -70,6 +73,7 @@
70 73
 	</div>
71 74
 </form>
72 75
 
76
+<!-- STA -->
73 77
 <form class="Box str mobcol expanded" action="wifi_set.html" method="GET" id="form-sta">
74 78
 	<h2 tabindex=0>Join Existing Network</h2>
75 79
 

+ 2 - 2
cfg_wifi_conn.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>Connecting to Network :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;

File diff suppressed because it is too large
+ 2165 - 0
css/app.f5dd70a.css


File diff suppressed because it is too large
+ 12 - 9
help.html


BIN
img/adapter.jpg.orig View File


BIN
img/vt100.jpg.orig View File


File diff suppressed because it is too large
+ 2 - 0
js/app.f5dd70a.js


File diff suppressed because it is too large
+ 1 - 0
js/app.f5dd70a.js.map


+ 7 - 1
network_set.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
reset_screen.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
restore_defaults.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
restore_hard.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
system_set.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 2 - 2
term.html View File

@@ -5,8 +5,8 @@
5 5
 	<meta http-equiv="X-UA-Compatible" content="IE=edge">
6 6
 	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, maximum-scale=1">
7 7
 	<title>Terminal :: ESPTerm</title>
8
-	<link href="/css/app.310033b.css" rel="stylesheet">
9
-	<script src="/js/app.310033b.js"></script>
8
+	<link href="/css/app.f5dd70a.css" rel="stylesheet">
9
+	<script src="/js/app.f5dd70a.js"></script>
10 10
 	<script>
11 11
 		var _root = location.host;
12 12
 		var _demo = 1;

+ 7 - 1
term_set.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
wifi_connstatus.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
wifi_scan.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
wifi_set.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>

+ 7 - 1
write_defaults.html View File

@@ -1 +1,7 @@
1
-<!DOCTYPE HTML><meta http-equiv="refresh" content="0;url=term.html">
1
+<!DOCTYPE HTML>
2
+			<script>
3
+				var ref = document.referrer;
4
+				var qat = document.referrer.indexOf('?');
5
+				if (qat !== -1) ref = ref.substring(0, qat)
6
+				location.href=ref+'?msg=Request ignored, this is a demo.';
7
+			</script>