--- alx-src/trunk/alx-web/show.php 2005/10/10 22:48:24 363 +++ alx-src/trunk/alx-web/show.php 2008/06/06 08:37:02 471 @@ -1,8 +1,8 @@ DROPDOWN / HIDDEN / IGNORE / 1 / BOLD / PASSWORD / SHOW / SHOWTIME / MONITORID) $drop = array(); - $drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i810', 'i710', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'sis', 'trident', 'tseng', 'via'); - $drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x1024', '1600x1200'); + $drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i810', 'i710', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'sis', 'trident', 'tseng', 'via', 'vmware'); + $drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x1024','1360x768', '1366x768', '1600x1200'); $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'); + $drop['keyboard'] = array('kbd'); + $drop['cfg_network_module'] = array('auto','3c59x', '8139too', '8139cp', 'e100', 'ne2k-pci', 'pcnet32', 'sis900', 'via-rhine', 'zd1211'); $drop['networking'] = array('dhcp', 'static'); - $drop['port'] = array('lpt1', 'com1', 'com2', 'lpd', 'socket'); - $drop['location'] = array('', 'BO', 'HAT', 'LIN'); + $drop['default_iface'] = sqlarr('SELECT iface FROM cfg_interfaces where serial='.$id, '', 'iface'); + $drop['iface'] = 'show'; + $drop['port'] = array('lpt1', 'com1', 'com2', 'lpd', 'socket', 'ipp'); + $drop['location'] = sqlarr('SELECT location FROM client_locations', '', 'location'); $drop['id'] = 'hidden'; $drop['flg_modified'] = '1'; $drop['serial'] = 'ignore'; $drop['monitorid'] = 'monitorid'; $drop['hostname'] = 'bold'; $drop['session'] = 'bold'; + $drop['displaymode'] = array('fullscreen', 'seamless', '1280x1024', '1024x768', '800x600'); $drop['cfg_autostart_session'] = 'filename'; $drop['mtime'] = 'showtime'; $drop['mac'] = 'show'; @@ -56,13 +60,17 @@ 'sierpinski', 'slip', 'solitare', 'space', 'sphere', 'spiral', 'spline', 'star', 'starfish', 'strange', 'swarm', 'swirl', 't3d', 'tetris', 'thornbird', 'tik_tak', 'toneclock', 'triangle', 'tube', 'turtle', 'vines', 'voters', 'wator', 'wire', 'world', 'worm', 'xcl', 'xjack'); - $drop['iface'] = array('eth0', 'wlan0'); + + + // ACHTUNG!!! wlan_-Felder heißen eigentlich wireless_ $drop['wireless_mode'] = array('', 'managed', 'ad-hoc', 'master', 'repeater', 'secondary', 'monitor', 'auto'); $drop['wireless_auth_mode'] = array('', 'wep', 'wpa', 'off'); $drop['wireless_key_length'] = array('', '64', '128', '256'); $drop['wireless_channel'] = array('', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14'); $drop['wireless_frequency'] = array('', '2.412G', '2.417G', '2.422G', '2.427G', '2.432G', '2.437G', '2.442G', '2.447G', '2.452G', '2.457G', '2.462G', '2.467G', '2.472G', '2.484G'); + $drop['wireless_key'] = 'password'; + $drop['wireless_key_ascii'] = 'password'; // GGF. NEUEN DATENSATZ EINFÜGEN if(isset($_POST['do_add'])) @@ -94,7 +102,10 @@ foreach($tabs as $k=>$t) { - if(!$multi[$k]) mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id); + if(!$multi[$k]) + { + mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id); + } else { $i=0; @@ -121,40 +132,81 @@ - // ANZEIGEN - function parsearr($name, $arr, $del=false) + // ANZEIGEN - KLAPPFUNKTIONEN + $absnames = array(); + + function openabs($heading, $helpfile='') + { + global $absnames; + $absnames[] = $heading; + + //
+ + if( $_SESSION['openclose'][$heading] ) + { + echo ' ['.$heading.']'; + if($helpfile!='') echo ' [?]'; + echo '
'; + } + else + { + echo ' ['.$heading.']'; + if($helpfile!='') echo ' [?]'; + echo '

'; + } + + + // ANZEIGEN + + function parsearr($name, $arr, $del=false, $wireless=false) { global $drop; global $id; $parts = explode('_',$name); $helpfile='help.php?page='.$parts[1]; - echo '['.$name.'] (?)'; + openabs($name, $helpfile); + echo ''; 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; if(is_array($d)) { - echo ''; } else if($d=='hidden') echo ''; else if($d=='1') echo ''; - else if($d=='monitorid') echo ''; - else if($d=='bold') echo ''; - else if($d=='filename') echo ''; - else if($d=='show') echo ''; - else if($d=='showtime') echo ''; - else if($d=='password' && $v=='') echo ''; - else if($d=='password') echo ''; + else if($d=='monitorid') echo ''; + else if($d=='bold') echo ''; + else if($d=='filename') echo ''; + else if($d=='show') echo ''; + else if($d=='showtime') echo ''; + else if($d=='password' && $v=='') echo ''; + else if($d=='password') echo ''; else if($d=='txt') echo ''; - else if($d!='ignore') echo ''; + else if($d!='ignore') echo ''; } - if($del) echo ''; - echo ''; + if($del) echo ''; + echo '
'.$k.'=
'.$k2.'=
'.$k.'=
'.$k.'=
filename=
'.$k.'= '.$v.'
'.$k.'= '.date('d.m.y - H:i:s', $v).'
'.$k.'=
'.$k.'=
'.$k2.'=
'.$k2.'=
filename=
'.$k2.'= '.$v.'
'.$k2.'= '.date('d.m.y - H:i:s', $v).'
'.$k2.'=
'.$k2.'=
'.$k.'=
'.$k2.'=
delete=
delete=
'; + closeabs(); + + //if($name=='cfg_network' && !$wireless) parsearr($name.'_wireless', $arr, $del, true); } function parsearrs($name, $arr) { @@ -162,26 +214,88 @@ parsearr($name.'_'.$k, $a, true); } - echo 'ALX Config - Client #'.$id.''; - echo ''; + ?> + ALX Config + + + + + + '; echo '
'; echo ''; echo ''; // ANZEIGEN => NON-MULTI TABELLEN - echo '
'; + echo '
'; + + echo ''; + echo ' OPEN... '; + echo ' CLOSE... ALL'; + echo '

'; - echo ''; foreach($tabs as $k=>$t) if(!$multi[$k]) parsearr($t, $data[$t]); - echo '
'; // ANZEIGEN => MULTI TABELLEN - echo '
'; + echo ''; - echo ''; foreach($tabs as $k=>$t) if($multi[$k]) parsearrs($t, $data[$t]); - echo '
'; + + echo ''; // ANZEIGEN => NAVI echo '
'; @@ -198,27 +312,27 @@ echo '

'; - echo '

'; + echo '

'; - echo '
'; - echo '
'; - echo '
'; - echo '
'; - echo '

'; + echo '
'; + echo '
'; + echo '
'; + echo '
'; + echo '

'; if($id>0) $KILLCAP='DEACTIVATE'; else $KILLCAP='ACTIVATE'; - echo '
'; - echo '
'; - echo '

'; + echo '
'; + echo '
'; + echo '

'; $davor = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id-1),'mac')!=null; if($davor) $disdavor=''; else $disdavor = 'disabled=1'; $danach = sqlfirst('SELECT mac FROM client_serials WHERE serial='.($id+1),'mac')!=null; if($danach) $disdanach=''; else $disdanach = 'disabled=1'; - echo ''; - echo ''; - echo ''; - echo '


'; + echo ''; + echo ''; + echo ''; + echo '


'; echo '

'; echo '
'; @@ -226,29 +340,45 @@ echo 'Serial:  #'.$id.'
'; echo 'Stand:  '.date('H:i:s').'
'; echo 'Status: '.$state.'line
'; - if($state=='On') echo 'IP: '.$conn['ip']; + if($state=='On') + { + echo 'IP: '.$conn['ip'].'

'; + $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); + + $osver = exec($sshcmd.' -l root '.$conn['ip'].' \'os_ver=$(<'.$mageversion.');cfg_ver=$(/sbin/magequery -n '.$alxconfig.'|cut -d" " -f5);pname=${cfg_ver%-*-*};cfg_ver=${cfg_ver/${pname}-};echo "${os_ver}:${cfg_ver}"\''); + $osver = explode(':',$osver); + } + if($osver[0] == '') $osver[0]='unkown'; + if($osver[1] == '') $osver[1]='unkown'; + echo 'OS: '.$osver[0].'
'; + echo 'Utils: '.$osver[1].'
'; + } echo '
'; //echo '

'; if($state=='On') { - echo '
'; - echo '
'; + echo '
'; + echo '
'; echo '
'; - echo '
'; - echo 'Client Software Update:

'; - echo '
'; - echo '
'; - echo '
'; - echo '
'; + echo '
'; + echo 'Client Update:
'; + echo '
'; + echo '
'; + echo '
'; } else - echo '
'; + echo '
'; - echo '
ChangeLog'; - echo '
FAQs'; + echo '
[ChangeLog] [FAQs]
'; echo '
'; echo '';