Thu, 24 Jul 2014 20:45:15 +0200
Always use uuid to select units and remove numeric record id's.
130
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | <?php |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
2 | /***************************************************************************** |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | * Copyright (C) 2014 |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | * |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | * Michiel Broek <mbroek at mbse dot eu> |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | * |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | * This file is part of ThermFerm |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | * |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | * This is free software; you can redistribute it and/or modify it |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | * under the terms of the GNU General Public License as published by the |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
11 | * Free Software Foundation; either version 2, or (at your option) any |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | * later version. |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
13 | * |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
14 | * ThermFerm is distributed in the hope that it will be useful, but |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
15 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
17 | * General Public License for more details. |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
18 | * |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
19 | * You should have received a copy of the GNU General Public License |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
20 | * along with ThermFerm; see the file COPYING. If not, write to the Free |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
21 | * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
22 | *****************************************************************************/ |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
23 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
24 | require_once('utilities.php'); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
25 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
26 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
27 | $sock = open_socket(); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
28 | if ($sock == false) { |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
29 | echo ""; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
30 | return; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
31 | } |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
32 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
33 | socket_write($sock, "LIST", 4096); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
34 | $answer = ""; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
35 | while (1) { |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
36 | $line = socket_read($sock, 4096); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
37 | if ($line === '') |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
38 | break; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
39 | $answer .= $line; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
40 | } |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
41 | socket_close($sock); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
42 | $arr = explode("\r\n", $answer); |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
43 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
44 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
45 | $row = '['; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
46 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
47 | /* We don't use json_encode because it doesn't work for our purpose */ |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
48 | if (startsWith($arr[0], "212")) { |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
49 | $j = 1; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
50 | while (1) { |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
51 | if (strcmp($arr[$j], ".") == 0) |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
52 | break; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
53 | if ($j > 1) |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
54 | $row .= ','; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
55 | $f = explode(",", $arr[$j]); |
131
528dc0bb81ab
Always use uuid to select units and remove numeric record id's.
Michiel Broek <mbroek@mbse.eu>
parents:
130
diff
changeset
|
56 | $row .= '{"UUID":"'.$f[0].'","Name":"'.$f[1].'","Mode":"'.$f[2].'"}'; |
130
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
57 | $j++; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
58 | } |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
59 | } |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
60 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
61 | $row .= ']'; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
62 | echo $row; |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
63 | |
25158b08843f
Added maintenance tabs for units and profiles
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
64 | ?> |