diff --git a/html_orig/_debug_replacements.php b/html_orig/_debug_replacements.php
index 3ae5e3e..9e80077 100644
--- a/html_orig/_debug_replacements.php
+++ b/html_orig/_debug_replacements.php
@@ -3,19 +3,19 @@
/**
* Those replacements are done by the development server to test it locally
* without esphttpd. This is needed mainly for places where the replacements
- * are given to JavaScript, to avoid syntax errors with %%
+ * are given to JavaScript, to avoid syntax errors with
*/
return [
- '%term_title%' => 'ESPTerm local debug',
+ 'term_title' => 'ESPTerm local debug',
- '%btn1%' => '1',
- '%btn2%' => '2',
- '%btn3%' => '3',
- '%btn4%' => '',
- '%btn5%' => '5',
- '%labels_seq%' => 'TESPTerm local debug1235',
+ 'btn1' => '1',
+ 'btn2' => '2',
+ 'btn3' => '3',
+ 'btn4' => '',
+ 'btn5' => '5',
+ 'labels_seq' => 'TESPTerm local debug1235',
- '%screenData%' => 'HELLOxNRE3',//'\u000b\u0001\u001b\u0001\u0001\u0001\u0001\u0001\f\u0005\u0001\u0010\u0003HELLOx\u0002\u000b\u0001\u0001N\u0001RE\u00023\u0001', //,
+ 'screenData' => 'HELLOxNRE3',//'\u000b\u0001\u001b\u0001\u0001\u0001\u0001\u0001\f\u0005\u0001\u0010\u0003HELLOx\u0002\u000b\u0001\u0001N\u0001RE\u00023\u0001', //,
/*'{
"w": 26, "h": 10,
"x": 10, "y": 5,
@@ -23,50 +23,52 @@ return [
"screen": ""
}',//"70 t259"*/
- '%opmode%' => '2',
- '%sta_enable%' => '0',
- '%ap_enable%' => '1',
+ 'parser_tout_ms' => 10,
- '%tpw%' => '60',
- '%ap_channel%' => '7',
- '%ap_ssid%' => 'ESP-123456',
- '%ap_password%' => 'Passw0rd!',
- '%ap_hidden%' => '0',
+ 'opmode' => '2',
+ 'sta_enable' => '0',
+ 'ap_enable' => '1',
- '%sta_ssid%' => 'Chlivek',
- '%sta_password%' => 'windows XP is The Best',
- '%sta_active_ip%' => '1.2.3.4',
- '%sta_active_ssid%' => 'Chlivek',
+ 'tpw' => '60',
+ 'ap_channel' => '7',
+ 'ap_ssid' => 'ESP-123456',
+ 'ap_password' => 'Passw0rd!',
+ 'ap_hidden' => '0',
- '%vers_fw%' => '1.2.3',
- '%date%' => date('Y-m-d'),
- '%time%' => date('G:i'),
- '%vers_httpd%' => '4.5.6',
- '%vers_sdk%' => '1.52',
- '%githubrepo%' => 'https://github.com/MightyPork/esp-vt100-firmware',
+ 'sta_ssid' => 'Chlivek',
+ 'sta_password' => 'windows XP is The Best',
+ 'sta_active_ip' => '1.2.3.4',
+ 'sta_active_ssid' => 'Chlivek',
- '%ap_dhcp_time%' => '120',
- '%ap_dhcp_start%' => '192.168.4.100',
- '%ap_dhcp_end%' => '192.168.4.200',
- '%ap_addr_ip%' => '192.168.4.1',
- '%ap_addr_mask%' => '255.255.255.0',
+ 'vers_fw' => '1.2.3',
+ 'date' => date('Y-m-d'),
+ 'time' => date('G:i'),
+ 'vers_httpd' => '4.5.6',
+ 'vers_sdk' => '1.52',
+ 'githubrepo' => 'https://github.com/MightyPork/esp-vt100-firmware',
- '%sta_dhcp_enable%' => '1',
- '%sta_addr_ip%' => '192.168.0.33',
- '%sta_addr_mask%' => '255.255.255.0',
- '%sta_addr_gw%' => '192.168.0.1',
+ 'ap_dhcp_time' => '120',
+ 'ap_dhcp_start' => '192.168.4.100',
+ 'ap_dhcp_end' => '192.168.4.200',
+ 'ap_addr_ip' => '192.168.4.1',
+ 'ap_addr_mask' => '255.255.255.0',
- '%sta_mac%' => 'ab:cd:ef:01:23:45',
- '%ap_mac%' => '01:23:45:ab:cd:ef',
+ 'sta_dhcp_enable' => '1',
+ 'sta_addr_ip' => '192.168.0.33',
+ 'sta_addr_mask' => '255.255.255.0',
+ 'sta_addr_gw' => '192.168.0.1',
- '%term_width%' => '26',
- '%term_height%' => '10',
- '%default_bg%' => '0',
- '%default_fg%' => '7',
+ 'sta_mac' => 'ab:cd:ef:01:23:45',
+ 'ap_mac' => '01:23:45:ab:cd:ef',
- '%uart_baud%' => 115200,
- '%uart_stopbits%' => 1,
- '%uart_parity%' => 2,
+ 'term_width' => '26',
+ 'term_height' => '10',
+ 'default_bg' => '0',
+ 'default_fg' => '7',
- '%theme%' => 5,
+ 'uart_baud' => 115200,
+ 'uart_stopbits' => 1,
+ 'uart_parity' => 2,
+
+ 'theme' => 5,
];
diff --git a/html_orig/index.php b/html_orig/index.php
index ced21b6..f100715 100644
--- a/html_orig/index.php
+++ b/html_orig/index.php
@@ -7,12 +7,39 @@ if (!isset($_GET['page'])) $_GET['page'] = 'term';
$_GET['PAGE_TITLE'] = $_pages[$_GET['page']]->title . ' :: ' . APP_NAME;
$_GET['BODYCLASS'] = $_pages[$_GET['page']]->bodyclass;
+if (!function_exists('tplSubs')) {
+ function tplSubs($str, $reps)
+ {
+ return preg_replace_callback('/%(j:|js:|h:|html:)?([a-z0-9-_.]+)%/i', function ($m) use ($reps) {
+ $key = $m[2];
+ if (array_key_exists($key, $reps)) {
+ $val = $reps[$key];
+ } else {
+ $val = '';
+ }
+ switch ($m[1]) {
+ case 'j:':
+ case 'js:':
+ $v = json_encode($val);
+ return substr($v, 1, strlen($v) - 2);
+ case 'h:':
+ case 'html:':
+ return htmlspecialchars($val);
+ default:
+ return $val;
+ }
+ }, $str);
+ }
+}
+
require __DIR__ . '/pages/_head.php';
$_pf = __DIR__ . '/pages/'.$_GET['page'].'.php';
if (file_exists($_pf)) {
$f = file_get_contents($_pf);
- $reps = DEBUG ? require(__DIR__ . '/_debug_replacements.php') : [];
- $str = str_replace(array_keys($reps), array_values($reps), $f);
+
+ if (DEBUG)
+ $str = tplSubs($f, require(__DIR__ . '/_debug_replacements.php'));
+ else $str = $f;
// special symbols
$str = str_replace('\,', ' ', $str);
diff --git a/html_orig/js/app.js b/html_orig/js/app.js
index 9d0b44d..1f7fc48 100644
--- a/html_orig/js/app.js
+++ b/html_orig/js/app.js
@@ -1549,7 +1549,8 @@ var Input = (function() {
return {
init: init,
- onTap: sendPosMsg
+ onTap: sendPosMsg,
+ sendString: sendStrMsg,
};
})();
diff --git a/html_orig/jssrc/term.js b/html_orig/jssrc/term.js
index d46cb40..14edd83 100644
--- a/html_orig/jssrc/term.js
+++ b/html_orig/jssrc/term.js
@@ -357,7 +357,8 @@ var Input = (function() {
return {
init: init,
- onTap: sendPosMsg
+ onTap: sendPosMsg,
+ sendString: sendStrMsg,
};
})();
diff --git a/html_orig/pages/term.php b/html_orig/pages/term.php
index f723cd6..0ecb8d7 100644
--- a/html_orig/pages/term.php
+++ b/html_orig/pages/term.php
@@ -22,7 +22,7 @@
-
+