1 |
<? |
<? |
2 |
// INCLUDE UND TABELLEN-DEFINITIONEN |
// INCLUDE UND TABELLEN-DEFINITIONEN |
3 |
include('include/basesql.php'); |
include('include/basesql.php'); |
4 |
$tabs = array('cfg_graphic', 'cfg_network', 'cfg_input', 'client_auth', 'cfg_autostart', 'client_serials', 'cfg_comments', 'cfg_printers', 'cfg_sessions', 'cfg_modules', 'cfg_other_menuitems', 'cfg_screensaver', 'client_version'); |
include('include/common-functions.php'); |
|
$multi= array( 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0); |
|
|
$data = array(); |
|
5 |
|
|
6 |
|
// INCLUDE CURRENT-PROBLEMS |
7 |
|
include('include/current-problems.php'); |
8 |
|
|
9 |
// get alx version info for |
$tabs = array('cfg_graphic', 'cfg_network', 'cfg_input', 'client_auth', 'cfg_autostart', 'client_serials', 'cfg_comments', 'cfg_printers', 'cfg_sessions', 'cfg_modules', 'cfg_other_menuitems', 'cfg_screensaver', 'client_version', 'cfg_plugins'); |
10 |
$alxinfo = sqlfirst('SELECT * FROM client_version WHERE serial='.$id); |
$multi= array( 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1); |
11 |
$alxos = $alxinfo[os]; |
$data = array(); |
|
$alxutils = $alxinfo[utils]; |
|
12 |
|
|
|
if($kill==1) |
|
|
{ |
|
|
foreach($tabs as $t) mysql_query('UPDATE '.$t.' SET serial=-serial WHERE serial='.$id); |
|
13 |
|
|
14 |
echo '<body onload="window.setTimeout(\'window.close()\', 1750)">'; |
// get alx version info for |
15 |
echo '<table width=100% height=100% style="border:solid black 1px; background-color:#d5e5ff"><tr><td valign=middle align=center>'; |
$alxinfo = sqlfirst('SELECT * FROM client_version WHERE serial='.$id); |
16 |
|
$alxos = $alxinfo[os]; |
17 |
|
$alxutils = $alxinfo[utils]; |
18 |
|
|
19 |
if($id<0) echo 'ACTIVATED #'.abs($id); |
// get gfxdriver |
20 |
else echo 'DEACTIVATED #'.$id; |
$gfxinfo = sqlfirst('SELECT * FROM cfg_graphic WHERE serial='.$id); |
21 |
|
|
22 |
echo '</td></tr></table>'; |
if($kill==1) |
23 |
return true; |
{ |
24 |
} |
foreach($tabs as $t) mysql_query('UPDATE '.$t.' SET serial=-serial WHERE serial='.$id); |
25 |
|
|
26 |
|
echo '<body onload="window.setTimeout(\'window.close()\', 1750)">'; |
27 |
|
echo '<table width=100% height=100% style="border:solid black 1px; background-color:#d5e5ff"><tr><td valign=middle align=center>'; |
28 |
|
|
29 |
|
if($id<0) echo 'ACTIVATED #'.abs($id); |
30 |
|
else echo 'DEACTIVATED #'.$id; |
31 |
|
|
32 |
// FELD-DEFINITIONEN (ARRAY=>DROPDOWN / HIDDEN / IGNORE / 1 / BOLD / PASSWORD / SHOW / SHOWTIME / MONITORID) |
echo '</td></tr></table>'; |
33 |
$drop = array(); |
return true; |
34 |
if($alxos >= '0.5.3') |
} |
35 |
|
|
36 |
|
// FELD-DEFINITIONEN (ARRAY=>DROPDOWN / HIDDEN / IGNORE / 1 / BOLD / PASSWORD / SHOW / SHOWTIME / MONITORID) |
37 |
|
$drop = array(); |
38 |
|
if($alxos >= '0.6.0') |
39 |
|
{ |
40 |
|
if($alxos >= '0.6.2') |
41 |
{ |
{ |
42 |
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'via'); |
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'mach64', 'mga', 'unichrome', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'vmware'); |
43 |
} |
} |
44 |
else |
else |
45 |
{ |
{ |
46 |
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i810', 'i710', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'via'); |
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'mach64', 'mga', 'openchrome', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'vmware'); |
47 |
} |
} |
48 |
$drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x960', '1280x1024', '1360x768', '1366x768', '1400x1050', '1440x900', '1600x1200', '1680x1050'); |
if($gfxinfo[module] == 'intel') |
|
$drop['depth'] = array('24', '16', '8'); |
|
|
$drop['mouse'] = array('Auto', 'IMPS/2', 'PS/2'); |
|
|
$drop['cfg_network_module'] = array('3c59x', '8139too', '8139cp', 'e100', 'ne2k-pci', 'pcnet32', 'sis900', 'via-rhine', 'zd1211', 'b44', 'bnx2', 'dl2k', 'e1000', 'r8169', 'sk98lin', 'tg3', 'via-velocity'); |
|
|
$drop['networking'] = array('dhcp', 'static'); |
|
|
$drop['port'] = array('lpt1', 'usb1', 'usb2', 'com1', 'com2', 'lpd', 'socket', 'ipp'); |
|
|
$drop['location'] = sqlarr('SELECT location FROM client_locations', '', 'location'); |
|
|
$drop['id'] = 'hidden'; |
|
|
$drop['flg_modified'] = '1'; |
|
|
$drop['serial'] = 'ignore'; |
|
|
if($alxos>='0.5.3') |
|
49 |
{ |
{ |
50 |
$drop['monitorid'] = 'ignore'; |
$drop['cfg_graphic_hdmi'] = array('disable', 'enable'); |
|
$drop['refresh_rate'] = array('','60','75','85','100'); |
|
51 |
} |
} |
52 |
else |
else |
53 |
{ |
{ |
54 |
$drop['monitorid'] = 'monitorid'; |
$drop['cfg_graphic_hdmi'] = 'ignore'; |
|
$drop['refresh_rate'] = 'ignore'; |
|
55 |
} |
} |
56 |
$drop['hostname'] = 'bold'; |
} |
57 |
$drop['session'] = 'bold'; |
else if($alxos >= '0.5.3') |
58 |
|
{ |
59 |
|
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'mach64', 'mga', 'openchrome', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng'); |
60 |
|
$drop['cfg_graphic_hdmi'] = 'ignore'; |
61 |
|
} |
62 |
|
else |
63 |
|
{ |
64 |
|
$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i810', 'i710', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'via'); |
65 |
|
$drop['cfg_graphic_hdmi'] = 'ignore'; |
66 |
|
} |
67 |
|
$drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x960', '1280x1024', '1360x768', '1366x768', '1400x1050', '1440x900', '1600x1200', '1680x1050', '1280x720', '1920x1080'); |
68 |
|
$drop['depth'] = array('24', '16', '8'); |
69 |
|
$drop['mouse'] = array('Auto', 'IMPS/2', 'PS/2'); |
70 |
|
$drop['keyboard'] = array('PC105'); |
71 |
|
if($alxos >= '0.6.0') |
72 |
|
{ |
73 |
|
$drop['cfg_network_module'] = array('3c509', '3c59x', '8139cp', '8139too', '8390', 'amd8111e', 'atl1c', 'atl1e', 'atl1', 'atl2', 'b44', 'bnx2', 'cnic', 'e100', 'e1000', 'e1000e', 'forcedeth', 'igb', 'ipg', 'jme', 'natsemi', 'ne2k-pci', 'ns83820', 'pcnet32', 'qla3xxx', 'r8169', 'sis190', 'sis900', 'skge', 'sky2', 'tg3', 'typhoon', 'via-rhine', 'via-velocity', 'adm8211', 'airo', 'at76c50x-usb', 'ar9170usb', 'ath5k', 'ath9k', 'atmel', 'b43', 'b43legacy', 'hostap_pci', 'hostap_plx', 'ipw2100', 'ipw2200', 'iwl3945', 'usb8xxx', 'libertas_tf', 'libertas_tf_usb', 'mwl8k', 'orinoco', 'orinoco_nortel', 'orinoco_plx', 'orinoco_tmd', 'orinoco_usb', 'p54pci', 'p54usb', 'prism54', 'rndis_wlan', 'rt2400pci', 'rt2500pci', 'rt2500usb', 'rt2800pci', 'rt2800usb', 'rt61pci', 'rt73usb', 'rtl8180', 'rtl8187', 'wl1251', 'wl1271', 'zd1201', 'zd1211rw'); |
74 |
|
} |
75 |
|
else |
76 |
|
{ |
77 |
|
$drop['cfg_network_module'] = array('3c59x', '8139too', '8139cp', 'e100', 'ne2k-pci', 'pcnet32', 'sis900', 'via-rhine', 'zd1211', 'b44', 'bnx2', 'dl2k', 'e1000', 'forcedeth', 'r8169', 'sk98lin', 'tg3', 'via-velocity'); |
78 |
|
} |
79 |
|
$drop['networking'] = array('dhcp', 'static'); |
80 |
|
// 0.6.0 does not support lpd, ipp and socket printing atm |
81 |
|
if($alxos>='0.6.0') |
82 |
|
{ |
83 |
|
$drop['port'] = array('lpt1', 'usb1', 'usb2', 'com1', 'com2'); |
84 |
|
for ($i=0; $i<999; $i++) { $drop['cfg_printers_'.$i.'_ip'] = 'ignore'; } |
85 |
|
$drop['share'] = 'ignore'; |
86 |
|
} |
87 |
|
else |
88 |
|
{ |
89 |
|
$drop['port'] = array('lpt1', 'usb1', 'usb2', 'com1', 'com2', 'lpd', 'socket', 'ipp'); |
90 |
|
} |
91 |
|
$drop['location'] = sqlarr('SELECT location FROM client_locations', '', 'location'); |
92 |
|
$drop['id'] = 'hidden'; |
93 |
|
$drop['flg_modified'] = '1'; |
94 |
|
$drop['serial'] = 'ignore'; |
95 |
|
if($alxos>='0.5.3') |
96 |
|
{ |
97 |
|
$drop['monitorid'] = 'ignore'; |
98 |
|
$drop['refresh_rate'] = array('','60','75','85','100'); |
99 |
|
} |
100 |
|
else |
101 |
|
{ |
102 |
|
$drop['monitorid'] = 'monitorid'; |
103 |
|
$drop['refresh_rate'] = 'ignore'; |
104 |
|
} |
105 |
|
$drop['hostname'] = 'bold'; |
106 |
|
$drop['session'] = 'bold'; |
107 |
|
if($alxos>='0.6.0') |
108 |
|
{ |
109 |
|
$drop['cfg_autostart_session'] = sqlarr('SELECT filename FROM cfg_sessions where serial='.$id, '', 'filename'); |
110 |
|
array_unshift($drop['cfg_autostart_session'], ""); |
111 |
|
} |
112 |
|
else |
113 |
|
{ |
114 |
$drop['cfg_autostart_session'] = 'filename'; |
$drop['cfg_autostart_session'] = 'filename'; |
115 |
$drop['mtime'] = 'showtime'; |
} |
116 |
$drop['mac'] = 'show'; |
$drop['mtime'] = 'showtime'; |
117 |
$drop['client_serials_serial'] = 'show'; |
$drop['mac'] = 'show'; |
118 |
$drop['password'] = 'password'; |
$drop['client_serials_serial'] = 'show'; |
119 |
$drop['shell'] = 'password'; |
$drop['password'] = 'password'; |
120 |
$drop['vnc'] = 'password'; |
$drop['shell'] = 'password'; |
121 |
$drop['samba'] = 'password'; |
$drop['vnc'] = 'password'; |
122 |
$drop['station'] = 'password'; |
$drop['samba'] = 'password'; |
123 |
$drop['txt'] = 'txt'; |
$drop['station'] = 'password'; |
124 |
$drop['screensaver'] = array('','blank', 'random', 'ant', 'ant3d', 'apollonian', 'ball', 'bat', 'blot', 'bomb', 'bouboule', |
$drop['txt'] = 'txt'; |
125 |
'bounce', 'braid', 'bubble', 'bug', 'clock', 'coral', 'crystal', 'daisy', 'dclock', 'decay', 'deco', |
$drop['screensaver'] = array('','blank', 'random', 'ant', 'ant3d', 'apollonian', 'ball', 'bat', 'blot', 'bomb', 'bouboule', |
126 |
'demon', 'dilemma', 'discrete', 'dragon', 'drift', 'euler2d', 'eyes', 'fadeplot', 'fiberlamp', 'flag', |
'bounce', 'braid', 'bubble', 'bug', 'clock', 'coral', 'crystal', 'daisy', 'dclock', 'decay', 'deco', |
127 |
'flame', 'flow', 'forest', 'galaxy', 'goop', 'grav', 'helix', 'hop', 'hyper', 'ico', 'ifs', 'image', |
'demon', 'dilemma', 'discrete', 'dragon', 'drift', 'euler2d', 'eyes', 'fadeplot', 'fiberlamp', 'flag', |
128 |
'juggle', 'julia', 'kaleid', 'kumppa', 'laser', 'life', 'life1d', 'life3d', 'lightning', 'lisa', 'lissie', |
'flame', 'flow', 'forest', 'galaxy', 'goop', 'grav', 'helix', 'hop', 'hyper', 'ico', 'ifs', 'image', |
129 |
'loop', 'lyapunov', 'mandelbrot', 'marquee', 'matrix', 'maze', 'mountain', 'munch', 'nose', 'pacman', |
'juggle', 'julia', 'kaleid', 'kumppa', 'laser', 'life', 'life1d', 'life3d', 'lightning', 'lisa', 'lissie', |
130 |
'penrose', 'petal', 'petri', 'polyominoes', 'puzzle', 'pyro', 'qix', 'roll', 'rotor', 'scooter', 'shape', |
'loop', 'lyapunov', 'mandelbrot', 'marquee', 'matrix', 'maze', 'mountain', 'munch', 'nose', 'pacman', |
131 |
'sierpinski', 'slip', 'solitare', 'space', 'sphere', 'spiral', 'spline', 'star', 'starfish', 'strange', |
'penrose', 'petal', 'petri', 'polyominoes', 'puzzle', 'pyro', 'qix', 'roll', 'rotor', 'scooter', 'shape', |
132 |
'swarm', 'swirl', 't3d', 'tetris', 'thornbird', 'tik_tak', 'toneclock', 'triangle', 'tube', 'turtle', |
'sierpinski', 'slip', 'solitare', 'space', 'sphere', 'spiral', 'spline', 'star', 'starfish', 'strange', |
133 |
'vines', 'voters', 'wator', 'wire', 'world', 'worm', 'xcl', 'xjack'); |
'swarm', 'swirl', 't3d', 'tetris', 'thornbird', 'tik_tak', 'toneclock', 'triangle', 'tube', 'turtle', |
134 |
$drop['iface'] = array('eth0', 'wlan0'); |
'vines', 'voters', 'wator', 'wire', 'world', 'worm', 'xcl', 'xjack'); |
135 |
$drop['client_version_os'] = 'show'; |
$drop['iface'] = array('eth0', 'wlan0'); |
136 |
$drop['client_version_utils'] = 'show'; |
$drop['client_version_os'] = 'show'; |
137 |
|
$drop['client_version_utils'] = 'show'; |
138 |
// ACHTUNG!!! wlan_-Felder heißen eigentlich wireless_ |
|
139 |
$drop['wireless_mode'] = array('', 'managed', 'ad-hoc', 'master', 'repeater', 'secondary', 'monitor', 'auto'); |
// ACHTUNG!!! wlan_-Felder heißen eigentlich wireless_ |
140 |
$drop['wireless_auth_mode'] = array('', 'wep', 'wpa', 'off'); |
$drop['wireless_mode'] = array('', 'managed', 'ad-hoc', 'master', 'repeater', 'secondary', 'monitor', 'auto'); |
141 |
$drop['wireless_key_length'] = array('', '64', '128', '256'); |
$drop['wireless_auth_mode'] = array('', 'wep', 'wpa', 'wpa2', 'off'); |
142 |
$drop['wireless_channel'] = array('', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14'); |
$drop['wireless_key_length'] = array('', '64', '128', '256'); |
143 |
$drop['wireless_frequency'] = array('', '2.412G', '2.417G', '2.422G', '2.427G', '2.432G', '2.437G', '2.442G', |
$drop['wireless_channel'] = array('', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14'); |
144 |
'2.447G', '2.452G', '2.457G', '2.462G', '2.467G', '2.472G', '2.484G'); |
$drop['wireless_frequency'] = array('', '2.412G', '2.417G', '2.422G', '2.427G', '2.432G', '2.437G', '2.442G', |
145 |
$drop['wireless_key'] = 'password'; |
'2.447G', '2.452G', '2.457G', '2.462G', '2.467G', '2.472G', '2.484G'); |
146 |
$drop['wireless_key_ascii'] = 'password'; |
$drop['wireless_key'] = 'password'; |
147 |
|
$drop['wireless_key_ascii'] = 'password'; |
148 |
// GGF. NEUEN DATENSATZ EINFÜGEN |
|
149 |
if(isset($_POST['do_add'])) |
// plugin support |
150 |
{ |
if($alxos>='0.6.0') |
151 |
list($bla,$what) = explode(' ',$_POST['do_add']); |
{ |
152 |
if($what=='COMMENT') sqladd('cfg_comments', array('serial'=>$id)); |
for ($i=0; $i<999; $i++) { $drop['cfg_plugins_'.$i.'_plugin'] = 'pluginconfig'; } |
153 |
else if($what=='PRINTER') sqladd('cfg_printers', array('serial'=>$id)); |
for ($i=0; $i<999; $i++) |
154 |
else if($what=='MODULE') sqladd('cfg_modules', array('serial'=>$id)); |
{ |
155 |
else if($what=='SESSION') sqladd('cfg_sessions', array('domain'=>'DOM_AKA_NT', 'browseradrs'=>'128.20.50.50;128.20.50.66;128.20.50.71;128.20.50.46;128.20.100.31;128.20.100.32', 'serial'=>$id)); |
$drop['cfg_plugins_'.$i.'_plugin_array'] = sqlarr('SELECT plugin FROM avail_plugins', '', 'plugin'); |
156 |
else if($what=='MENUITEM') sqladd('cfg_other_menuitems', array('serial'=>$id)); |
array_unshift($drop['cfg_plugins_'.$i.'_plugin_array'], ""); |
157 |
} |
} |
158 |
|
} |
159 |
|
else |
160 |
// GGF. SPEICHERN |
{ |
161 |
if($_POST['do_upl']) |
for ($i=0; $i<999; $i++) { $drop['cfg_plugins_'.$i.'_id'] = 'ignore'; } |
162 |
{ |
for ($i=0; $i<999; $i++) { $drop['cfg_plugins_'.$i.'_serial'] = 'ignore'; } |
163 |
function postarr($prefix) |
for ($i=0; $i<999; $i++) { $drop['cfg_plugins_'.$i.'_plugin'] = 'ignore'; } |
164 |
{ |
} |
165 |
$prefix.='_'; |
|
166 |
$prelen = strlen($prefix); |
// get current citrix sessions |
167 |
|
if($alxos>='0.6.0') |
168 |
$arr = array(); |
{ |
169 |
foreach($_POST as $k=>$v) |
// split all citrix server into an array to get the first server from list |
170 |
if((substr($k,0,$prelen)==$prefix) && ($v!='KEEPPASS')) |
$citrix_query_browser = split(";", $citrix_browseradrs); |
171 |
$arr[substr($k,$prelen)] = stripslashes($v); |
exec($wwwroot.'/pnabrowse-wrapper -A '.$citrix_query_browser[0], $returned_citrix_sessions, $retval); |
172 |
|
if ($retval == 0) |
173 |
return $arr; |
{ |
174 |
} |
$citrix_public_applications = str_replace("'", "", $returned_citrix_sessions); |
175 |
|
// add an empty value add the first position of the array as session-default |
176 |
|
array_unshift($citrix_public_applications, ""); |
177 |
|
for ($i=0; $i<999; $i++) { $drop['cfg_sessions_'.$i.'_session'] = $citrix_public_applications; } |
178 |
|
} |
179 |
|
else if($retval = 126) echo "pnabrowser-wrapper has no execute permission! please run chmod +x on ".$wwwroot."/pnabrowser-wrapper."; |
180 |
|
else echo "pnabrowse-wrapper does not run successfully! retval->'".$retval."'<br>"; |
181 |
|
} |
182 |
|
|
183 |
|
// GGF. NEUEN DATENSATZ EINFÜGEN |
184 |
|
if(isset($_POST['do_add'])) |
185 |
|
{ |
186 |
|
list($bla,$what) = explode(' ',$_POST['do_add']); |
187 |
|
if($what=='COMMENT') sqladd('cfg_comments', array('serial'=>$id)); |
188 |
|
else if($what=='PRINTER') sqladd('cfg_printers', array('serial'=>$id)); |
189 |
|
else if($what=='MODULE') sqladd('cfg_modules', array('serial'=>$id)); |
190 |
|
else if($what=='SESSION') sqladd('cfg_sessions', array('domain'=>$citrix_domain_name, 'browseradrs'=>$citrix_browseradrs, 'serial'=>$id)); |
191 |
|
else if($what=='MENUITEM') sqladd('cfg_other_menuitems', array('serial'=>$id)); |
192 |
|
else if($what=='PLUGIN') sqladd('cfg_plugins', array('serial'=>$id)); |
193 |
|
} |
194 |
|
|
195 |
|
|
196 |
|
// GGF. SPEICHERN |
197 |
|
if($_POST['do_upl']) |
198 |
|
{ |
199 |
|
function postarr($prefix) |
200 |
|
{ |
201 |
|
$prefix.='_'; |
202 |
|
$prelen = strlen($prefix); |
203 |
|
|
204 |
|
$arr = array(); |
205 |
|
foreach($_POST as $k=>$v) |
206 |
|
if((substr($k,0,$prelen)==$prefix) && ($v!='KEEPPASS')) |
207 |
|
$arr[substr($k,$prelen)] = stripslashes($v); |
208 |
|
|
209 |
foreach($tabs as $k=>$t) |
return $arr; |
|
{ |
|
|
if(!$multi[$k]) mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id); |
|
|
else |
|
|
{ |
|
|
$i=0; |
|
|
while(isset($_POST[$t.'_'.$i.'_id'])) |
|
|
{ |
|
|
if($_POST[$t.'_'.$i.'_delete']) |
|
|
mysql_query('DELETE FROM '.$t.' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']); |
|
|
else |
|
|
mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t.'_'.$i)).' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']); |
|
|
$i++; |
|
|
} |
|
|
} |
|
|
} |
|
210 |
} |
} |
211 |
|
|
|
|
|
|
// EINLESEN DER DATEN AUS SQL-TABELLEN |
|
212 |
foreach($tabs as $k=>$t) |
foreach($tabs as $k=>$t) |
213 |
{ |
{ |
214 |
if($multi[$k]) $data[$t] = sqlarr('SELECT * FROM '.$t.' WHERE serial='.$id); |
if(!$multi[$k]) mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id); |
|
else $data[$t] = sqlfirst('SELECT * FROM '.$t.' WHERE serial='.$id); |
|
|
} |
|
|
|
|
|
// ANZEIGEN - KLAPPFUNKTIONEN |
|
|
$absnames = array(); |
|
|
|
|
|
function openabs($heading, $helpfile='') |
|
|
{ |
|
|
global $absnames; |
|
|
$absnames[] = $heading; |
|
|
|
|
|
// <AufZuLink> <Bild/> <Heading/> </AufZuLink><BR/> <Absatz> |
|
|
|
|
|
if( $_SESSION['openclose'][$heading] ) |
|
|
{ |
|
|
echo '<a href="JavaScript:openclose(\''.$heading.'\',1);"><img border="0" src="pics/minus.gif" title="CLOSE" id="sch_bild_'.$heading.'"> <b>['.$heading.']</b></a>'; |
|
|
if($helpfile!='') echo ' <a href="JavaScript:showhelp(\''.$helpfile.'\')" title="HELP">[?]</a>'; |
|
|
echo '<br><div id="sch_absatz_'.$heading.'" style="top:0px; visibility:visible">'; |
|
|
} |
|
215 |
else |
else |
216 |
{ |
{ |
217 |
echo '<a href="JavaScript:openclose(\''.$heading.'\',1);"><img border="0" src="pics/plus.gif" title="OPEN" id="sch_bild_'.$heading.'"> <b>['.$heading.']</b></a>'; |
$i=0; |
218 |
if($helpfile!='') echo ' <a href="JavaScript:showhelp(\''.$helpfile.'\')" title="HELP">[?]</a>'; |
while(isset($_POST[$t.'_'.$i.'_id'])) |
219 |
echo '<br><div id="sch_absatz_'.$heading.'" style="position:absolute; top:0px; visibility:hidden">'; |
{ |
220 |
|
if($_POST[$t.'_'.$i.'_delete']) |
221 |
|
mysql_query('DELETE FROM '.$t.' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']); |
222 |
|
else |
223 |
|
mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t.'_'.$i)).' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']); |
224 |
|
$i++; |
225 |
|
} |
226 |
} |
} |
227 |
} |
} |
228 |
|
|
229 |
|
// reload site |
230 |
|
header("location: show.php?id=".$id); |
231 |
|
} |
232 |
|
|
233 |
|
// EINLESEN DER DATEN AUS SQL-TABELLEN |
234 |
|
foreach($tabs as $k=>$t) |
235 |
|
{ |
236 |
|
if($multi[$k]) $data[$t] = sqlarr('SELECT * FROM '.$t.' WHERE serial='.$id); |
237 |
|
else $data[$t] = sqlfirst('SELECT * FROM '.$t.' WHERE serial='.$id); |
238 |
|
} |
239 |
|
|
240 |
|
// ANZEIGEN - KLAPPFUNKTIONEN |
241 |
|
$absnames = array(); |
242 |
|
|
243 |
|
function openabs($heading, $helpfile='') |
244 |
|
{ |
245 |
|
global $absnames; |
246 |
|
$absnames[] = $heading; |
247 |
|
|
248 |
|
// <AufZuLink> <Bild/> <Heading/> </AufZuLink><BR/> <Absatz> |
249 |
|
|
250 |
function closeabs() |
if( $_SESSION['openclose'][$heading] ) |
251 |
{ |
{ |
252 |
// </Absatz> <BR/> |
echo '<a href="JavaScript:openclose(\''.$heading.'\',1);"><img border="0" src="pics/minus.gif" title="CLOSE" id="sch_bild_'.$heading.'"> <b>['.$heading.']</b></a>'; |
253 |
|
if($helpfile!='') echo ' <a href="JavaScript:showhelp(\''.$helpfile.'\')" title="HELP">[?]</a>'; |
254 |
echo '</div><br>'; |
echo '<br><div id="sch_absatz_'.$heading.'" style="top:0px; visibility:visible">'; |
255 |
} |
} |
256 |
|
else |
257 |
|
{ |
258 |
|
echo '<a href="JavaScript:openclose(\''.$heading.'\',1);"><img border="0" src="pics/plus.gif" title="OPEN" id="sch_bild_'.$heading.'"> <b>['.$heading.']</b></a>'; |
259 |
|
if($helpfile!='') echo ' <a href="JavaScript:showhelp(\''.$helpfile.'\')" title="HELP">[?]</a>'; |
260 |
|
echo '<br><div id="sch_absatz_'.$heading.'" style="position:absolute; top:0px; visibility:hidden">'; |
261 |
|
} |
262 |
|
} |
263 |
|
|
264 |
|
function closeabs() |
265 |
|
{ |
266 |
|
// </Absatz> <BR/> |
267 |
|
|
268 |
|
echo '</div><br>'; |
269 |
|
} |
270 |
|
|
271 |
// ANZEIGEN |
|
272 |
|
// ANZEIGEN |
273 |
function parsearr($name, $arr, $del=false, $wireless=false) |
|
274 |
|
function parsearr($name, $arr, $del=false, $wireless=false) |
275 |
|
{ |
276 |
|
global $drop; |
277 |
|
global $id; |
278 |
|
global $alxos; |
279 |
|
|
280 |
|
$parts = explode('_',$name); $helpfile='help.php?page='.$parts[1]; |
281 |
|
openabs($name, $helpfile); |
282 |
|
echo '<table class="keytab">'; |
283 |
|
|
284 |
|
foreach($arr as $k=>$v) |
285 |
{ |
{ |
286 |
global $drop; |
if( (substr($k,0,9)=='wireless_') xor $wireless ) Continue; |
287 |
global $id; |
|
288 |
global $alxos; |
$d = $drop[$name.'_'.$k]; if($d==null) $d = $drop[$k]; |
289 |
|
$k = str_replace('wireless_', '', $k); |
290 |
$parts = explode('_',$name); $helpfile='help.php?page='.$parts[1]; |
$k2 = $k; |
|
openabs($name, $helpfile); |
|
|
echo '<table class="keytab">'; |
|
|
|
|
|
foreach($arr as $k=>$v) |
|
|
{ |
|
|
if( (substr($k,0,9)=='wireless_') xor $wireless ) Continue; |
|
|
|
|
|
$d = $drop[$name.'_'.$k]; if($d==null) $d = $drop[$k]; |
|
|
$k = str_replace('wireless_', '', $k); |
|
|
$k2 = $k; |
|
291 |
|
|
292 |
//replace i810 with intel on 0.5.3 or higher |
//replace some drivers on 0.5.3 or higher |
293 |
if($alxos >= '0.5.3' && $v == 'i810') |
if($alxos >= '0.5.3') |
294 |
|
{ |
295 |
|
if($v == 'i810') |
296 |
{ |
{ |
297 |
echo '<br><font color="#FF0000">Replaced "i810" with "intel" - Please press SAVE!</font><br>'; |
echo '<br><font color="#FF0000">Replaced "i810" with "intel" - Please press SAVE!</font><br>'; |
298 |
$v='intel'; |
$v='intel'; |
299 |
} |
} |
300 |
|
if($v == 'r128') |
301 |
|
{ |
302 |
|
echo '<br><font color="#FF0000">Replaced "r128" with "vesa" - Please press SAVE!</font><br>'; |
303 |
|
$v='vesa'; |
304 |
|
} |
305 |
|
|
306 |
if(is_array($d)) |
if($v == 'via') |
307 |
|
{ |
308 |
|
echo '<br><font color="#FF0000">Replaced "via" with "openchrome" - Please press SAVE!</font><br>'; |
309 |
|
$v='openchrome'; |
310 |
|
} |
311 |
|
} |
312 |
|
if($alxos >= '0.6.2') |
313 |
|
{ |
314 |
|
if($v == 'via') |
315 |
|
{ |
316 |
|
echo '<br><font color="#FF0000">Replaced "via" with "unichrome" - Please press SAVE!</font><br>'; |
317 |
|
$v='unichrome'; |
318 |
|
} |
319 |
|
if($v == 'openchrome') |
320 |
|
{ |
321 |
|
echo '<br><font color="#FF0000">Replaced "openchrome" with "unichrome" - Please press SAVE!</font><br>'; |
322 |
|
$v='unichrome'; |
323 |
|
} |
324 |
|
} |
325 |
|
|
326 |
|
# tell something about vesa |
327 |
|
if ($v == 'vesa') echo '<br><font color="#FF0000">Warning: "vesa" graphic module doesn\'t support any resolutions higher than 1024x786x16@60hz!</font><br>'; |
328 |
|
|
329 |
|
|
330 |
|
if(is_array($d)) |
331 |
|
{ |
332 |
|
echo '<tr><td class="key">'.$k2.'</td><td>= <select style="width:144px" name="'.$name.'_'.$k.'">'; |
333 |
|
foreach($d as $di) if($v==$di) echo '<option selected>'.$di; else echo '<option>'.$di; |
334 |
|
echo '</select></td></tr>'; |
335 |
|
} |
336 |
|
else if($d=='hidden') echo '<tr><td colspan=2><input type=hidden name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
337 |
|
else if($d=='1') echo '<tr><td colspan=2><input type=hidden name="'.$name.'_'.$k.'" value="1"></td></tr>'; |
338 |
|
else if($d=='monitorid') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=button style="width:24px" onclick="window.open(\'monitor.php?id='.$id.'\', \'MonitorWin\', \'width=350,height=200\')" value="..."></td>'; |
339 |
|
else if($d=='pluginconfig') |
340 |
|
{ |
341 |
|
$dplugin = $drop[$name.'_'.$k.'_array']; if($dplugin==null) $dplugin = $drop[$k]; |
342 |
|
if(is_array($dplugin)) |
343 |
{ |
{ |
344 |
echo '<tr><td class="key">'.$k2.'</td><td>= <select style="width:144px" name="'.$name.'_'.$k.'">'; |
echo '<tr><td class="key">'.$k2.'</td><td>= <select style="width:144px" name="'.$name.'_'.$k.'">'; |
345 |
foreach($d as $di) if($v==$di) echo '<option selected>'.$di; else echo '<option>'.$di; |
foreach($dplugin as $di) if($v==$di) echo '<option selected>'.$di; else echo '<option>'.$di; |
346 |
echo '</select></td></tr>'; |
echo '</select></td></tr>'; |
347 |
} |
} |
348 |
else if($d=='hidden') echo '<tr><td colspan=2><input type=hidden name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
// $v contains the pluginname, get the configure flag |
349 |
else if($d=='1') echo '<tr><td colspan=2><input type=hidden name="'.$name.'_'.$k.'" value="1"></td></tr>'; |
$pflag = sqlfirst('SELECT configflag FROM avail_plugins WHERE plugin="'.$v.'"'); |
350 |
else if($d=='monitorid') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=button style="width:24px" onclick="window.open(\'monitor.php?id='.$id.'\', \'MonitorWin\', \'width=350,height=200\')" value="..."></td>'; |
if ($pflag[configflag]==1) echo '<tr><td class="key">configure</td><td>= <input type=button style="width:24px" onclick="window.open(\'plugin.php?id='.$id.'&plugin='.$v.'\', \'PluginWin\', \'width=500,height=400\')" value="..."></td>'; |
351 |
else if($d=='bold') echo '<tr><td class="key">'.$k2.'</td><td>= <input style="width:144px;font-weight:bold" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
} |
352 |
else if($d=='filename') echo '<tr><td class="key">filename</td><td>= <input style="width:144px;font-weight:bold" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
else if($d=='bold') echo '<tr><td class="key">'.$k2.'</td><td>= <input style="width:144px;font-weight:bold" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
353 |
else if($d=='show') echo '<tr><td class="key">'.$k2.'</td><td>= <b>'.$v.'</b></td></tr>'; |
else if($d=='filename') echo '<tr><td class="key">filename</td><td>= <input style="width:144px;font-weight:bold" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
354 |
else if($d=='showtime') echo '<tr><td class="key">'.$k2.'</td><td>= <b>'.date('d.m.y - H:i:s', $v).'</b></td></tr>'; |
else if($d=='show') echo '<tr><td class="key">'.$k2.'</td><td>= <b>'.$v.'</b></td></tr>'; |
355 |
else if($d=='password' && $v=='') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=password style="width:144px" name="'.$name.'_'.$k.'" value=""></td></tr>'; |
else if($d=='showtime') echo '<tr><td class="key">'.$k2.'</td><td>= <b>'.date('d.m.y - H:i:s', $v).'</b></td></tr>'; |
356 |
else if($d=='password') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=password style="width:144px" name="'.$name.'_'.$k.'" value="KEEPPASS"></td></tr>'; |
else if($d=='password' && $v=='') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=password style="width:144px" name="'.$name.'_'.$k.'" value=""></td></tr>'; |
357 |
else if($d=='txt') echo '<tr><td colspan=2><textarea style="width:240px; background-color:#d5e5ff" rows=4 name="'.$name.'_'.$k.'">'.$v.'</textarea></td></tr>'; |
else if($d=='password') echo '<tr><td class="key">'.$k2.'</td><td>= <input type=password style="width:144px" name="'.$name.'_'.$k.'" value="KEEPPASS"></td></tr>'; |
358 |
else if($d!='ignore') echo '<tr><td class="key">'.$k2.'</td><td>= <input style="width:144px" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
else if($d=='txt') echo '<tr><td colspan=2><textarea style="width:240px; background-color:#d5e5ff" rows=4 name="'.$name.'_'.$k.'">'.$v.'</textarea></td></tr>'; |
359 |
} |
else if($d!='ignore') echo '<tr><td class="key">'.$k2.'</td><td>= <input style="width:144px" name="'.$name.'_'.$k.'" value="'.$v.'"></td></tr>'; |
360 |
|
} |
361 |
if($del) echo '<tr><td class="key">delete</td><td>=<input type=checkbox name="'.$name.'_delete" value="1"></td></tr>'; |
|
362 |
echo '</table>'; |
if($del) echo '<tr><td class="key">delete</td><td>=<input type=checkbox name="'.$name.'_delete" value="1"></td></tr>'; |
363 |
closeabs(); |
echo '</table>'; |
364 |
|
closeabs(); |
365 |
|
|
366 |
|
if($name=='cfg_network' && !$wireless) parsearr($name.'_wireless', $arr, $del, true); |
367 |
|
} |
368 |
|
function parsearrs($name, $arr) |
369 |
|
{ |
370 |
|
foreach($arr as $k=>$a) |
371 |
|
parsearr($name.'_'.$k, $a, true); |
372 |
|
} |
373 |
|
|
374 |
|
?><head> |
375 |
|
<title>ALX Config</title> |
376 |
|
<style> |
377 |
|
body,table { font-family:Tahoma; font-size:10pt } |
378 |
|
a { color:#000000; text-decoration:none; } |
379 |
|
.key { width:85px } |
380 |
|
.keytab, input, textarea, select, option { font-size:8pt; font-family:Tahoma } |
381 |
|
.but { font-size:10pt; font-family:Tahoma; height:23px } |
382 |
|
</style> |
383 |
|
<script type="text/javascript" src="js/jquery-1.2.6.min.js"></script> |
384 |
|
<script language="JavaScript" src="openclose_ajax.js"></script> |
385 |
|
<script language="JavaScript"> |
386 |
|
|
387 |
|
// opens an url and shows retval in a javascript-alert on current site |
388 |
|
function urlopen(url,typ) { |
389 |
|
var $url = url.split("?"); |
390 |
|
$.ajax({type:""+typ+"",url:$url[0],data:$url[1],cache:false,success:function(data){ alert(data); }}); |
391 |
|
} |
392 |
|
function plugin(name,id) { window.open('plugin.php?plugin='+name+'&id='+id, '', 'width=350,height=180'); } |
393 |
|
|
394 |
|
/* ignore this atm, not always working, sometime open does not work |
395 |
|
function openclose(nummer, act) |
396 |
|
{ |
397 |
|
var bild = document.images['sch_bild_'+nummer]; |
398 |
|
var absatz = document.all['sch_absatz_'+nummer].style; |
399 |
|
var senden = false; |
400 |
|
|
401 |
|
$("#sch_absatz_"+nummer).toggle(0, function(){ |
402 |
|
if($(this).css("display")=="none"){$("#sch_bild_"+nummer).attr({title:'OPEN',src:'pics/plus.gif'});}else{$("#sch_bild_"+nummer).attr({title:'CLOSE',src:'pics/minus.gif'});} |
403 |
|
}); |
404 |
|
if(act<=1){ $("#sch_bild_"+nummer).attr({title:'CLOSE',src:'pics/minus.gif'}); }else{ $("#sch_bild_"+nummer).attr({title:'OPEN',src:'pics/plus.gif'}); }; |
405 |
|
} |
406 |
|
*/ |
407 |
|
function openclose(nummer, act) |
408 |
|
{ |
409 |
|
var bild = document.images['sch_bild_'+nummer]; |
410 |
|
var absatz = document.all['sch_absatz_'+nummer].style; |
411 |
|
var senden = false; |
412 |
|
|
413 |
if($name=='cfg_network' && !$wireless) parsearr($name.'_wireless', $arr, $del, true); |
if(bild.title == 'OPEN') |
414 |
} |
{ |
415 |
function parsearrs($name, $arr) |
if(act<=1) |
|
{ |
|
|
foreach($arr as $k=>$a) |
|
|
parsearr($name.'_'.$k, $a, true); |
|
|
} |
|
|
|
|
|
?><head> |
|
|
<title>ALX Config</title> |
|
|
<style> |
|
|
body,table { font-family:Tahoma; font-size:10pt } |
|
|
a { color:#000000; text-decoration:none; } |
|
|
.key { width:85px } |
|
|
.keytab, input, textarea, select, option { font-size:8pt; font-family:Tahoma } |
|
|
.but { font-size:10pt; font-family:Tahoma; height:23px } |
|
|
</style> |
|
|
<script language="JavaScript" src="openclose_ajax.js"></script> |
|
|
<script language="JavaScript"> |
|
|
|
|
|
function openclose(nummer, act) |
|
|
{ |
|
|
var bild = document.images['sch_bild_'+nummer]; |
|
|
var absatz = document.all['sch_absatz_'+nummer].style; |
|
|
var senden = false; |
|
|
|
|
|
if(bild.title == 'OPEN') |
|
416 |
{ |
{ |
417 |
if(act<=1) |
absatz.visibility = 'visible'; |
418 |
{ |
absatz.position = ''; |
419 |
absatz.visibility = 'visible'; |
bild.title = 'CLOSE'; |
420 |
absatz.position = ''; |
bild.src = 'pics/minus.gif'; |
421 |
bild.title = 'CLOSE'; |
senden = true; |
422 |
bild.src = 'pics/minus.gif'; |
act = 0; |
|
senden = true; |
|
|
act = 0; |
|
|
} |
|
423 |
} |
} |
424 |
else |
} |
425 |
|
else |
426 |
|
{ |
427 |
|
if(act>=1) |
428 |
{ |
{ |
429 |
if(act>=1) |
absatz.visibility = 'hidden'; |
430 |
{ |
absatz.position = 'absolute'; |
431 |
absatz.visibility = 'hidden'; |
bild.title = 'OPEN'; |
432 |
absatz.position = 'absolute'; |
bild.src = 'pics/plus.gif'; |
433 |
bild.title = 'OPEN'; |
senden = true; |
434 |
bild.src = 'pics/plus.gif'; |
act = 2; |
|
senden = true; |
|
|
act = 2; |
|
|
} |
|
435 |
} |
} |
436 |
|
} |
|
if(senden) sendopenclose(nummer,act); |
|
|
} |
|
|
|
|
|
function showhelp(name) |
|
|
{ window.open(name, 'HelpWin', 'width=620,height=500,scrollbars=yes'); } |
|
|
|
|
|
</script> |
|
|
</head> |
|
|
|
|
|
<body><? |
|
437 |
|
|
438 |
|
if(senden) sendopenclose(nummer,act); |
439 |
//echo '<body style="background-image:URL(logo.jpg);background-repeat:no-repeat; background-position:0px 0px; margin-top:25px">'; |
} |
|
echo '<form action="show.php" method=post onreset="return confirm(\'UNDO CHANGES?\')">'; |
|
|
echo '<input type=hidden name="do_upl" value="1">'; |
|
|
echo '<input type=hidden name="id" value="'.$id.'">'; |
|
440 |
|
|
441 |
// ANZEIGEN => NON-MULTI TABELLEN |
function showhelp(name) |
442 |
echo '<table><tr><td valign=top width="300">'; |
{ window.open(name, 'HelpWin', 'width=620,height=500,scrollbars=yes'); } |
443 |
|
|
444 |
echo '<b style="font-size:6pt">'; |
</script> |
445 |
echo '<a href="JavaScript:opencloseall(0);" title="OPEN ALL"><img src="pics/plus.gif" border="0"> OPEN...</a> '; |
</head> |
|
echo '<a href="JavaScript:opencloseall(2);" title="CLOSE ALL"><img src="pics/minus.gif" border="0"> CLOSE...</a> ALL'; |
|
|
echo '</b><br><br>'; |
|
446 |
|
|
447 |
foreach($tabs as $k=>$t) if(!$multi[$k]) parsearr($t, $data[$t]); |
<body><? |
448 |
|
|
449 |
// ANZEIGEN => MULTI TABELLEN |
echo '<form action="show.php" method="post" onreset="return confirm(\'UNDO CHANGES?\')">'; |
450 |
echo '</td><td valign=top width="300">'; |
echo '<input type=hidden name="do_upl" value="1">'; |
451 |
|
echo '<input type=hidden name="id" value="'.$id.'">'; |
452 |
|
|
453 |
foreach($tabs as $k=>$t) if($multi[$k]) parsearrs($t, $data[$t]); |
// ANZEIGEN => NON-MULTI TABELLEN |
454 |
|
echo '<table><tr><td valign=top width="300">'; |
|
echo '<script language="JavaScript">'; |
|
|
echo 'function opencloseall(act) { '; |
|
|
|
|
|
foreach($absnames as $absname) |
|
|
echo 'openclose("'.$absname.'", act); '; |
|
|
|
|
|
echo '}</script>'; |
|
455 |
|
|
456 |
// ANZEIGEN => NAVI |
echo '<b style="font-size:6pt">'; |
457 |
echo '</td><td valign=top>'; |
echo '<a href="JavaScript:opencloseall(0);" title="OPEN ALL"><img src="pics/plus.gif" border="0"> OPEN...</a> '; |
458 |
|
echo '<a href="JavaScript:opencloseall(2);" title="CLOSE ALL"><img src="pics/minus.gif" border="0"> CLOSE...</a> ALL'; |
459 |
|
echo '</b><br><br>'; |
460 |
|
|
461 |
// STATUS BESTIMMEN (ON/OFF) |
foreach($tabs as $k=>$t) if(!$multi[$k]) parsearr($t, $data[$t]); |
|
$conn = sqlfirst('SELECT * FROM state_connected WHERE serial='.$id); |
|
|
$state = 'Off'; |
|
|
if(count($conn)>0) |
|
|
{ |
|
|
// passthru($pingcmd." ".$conn['ip']." &> /dev/null && exit 0 || exit 1",$retval); |
|
|
if($retval==0) $state = 'On'; |
|
|
} |
|
462 |
|
|
463 |
|
// ANZEIGEN => MULTI TABELLEN |
464 |
|
echo '</td><td valign=top width="300">'; |
465 |
|
|
466 |
echo '<img src="pics/logo2.jpg"><br><br>'; |
foreach($tabs as $k=>$t) if($multi[$k]) parsearrs($t, $data[$t]); |
467 |
|
|
468 |
echo '<input class="but" type=submit value="SAVE" style="width:150px"><br><br>'; |
echo '<script language="JavaScript">'; |
469 |
|
echo 'function opencloseall(act) { '; |
470 |
|
|
471 |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD COMMENT" style="width:150px"><br>'; |
foreach($absnames as $absname) |
472 |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD PRINTER" style="width:150px"><br>'; |
echo 'openclose("'.$absname.'", act); '; |
|
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD SESSION" style="width:150px"><br>'; |
|
|
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD MODULE" style="width:150px"><br>'; |
|
|
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD MENUITEM" style="width:150px"><br><br>'; |
|
473 |
|
|
474 |
|
echo '}</script>'; |
475 |
|
|
476 |
if($id>0) $KILLCAP='DEACTIVATE'; else $KILLCAP='ACTIVATE'; |
// ANZEIGEN => NAVI |
477 |
echo '<input class="but" type=button value="'.$KILLCAP.'" style="width:150px" onclick="if(confirm(\''.$KILLCAP.' CLIENT #'.abs($id).' ?\')) { window.open(\'show.php?id='.$id.'&kill=1\', \'DeactWin\', \'width=200,height=100\'); location.href=\'index.php\'; }"><br>'; |
echo '</td><td valign=top>'; |
|
echo '<input class="but" type=button value="IMPORT FROM..." style="width:150px" onclick="location.href=\'import.php?id='.$id.'\'"><br>'; |
|
|
echo '<input class="but" type=reset value="UNDO CHANGES" style="width:150px"><br><br>'; |
|
478 |
|
|
479 |
$davor = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id-1),'mac')!=null; if($davor) $disdavor=''; else $disdavor = 'disabled=1'; |
// STATUS BESTIMMEN (ON/OFF) |
480 |
$danach = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id+1),'mac')!=null; if($danach) $disdanach=''; else $disdanach = 'disabled=1'; |
$conn = sqlfirst('SELECT * FROM state_connected WHERE serial='.$id); |
481 |
|
$state = 'Off'; |
482 |
|
if(count($conn)>0) |
483 |
|
{ |
484 |
|
if($retval==0) $state = 'On'; |
485 |
|
} |
486 |
|
|
487 |
echo '<input class="but" type=button '.$disdavor.' value="<" style="width:30px" onclick="location.href=\'show.php?id='.($id-1).'\'">'; |
echo '<img src="pics/logo2.jpg"><br><br>'; |
|
echo '<input class="but" type=button value="REFRESH" style="width:90px" onclick="location.href=\'show.php?id='.$id.'\'">'; |
|
|
echo '<input class="but" type=button '.$disdanach.' value=">" style="width:30px" onclick="location.href=\'show.php?id='.($id+1).'\'">'; |
|
|
echo '<br><input class="but" type=button value="INDEX" style="width:150px; font-weight:bold" onclick="location.href=\'index.php\'"><br><br>'; |
|
488 |
|
|
489 |
echo '<br><br>'; |
echo '<input class="but" type=submit value="SAVE" style="width:150px"><br><br>'; |
|
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff"><b>'; |
|
|
if($id<0) echo '<b>DEACTIVATED!</b><br><br>'; |
|
|
echo '<u>Serial:</u> #'.$id.'<br>'; |
|
|
echo '<u>Stand:</u> '.date('H:i:s').'<br>'; |
|
|
echo '<u>Status:</u> <img src="pics/'.strtolower($state).'line.gif" align=top> '.$state.'line<br>'; |
|
|
if($state=='On') |
|
|
{ |
|
|
echo '<u>IP:</u> '.$conn['ip'].'<br><br>'; |
|
|
$pubkey = mysql_query('select public_key from ssh_auth_clients where serial='.$id.''); |
|
|
while ($row = mysql_fetch_row ($pubkey)) { |
|
|
# schreiben der .ssh/known_hosts file mit dem public rsa key des client, |
|
|
# um die "yes" abfrage zu vermeiden |
|
|
$hostfile = fopen ($home."/.ssh/known_hosts","w"); |
|
|
fwrite($hostfile,$conn['ip']." ".$row[0],strlen($row[0])+strlen($conn['ip'])+1); |
|
|
fclose($hostfile); |
|
490 |
|
|
491 |
$osver = exec($sshcmd.' '.$conn['ip'].' \'os_ver=$(</etc/mageversion);cfg_ver=$(/sbin/magequery -n alxconfig-ng-alx|cut -d" " -f5);pname=${cfg_ver%-*-*};cfg_ver=${cfg_ver/${pname}-};echo "${os_ver}:${cfg_ver}"\''); |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD COMMENT" style="width:150px"><br>'; |
492 |
$osver = explode(':',$osver); |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD PRINTER" style="width:150px"><br>'; |
493 |
} |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD SESSION" style="width:150px"><br>'; |
494 |
if($osver[0] == '') $osver[0]='unkown'; |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD MODULE" style="width:150px"><br>'; |
495 |
if($osver[1] == '') $osver[1]='unkown'; |
echo '<input class="but" type=submit name="do_add" value="SAVE+ADD MENUITEM" style="width:150px"><br>'; |
496 |
|
if($alxos >= '0.6.0') |
497 |
# update os string in database |
{ |
498 |
if($alxos == '' && $osver[0] >= '0.5.3') |
echo '<input class="but" type=submit name="do_add" value="INSTALL PLUGIN" style="width:150px"><br>'; |
499 |
{ |
} |
500 |
mysql_query('insert into client_version(serial,os,utils) values("'.$id.'","'.$osver[0].'","'.$osver[1].'") |
echo '<br>'; |
|
on duplicate key update os="'.$osver[0].'", utils="'.$osver[1].'"'); |
|
|
# reload the site |
|
|
echo '<script type="text/javascript">setTimeout(\'window.location.reload()\',0);</script>'; |
|
|
} |
|
501 |
|
|
502 |
echo '<u>OS:</u> '.$osver[0].'<br>'; |
if($id>0) $KILLCAP='DEACTIVATE'; else $KILLCAP='ACTIVATE'; |
503 |
echo '<u>Utils:</u> '.$osver[1].'<br>'; |
echo '<input class="but" type=button value="'.$KILLCAP.'" style="width:150px" onclick="if(confirm(\''.$KILLCAP.' CLIENT #'.abs($id).' ?\')) { window.open(\'show.php?id='.$id.'&kill=1\', \'DeactWin\', \'width=200,height=100\'); location.href=\'index.php\'; }"><br>'; |
504 |
|
echo '<input class="but" type=button value="IMPORT FROM..." style="width:150px" onclick="location.href=\'import.php?id='.$id.'\'"><br>'; |
505 |
|
echo '<input class="but" type=reset value="UNDO CHANGES" style="width:150px"><br><br>'; |
506 |
|
|
507 |
if($osver[0] <> 'unkown') |
$davor = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id-1),'mac')!=null; if($davor) $disdavor=''; else $disdavor = 'disabled=1'; |
508 |
{ |
$danach = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id+1),'mac')!=null; if($danach) $disdanach=''; else $disdanach = 'disabled=1'; |
509 |
//write them to database |
|
510 |
} |
echo '<input class="but" type=button '.$disdavor.' value="<" style="width:30px" onclick="location.href=\'show.php?id='.($id-1).'\'">'; |
511 |
|
echo '<input class="but" type=button value="REFRESH" style="width:90px" onclick="location.href=\'show.php?id='.$id.'\'">'; |
512 |
|
echo '<input class="but" type=button '.$disdanach.' value=">" style="width:30px" onclick="location.href=\'show.php?id='.($id+1).'\'">'; |
513 |
|
echo '<br><input class="but" type=button value="INDEX" style="width:150px; font-weight:bold" onclick="location.href=\'index.php\'"><br><br>'; |
514 |
|
|
515 |
|
echo '<br>'; |
516 |
|
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff"><b>'; |
517 |
|
if($id<0) echo '<b>DEACTIVATED!</b><br><br>'; |
518 |
|
echo '<u>Serial:</u> #'.$id.'<br>'; |
519 |
|
echo '<u>Stand:</u> '.date('H:i:s').'<br>'; |
520 |
|
echo '<u>Status:</u> <img src="pics/'.strtolower($state).'line.gif" align=top> '.$state.'line<br>'; |
521 |
|
if($state=='On') |
522 |
|
{ |
523 |
|
echo '<u>IP:</u> '.$conn['ip'].'<br><br>'; |
524 |
|
if($alxos >= '0.6.0') |
525 |
|
{ |
526 |
|
$osver = @sshdo('os_ver=$(</etc/mageversion);cfg_ver=$(/sbin/magequery -n alxconfig-ng | cut -d" " -f5);pname=${cfg_ver%-*-*};cfg_ver=${cfg_ver/${pname}-};echo "${os_ver}:${cfg_ver}"', $conn['ip']); |
527 |
} |
} |
528 |
|
else |
529 |
|
{ |
530 |
|
$osver = @sshdo('os_ver=$(</etc/mageversion);cfg_ver=$(/sbin/magequery -n alxconfig-ng-alx | cut -d" " -f5);pname=${cfg_ver%-*-*};cfg_ver=${cfg_ver/${pname}-};echo "${os_ver}:${cfg_ver}"', $conn['ip']); |
531 |
|
} |
532 |
|
$osver = explode(':',$osver[1]); |
533 |
|
if($osver[0] == '') $osver[0]='unkown'; |
534 |
|
if($osver[1] == '') $osver[1]='unkown'; |
535 |
|
|
536 |
echo '</b></div>'; |
# update os string in database |
537 |
//echo '<br><br>'; |
if($alxos == '' && $osver[0] >= '0.5.3') |
538 |
|
{ |
539 |
|
mysql_query('insert into client_version(serial,os,utils) values("'.$id.'","'.$osver[0].'","'.$osver[1].'") |
540 |
|
on duplicate key update os="'.$osver[0].'", utils="'.$osver[1].'"'); |
541 |
|
# reload the site |
542 |
|
echo '<script type="text/javascript">setTimeout(\'window.location.reload()\',0);</script>'; |
543 |
|
} |
544 |
|
|
545 |
|
echo '<u>OS:</u> '.$osver[0].'<br>'; |
546 |
|
echo '<u>Utils:</u> '.$osver[1].'<br>'; |
547 |
|
|
548 |
if($state=='On') |
if($osver[0] <> 'unkown') |
549 |
{ |
{ |
550 |
echo '<input class="but" type=button value="REBOOT" style="width:150px" onclick="if(confirm(\'REBOOT CLIENT #'.$id.' ?\')) window.open(\'reboot.php?client='.$id.'&ip='.$conn['ip'].'&op=reboot\', \'ShutdownWin\', \'width=200,height=100\')"><br>'; |
//write them to database |
551 |
echo '<input class="but" type=button value="SHUTDOWN" style="width:150px" onclick="if(confirm(\'SHUTDOWN CLIENT #'.$id.' ?\')) window.open(\'reboot.php?client='.$id.'&ip='.$conn['ip'].'&op=halt\', \'ShutdownWin\', \'width=200,height=100\')"><br>'; |
} |
552 |
echo '<br>'; |
} |
553 |
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff" align="center"><b>'; |
|
554 |
echo 'Remote Shadow:</b></div>'; |
echo '</b></div>'; |
555 |
echo '<input class="but" type=button value="VNC" style="width:150px" onclick="window.open(\'vncviewer.php?ip='.$conn['ip'].'\', \'VncViewer\', \'width=200,height=100\')"><br>'; |
|
556 |
|
if($state=='On') |
557 |
|
{ |
558 |
|
echo '<input class="but" type=button value="REBOOT" style="width:150px" onclick="if(confirm(\'REBOOT CLIENT #'.$id.' ?\')) window.open(\'reboot.php?client='.$id.'&ip='.$conn['ip'].'&op=reboot\', \'ShutdownWin\', \'width=200,height=100\')"><br>'; |
559 |
|
echo '<input class="but" type=button value="SHUTDOWN" style="width:150px" onclick="if(confirm(\'SHUTDOWN CLIENT #'.$id.' ?\')) window.open(\'reboot.php?client='.$id.'&ip='.$conn['ip'].'&op=halt\', \'ShutdownWin\', \'width=200,height=100\')"><br>'; |
560 |
|
echo '<br>'; |
561 |
|
|
562 |
|
if($alxos >= '0.6.0') |
563 |
|
{ |
564 |
|
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff" align="center"><b>'; |
565 |
|
echo 'Hardware Detection:</b></div>'; |
566 |
|
echo '<input class="but" type=button value="LAN" style="width:50px" onclick="javascript:urlopen(\'include/hwinfo.php?ip='.$conn['ip'].'&cmd=lan\',\'POST\');">'; |
567 |
|
echo '<input class="but" type=button value="WLAN" style="width:50px" onclick="javascript:urlopen(\'include/hwinfo.php?ip='.$conn['ip'].'&cmd=wlan\',\'POST\');">'; |
568 |
|
echo '<input class="but" type=button value="VGA" style="width:50px" onclick="javascript:urlopen(\'include/hwinfo.php?ip='.$conn['ip'].'&cmd=vga\',\'POST\');">'; |
569 |
echo '<br>'; |
echo '<br>'; |
570 |
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff" align="center"><b>'; |
echo '<input class="but" type=button value="PRN" style="width:50px" onclick="javascript:urlopen(\'include/hwinfo.php?ip='.$conn['ip'].'&cmd=printer\',\'POST\');">'; |
571 |
echo 'Client Update:</b></div>'; |
echo '<input class="but" type=button value="HRDW" style="width:50px" onclick="javascript:urlopen(\'include/hwinfo.php?ip='.$conn['ip'].'&cmd=system\',\'POST\');">'; |
572 |
echo '<input class="but" type=button value="UPDATE MAGE DB" style="width:150px" onclick="if(confirm(\'UPDATE DB ON CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=update\', \'ShutdownWin\', \'width=800,height=600\')"><br>'; |
echo '<br><br>'; |
|
echo '<input class="but" type=button value="CALC DEPS" style="width:150px" onclick="if(confirm(\'CALC DEPS FOR CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=calc\', \'ShutdownWin\', \'width=800,height=600\')"><br>'; |
|
|
echo '<input class="but" type=button value="UPGRADE CLIENT" style="width:150px" onclick="if(confirm(\'UPGRADE ALL PACKAGES ON CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=upgrade\', \'ShutdownWin\', \'width=800,height=600\');setTimeout(\'window.location.reload()\',0);"><br>'; |
|
573 |
} |
} |
|
else |
|
|
echo '<input class="but" type=button value="WAKE ON LAN" style="width:150px" onclick="if(confirm(\'WAKE CLIENT #'.$id.' ?\')) window.open(\'wake_on_lan.php?mac='.$data['client_serials']['mac'].'\', \'WakeWin\', \'width=200,height=100\')"><br>'; |
|
574 |
|
|
575 |
echo '<br><center><a href="share/ChangeLog.html" target="_blank">[ChangeLog]</a> <a href="share/FAQ.html" target="_blank">[FAQs]</a></center>'; |
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff" align="center"><b>'; |
576 |
|
echo 'Remote Shadow:</b></div>'; |
577 |
|
echo '<input class="but" type=button value="VNC" style="width:75px" onclick="window.open(\'vncviewer.php?ip='.$conn['ip'].'\', \'VncViewer\', \'width=200,height=100\')">'; |
578 |
|
echo '<input class="but" type=button value="SSH" style="width:75px" onclick="window.open(\'mindterm.php?ip='.$conn['ip'].'\', \'MindTerm\', \'width=200,height=100\')">'; |
579 |
|
echo '<br><br>'; |
580 |
|
echo '<div style="border:solid black 1px; padding:5px; background-color:#d5e5ff" align="center"><b>'; |
581 |
|
echo 'Client Update:</b></div>'; |
582 |
|
echo '<input class="but" type=button value="UPDATE MAGE DB" style="width:150px" onclick="if(confirm(\'UPDATE DB ON CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=update\', \'ShutdownWin\', \'width=800,height=600\')"><br>'; |
583 |
|
echo '<input class="but" type=button value="CALC DEPS" style="width:150px" onclick="if(confirm(\'CALC DEPS FOR CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=calc\', \'ShutdownWin\', \'width=800,height=600\')"><br>'; |
584 |
|
echo '<input class="but" type=button value="UPGRADE CLIENT" style="width:150px" onclick="if(confirm(\'UPGRADE ALL PACKAGES ON CLIENT #'.$id.' ?\')) window.open(\'mageupgrade.php?client='.$id.'&ip='.$conn['ip'].'&op=upgrade\', \'ShutdownWin\', \'width=800,height=600\');setTimeout(\'window.location.reload()\',0);"><br>'; |
585 |
|
} |
586 |
|
else |
587 |
|
echo '<input class="but" type=button value="WAKE ON LAN" style="width:150px" onclick="if(confirm(\'WAKE CLIENT #'.$id.' ?\')) window.open(\'wake_on_lan.php?mac='.$data['client_serials']['mac'].'\', \'WakeWin\', \'width=200,height=100\')"><br>'; |
588 |
|
|
589 |
|
echo '<br><center><a href="share/ChangeLog.html" target="_blank">[ChangeLog]</a> <a href="share/FAQ.html" target="_blank">[FAQs]</a></center>'; |
590 |
|
|
591 |
echo '</td></tr></table>'; |
echo '</td></tr></table>'; |
592 |
echo '</form>'; |
echo '</form>'; |
593 |
?> |
?> |