Magellan Linux

Contents of /alx-src/branches/alx-web-060/show.php

Parent Directory Parent Directory | Revision Log Revision Log


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

Properties

Name Value
svn:executable *