www-thermferm/global.php

Sun, 10 Aug 2014 16:17:03 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sun, 10 Aug 2014 16:17:03 +0200
changeset 207
8d2ba4126519
parent 173
7259ee8778e9
child 253
7b6abc0dd1c6
permissions
-rw-r--r--

Added global setup

134
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 <?php
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 /*****************************************************************************
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 * Copyright (C) 2014
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 *
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 * Michiel Broek <mbroek at mbse dot eu>
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 *
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 * This file is part of ThermFerm
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 *
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * This is free software; you can redistribute it and/or modify it
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * under the terms of the GNU General Public License as published by the
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * Free Software Foundation; either version 2, or (at your option) any
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 * later version.
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 *
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * ThermFerm is distributed in the hope that it will be useful, but
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * WITHOUT ANY WARRANTY; without even the implied warranty of
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 * General Public License for more details.
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 *
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 * along with ThermFerm; see the file COPYING. If not, write to the Free
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 *****************************************************************************/
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
173
7259ee8778e9 More style updates
Michiel Broek <mbroek@mbse.eu>
parents: 134
diff changeset
24 require_once('utilities.php');
134
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25
207
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
26
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
27 if (isset($_POST['action'])) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
28 if ($_POST['action'] == "testdata")
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
29 testdata();
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
30 } else {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
31 edit_screen("");
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
32 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
33
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
34
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
35 exit;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
36
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
37
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
38 /*****************************************************************************
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
39 *
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
40 */
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
41
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
42
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
43 function global_update() {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
44
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
45 if ($_POST['key'] == 'Save') {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
46 $sock = open_socket();
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
47 if ($sock != false) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
48 /*
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
49 * Send command and absorb the result.
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
50 */
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
51 socket_write($sock, "GLOBAL PUT", 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
52 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
53 socket_write($sock, "NAME,".$_POST['Name'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
54 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
55 socket_write($sock, "PORT,".$_POST['Port'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
56 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
57 socket_write($sock, "TEMP_ADDRESS,".$_POST['TempAddress'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
58 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
59 socket_write($sock, "HUM_ADDRESS,".$_POST['HumAddress'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
60 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
61 if (isset($_POST['LCDcols'])) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
62 socket_write($sock, "LCD_COLS,".$_POST['LCDcols'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
63 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
64 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
65 if (isset($_POST['LCDrows'])) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
66 socket_write($sock, "LCD_ROWS,".$_POST['LCDrows'], 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
67 usleep(20000);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
68 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
69 socket_write($sock, ".", 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
70 while (1) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
71 $line = socket_read($sock, 4096);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
72 if ($line === '')
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
73 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
74 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
75 socket_close($sock);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
76 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
77 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
78
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
79 unset($_POST['Name']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
80 unset($_POST['Port']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
81 unset($_POST['TempAddress']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
82 unset($_POST['HumAddress']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
83 unset($_POST['LCDcols']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
84 unset($_POST['LCDrows']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
85 unset($_POST['key']);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
86 load('global.php');
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
87 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
88
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
89
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
90
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
91 function test_thedata() {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
92
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
93 if (isset($_POST['Name']) && isset($_POST['Port']) &&
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
94 isset($_POST['TempAddress']) && isset($_POST['HumAddress']) &&
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
95 isset($_POST['key'])) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
96
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
97 if ($_POST['key'] == 'Cancel')
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
98 return 99;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
99
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
100 if (isset($_POST['LCDcols']) && (($_POST['LCDcols'] != 16) && ($_POST['LCDcols'] != 20)))
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
101 return 2;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
102
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
103 if (isset($_POST['LCDrows']) && (($_POST['LCDrows'] != 2) && ($_POST['LCDrows'] != 4)))
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
104 return 3;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
105
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
106 } else {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
107 return 1;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
108 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
109
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
110 return 0;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
111 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
112
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
113
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
114
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
115 function testdata()
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
116 {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
117 $result = test_thedata();
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
118 $error = '';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
119
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
120 switch ($result) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
121 case 0: global_update();
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
122 return;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
123 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
124 case 1: $error = 'Missing data';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
125 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
126 case 2: $error = 'LCD columns must be 16 or 20';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
127 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
128 case 3: $error = 'LCD rows must be 2 or 4';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
129 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
130 case 99:
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
131 load('global.php');
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
132 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
133 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
134
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
135 edit_screen($error);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
136 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
137
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
138
134
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
139
207
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
140 function edit_screen($error_message)
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
141 {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
142 /*
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
143 * Get list of devices, we need it later
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
144 */
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
145 $answer = send_cmd("DEVICE LIST");
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
146 $devices = explode("\r\n", $answer);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
147
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
148 /*
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
149 * Get current global data
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
150 */
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
151 $answer = send_cmd("GLOBAL GET");
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
152 $reply = explode("\r\n", $answer);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
153
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
154 $outstr = build_header("ThermFerm - Global Setup");
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
155 $outstr .= ' <div id="errors">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
156 $outstr .= ' '.$error_message.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
157 $outstr .= ' </div> <!-- errors -->'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
158 $outstr .= ' <div id="etable">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
159 $outstr .= ' <form method="POST" action="global.php">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
160 $outstr .= ' <table class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
161 $outstr .= ' <tr class="trhead">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
162 $outstr .= ' <td class="setup" colspan="2" style="text-align: center; height: 20px; padding-top: 5px;">Global Setup</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
163 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
164
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
165 if (startsWith($reply[0], "213")) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
166 $i = 1;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
167 while (1) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
168 if (strcmp($reply[$i], ".") == 0)
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
169 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
170 $f = explode(",", $reply[$i]);
134
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
171
207
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
172 if ($f[0] == "NAME") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
173 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
174 $outstr .= ' <td class="editname">System Name</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
175 $outstr .= ' <td class="editfield"><input type="text" name="Name" size="50" value="'.$f[1].'"></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
176 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
177 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
178 if ($f[0] == "PORT") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
179 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
180 $outstr .= ' <td class="editname">Telnet port</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
181 $outstr .= ' <td class="editfield"><input type="text" name="Port" size="5" value="'.$f[1].'"></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
182 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
183 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
184 if ($f[0] == "TEMP_ADDRESS") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
185 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
186 $outstr .= ' <td class="editname">Room temperature sensor</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
187 $outstr .= ' <td class="editfield"><select name="TempAddress">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
188 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
189 if (startsWith($devices[0], "212")) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
190 $j = 1;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
191 while (1) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
192 if (strcmp($devices[$j], ".") == 0)
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
193 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
194 $g = explode(",", $devices[$j]);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
195 if ($g[5] == "IN_ANALOG") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
196 ($f[1] == $g[0]) ? $se = " selected" : $se = "";
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
197 $outstr .= ' <option value="'.$g[0].'"'.$se.'>'.$g[1].' '.$g[4].'</option>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
198 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
199 $j++;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
200 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
201 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
202 $outstr .= ' </select></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
203 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
204 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
205 if ($f[0] == "HUM_ADDRESS") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
206 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
207 $outstr .= ' <td class="editname">Room humidity sensor</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
208 $outstr .= ' <td class="editfield"><select name="HumAddress">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
209 $outstr .= ' <option value="">Not Assigned</option>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
210 if (startsWith($devices[0], "212")) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
211 $j = 1;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
212 while (1) {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
213 if (strcmp($devices[$j], ".") == 0)
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
214 break;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
215 $g = explode(",", $devices[$j]);
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
216 if ($g[5] == "IN_ANALOG") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
217 ($f[1] == $g[0]) ? $se = " selected" : $se = "";
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
218 $outstr .= ' <option value="'.$g[0].'"'.$se.'>'.$g[1].' '.$g[4].'</option>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
219 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
220 $j++;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
221 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
222 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
223 $outstr .= ' </select></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
224 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
225 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
226 if ($f[0] == "LCD_COLS") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
227 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
228 $outstr .= ' <td class="editname">LCD columns</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
229 $outstr .= ' <td class="editfield"><input type="text" name="LCDcols" size="5" value="'.$f[1].'"></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
230 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
231 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
232 if ($f[0] == "LCD_ROWS") {
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
233 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
234 $outstr .= ' <td class="editname">LCD rows</td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
235 $outstr .= ' <td class="editfield"><input type="text" name="LCDrows" size="5" value="'.$f[1].'"></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
236 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
237 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
238 $i++;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
239 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
240 }
134
f05601490415 Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
241
207
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
242 $outstr .= ' <tr class="editor">'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
243 $outstr .= ' <td class="editname"><input type="submit" value="Save" name="key"></td>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
244 $outstr .= ' <td class="editfield"><input type="submit" value="Cancel" name="key">';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
245 $outstr .= '<input type="hidden" value="testdata" name="action">';
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
246 $outstr .= ' </tr>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
247 $outstr .= ' </table>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
248 $outstr .= ' </form>'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
249 $outstr .= ' </div> <!-- etable -->'.PHP_EOL;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
250 $outstr .= build_footer();
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
251
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
252 echo $outstr;
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
253 }
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
254
8d2ba4126519 Added global setup
Michiel Broek <mbroek@mbse.eu>
parents: 173
diff changeset
255

mercurial