Magellan Linux

Annotation of /alx-src/branches/alx-web-070/show.php

Parent Directory Parent Directory | Revision Log Revision Log


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

Properties

Name Value
svn:executable *