www-thermferm/devices.php

changeset 252
2197976f2bc5
parent 232
bee2600d3d30
child 344
acd840c9fcc0
equal deleted inserted replaced
251:173b4480c4a0 252:2197976f2bc5
54 54
55 55
56 /* 56 /*
57 * Device add 57 * Device add
58 * 58 *
59 * @param string $_POST['Name'] The rpofile name 59 * @param string $_POST['Type'] The device type
60 * @param string $_POST['key'] The pressed key
60 */ 61 */
61 function device_add() { 62 function device_add() {
62 63 if ($_POST['key'] == 'Add')
63 if ($_POST['key'] == 'Add') { 64 send_cmd("DEVICE ADD ".$_POST['Type']);
64
65 $cmd = "DEVICE ADD ".$_POST['Type'];
66
67 $sock = open_socket();
68 if ($sock != false) {
69 /*
70 * Send command and absorb the result.
71 */
72 socket_write($sock, $cmd, 4096);
73 while (1) {
74 $line = socket_read($sock, 4096);
75 if ($line === '')
76 break;
77 }
78 socket_close($sock);
79 }
80 }
81
82 unset($_POST['UUID']); 65 unset($_POST['UUID']);
83 unset($_POST['Name']); 66 unset($_POST['Name']);
84 unset($_POST['key']); 67 unset($_POST['key']);
85 unset($_POST['command']); 68 unset($_POST['command']);
86 load('devices.php'); 69 load('devices.php');
111 if ($_POST['key'] == 'Delete') { 94 if ($_POST['key'] == 'Delete') {
112 send_cmd("DEVICE DEL ".$_POST['UUID']); 95 send_cmd("DEVICE DEL ".$_POST['UUID']);
113 } 96 }
114 97
115 if ($_POST['key'] == 'Save') { 98 if ($_POST['key'] == 'Save') {
116 $sock = open_socket(); 99 $cmd = array("DEVICE PUT ".$_POST['UUID']);
117 if ($sock != false) { 100 $cmd[] = "TYPE,".$_POST['Type'];
118 /* 101 $cmd[] = "DIRECTION,".$_POST['Direction'];
119 * Send command and absorb the result. 102 $cmd[] = "VALUE,".$_POST['Value'];
120 */ 103 $cmd[] = "OFFSET,".$_POST['Offset'];
121 socket_write($sock, "DEVICE PUT ".$_POST['UUID'], 4096); 104 $cmd[] = "PRESENT,".$_POST['Present'];
122 usleep(20000); 105 $cmd[] = "ADDRESS,".$_POST['Address'];
123 socket_write($sock, "TYPE,".$_POST['Type'], 4096); 106 $cmd[] = "SUBDEVICE,".$_POST['Subdevice'];
124 usleep(20000); 107 $cmd[] = "GPIOPIN,".$_POST['Gpiopin'];
125 socket_write($sock, "DIRECTION,".$_POST['Direction'], 4096); 108 $cmd[] = "DESCRIPTION,".$_POST['Description'];
126 usleep(20000); 109 $cmd[] = "COMMENT,".$_POST['Comment'];
127 socket_write($sock, "VALUE,".$_POST['Value'], 4096); 110 $cmd[] = ".";
128 usleep(20000); 111 send_array($cmd);
129 socket_write($sock, "OFFSET,".$_POST['Offset'], 4096);
130 usleep(20000);
131 socket_write($sock, "PRESENT,".$_POST['Present'], 4096);
132 usleep(20000);
133 socket_write($sock, "ADDRESS,".$_POST['Address'], 4096);
134 usleep(20000);
135 socket_write($sock, "SUBDEVICE,".$_POST['Subdevice'], 4096);
136 usleep(20000);
137 socket_write($sock, "GPIOPIN,".$_POST['Gpiopin'], 4096);
138 usleep(20000);
139 socket_write($sock, "DESCRIPTION,".$_POST['Description'], 4096);
140 usleep(20000);
141 socket_write($sock, "COMMENT,".$_POST['Comment'], 4096);
142 usleep(20000);
143 socket_write($sock, '.', 4096);
144 /* Absorb response */
145 while (1) {
146 $line = socket_read($sock, 4096);
147 if ($line === '')
148 break;
149 }
150 socket_close($sock);
151 }
152 } 112 }
153 113
154 unset($_POST['UUID']); 114 unset($_POST['UUID']);
155 unset($_POST['Type']); 115 unset($_POST['Type']);
156 unset($_POST['Direction']); 116 unset($_POST['Direction']);
348 if ($type == "DHT") { 308 if ($type == "DHT") {
349 $se = ($f[1] == "UNDEF")?" selected":""; 309 $se = ($f[1] == "UNDEF")?" selected":"";
350 $outstr .= ' <option value="UNDEF"'.$se.'>Undefined</option>'.PHP_EOL; 310 $outstr .= ' <option value="UNDEF"'.$se.'>Undefined</option>'.PHP_EOL;
351 $se = ($f[1] == "IN_ANALOG")?" selected":""; 311 $se = ($f[1] == "IN_ANALOG")?" selected":"";
352 $outstr .= ' <option value="IN_ANALOG"'.$se.'>Analog input</option>'.PHP_EOL; 312 $outstr .= ' <option value="IN_ANALOG"'.$se.'>Analog input</option>'.PHP_EOL;
313 }
314 if ($type == "I2C") {
315 $se = ($f[1] == "UNDEF")?" selected":"";
316 $outstr .= ' <option value="UNDEF"'.$se.'>Undefined</option>'.PHP_EOL;
317 }
318 if ($type == "SPI") {
319 $se = ($f[1] == "UNDEF")?" selected":"";
320 $outstr .= ' <option value="UNDEF"'.$se.'>Undefined</option>'.PHP_EOL;
353 } 321 }
354 $outstr .= ' </select></td>'.PHP_EOL; 322 $outstr .= ' </select></td>'.PHP_EOL;
355 } 323 }
356 $outstr .= ' </tr>'.PHP_EOL; 324 $outstr .= ' </tr>'.PHP_EOL;
357 } 325 }

mercurial