www-thermferm/profiles.php

changeset 378
313efe6bf5b3
parent 274
111b0e9663dc
child 379
50675fd80fed
equal deleted inserted replaced
377:6570b282eaef 378:313efe6bf5b3
255 255
256 $result = test_thesteps(); 256 $result = test_thesteps();
257 $error = ''; 257 $error = '';
258 258
259 switch ($result) { 259 switch ($result) {
260 case 0: $sock = open_socket(); 260 case 0: $cmd = array("PROFILE PUTS ".$_POST['UUID']);
261 if ($sock != false) { 261 for ($i = 1; $i <= 8; $i++) {
262 socket_write($sock, 'PROFILE PUTS '.$_POST['UUID'], 4096);
263 for ($i = 1; $i <= 8; $i++) {
264 /*
265 * Use small delays so the remote really sees single lines.
266 * This is a real bug between client/server programming,
267 * the PHP side is line oriented, the server is reading blocks.
268 * So we just send the data slowly and the server just sees lines.
269 */
270 if (($_POST['steptime'.$i] > 0) || ($_POST['resttime'.$i] > 0)) { 262 if (($_POST['steptime'.$i] > 0) || ($_POST['resttime'.$i] > 0)) {
271 usleep(20000); 263 $cmd[] = $_POST['steptime'.$i].','.$_POST['resttime'.$i].','.$_POST['target'.$i];
272 socket_write($sock, $_POST['steptime'.$i].','.$_POST['resttime'.$i].','.$_POST['target'.$i], 4096);
273 }
274 unset($_POST['steptime'.$i]);
275 unset($_POST['resttime'.$i]);
276 unset($_POST['target'.$i]);
277 } 264 }
278 usleep(20000); 265 unset($_POST['steptime'.$i]);
279 socket_write($sock, '.', 4096); 266 unset($_POST['resttime'.$i]);
280 /* Absorb response */ 267 unset($_POST['target'.$i]);
281 while (1) { 268 }
282 $line = socket_read($sock, 4096); 269 $cmd[] = ".";
283 if ($line === '') 270 send_array($cmd);
284 break; 271 unset($_POST['UUID']);
285 } 272 unset($_POST['key']);
286 socket_close($sock); 273 load('profiles.php');
287 unset($_POST['UUID']); 274 return;
288 unset($_POST['key']);
289 load('profiles.php');
290 return;
291 }
292 break; 275 break;
293 case 1: $error = 'Missing data'; 276 case 1: $error = 'Missing data';
294 break; 277 break;
295 case 2: $error = 'A resttime is shorter then the steptime'; 278 case 2: $error = 'A resttime is shorter then the steptime';
296 break; 279 break;

mercurial