Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


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

Properties

Name Value
svn:executable *