--- alx-src/branches/alx-web-050/show.php 2010/12/03 14:06:48 1612
+++ alx-src/branches/alx-web-070/show.php 2015/09/11 11:02:38 7112
@@ -1,424 +1,484 @@
- // INCLUDE UND TABELLEN-DEFINITIONEN
- include('include/basesql.php');
- $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');
- $multi= array( 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0);
- $data = array();
+// INCLUDE UND TABELLEN-DEFINITIONEN
+include('include/basesql.php');
+include('include/common-functions.php');
+// INCLUDE CURRENT-PROBLEMS
+include('include/current-problems.php');
- // get alx version info for
- $alxinfo = sqlfirst('SELECT * FROM client_version WHERE serial='.$id);
- $alxos = $alxinfo[os];
- $alxutils = $alxinfo[utils];
+$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');
+$multi= array( 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1);
+$data = array();
- if($kill==1)
- {
- foreach($tabs as $t) mysql_query('UPDATE '.$t.' SET serial=-serial WHERE serial='.$id);
- echo '
';
- echo '';
+// get alx version info for
+$alxinfo = sqlfirst('SELECT * FROM client_version WHERE serial='.$id);
+$alxos = $alxinfo[os];
+$alxutils = $alxinfo[utils];
- if($id<0) echo 'ACTIVATED #'.abs($id);
- else echo 'DEACTIVATED #'.$id;
+// get gfxdriver
+$gfxinfo = sqlfirst('SELECT * FROM cfg_graphic WHERE serial='.$id);
- echo '
';
- return true;
- }
+if($kill==1)
+{
+ foreach($tabs as $t) mysql_query('UPDATE '.$t.' SET serial=-serial WHERE serial='.$id);
- // FELD-DEFINITIONEN (ARRAY=>DROPDOWN / HIDDEN / IGNORE / 1 / BOLD / PASSWORD / SHOW / SHOWTIME / MONITORID)
- $drop = array();
- if($alxos >= '0.5.3')
- {
- $drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'via');
- }
- else
- {
- $drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i810', 'i710', 'nv', 'mga', 'r128', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'via');
- }
- $drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x960', '1280x1024', '1360x768', '1366x768', '1400x1050', '1440x900', '1600x1200', '1680x1050');
- $drop['depth'] = array('24', '16', '8');
- $drop['mouse'] = array('Auto', 'IMPS/2', 'PS/2');
- $drop['cfg_network_module'] = array('3c59x', '8139too', '8139cp', 'e100', 'ne2k-pci', 'pcnet32', 'sis900', 'via-rhine', 'zd1211', 'b44', 'bnx2', 'dl2k', 'e1000', 'r8169', 'sk98lin', 'tg3', 'via-velocity');
- $drop['networking'] = array('dhcp', 'static');
- $drop['port'] = array('lpt1', 'usb1', 'usb2', 'com1', 'com2', 'lpd', 'socket', 'ipp');
- $drop['location'] = sqlarr('SELECT location FROM client_locations', '', 'location');
- $drop['id'] = 'hidden';
- $drop['flg_modified'] = '1';
- $drop['serial'] = 'ignore';
- if($alxos>='0.5.3')
- {
- $drop['monitorid'] = 'ignore';
- $drop['refresh_rate'] = array('','60','75','85','100');
- }
- else
- {
- $drop['monitorid'] = 'monitorid';
- $drop['refresh_rate'] = 'ignore';
- }
- $drop['hostname'] = 'bold';
- $drop['session'] = 'bold';
- $drop['cfg_autostart_session'] = 'filename';
- $drop['mtime'] = 'showtime';
- $drop['mac'] = 'show';
- $drop['client_serials_serial'] = 'show';
- $drop['password'] = 'password';
- $drop['shell'] = 'password';
- $drop['vnc'] = 'password';
- $drop['samba'] = 'password';
- $drop['station'] = 'password';
- $drop['txt'] = 'txt';
- $drop['screensaver'] = array('','blank', 'random', 'ant', 'ant3d', 'apollonian', 'ball', 'bat', 'blot', 'bomb', 'bouboule',
- 'bounce', 'braid', 'bubble', 'bug', 'clock', 'coral', 'crystal', 'daisy', 'dclock', 'decay', 'deco',
- 'demon', 'dilemma', 'discrete', 'dragon', 'drift', 'euler2d', 'eyes', 'fadeplot', 'fiberlamp', 'flag',
- 'flame', 'flow', 'forest', 'galaxy', 'goop', 'grav', 'helix', 'hop', 'hyper', 'ico', 'ifs', 'image',
- 'juggle', 'julia', 'kaleid', 'kumppa', 'laser', 'life', 'life1d', 'life3d', 'lightning', 'lisa', 'lissie',
- 'loop', 'lyapunov', 'mandelbrot', 'marquee', 'matrix', 'maze', 'mountain', 'munch', 'nose', 'pacman',
- 'penrose', 'petal', 'petri', 'polyominoes', 'puzzle', 'pyro', 'qix', 'roll', 'rotor', 'scooter', 'shape',
- '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');
- $drop['client_version_os'] = 'show';
- $drop['client_version_utils'] = 'show';
-
- // 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';
+ echo '';
+ echo '';
- // GGF. NEUEN DATENSATZ EINFÜGEN
- if(isset($_POST['do_add']))
- {
- list($bla,$what) = explode(' ',$_POST['do_add']);
- if($what=='COMMENT') sqladd('cfg_comments', array('serial'=>$id));
- else if($what=='PRINTER') sqladd('cfg_printers', array('serial'=>$id));
- else if($what=='MODULE') sqladd('cfg_modules', array('serial'=>$id));
- else if($what=='SESSION') sqladd('cfg_sessions', array('domain'=>'DOM_AKA_NT', 'browseradrs'=>'128.20.50.50;128.20.50.66;128.20.50.71;128.20.50.46;128.20.100.31;128.20.100.32', 'serial'=>$id));
- else if($what=='MENUITEM') sqladd('cfg_other_menuitems', array('serial'=>$id));
- }
-
-
- // GGF. SPEICHERN
- if($_POST['do_upl'])
- {
- function postarr($prefix)
- {
- $prefix.='_';
- $prelen = strlen($prefix);
+ if($id<0) echo 'ACTIVATED #'.abs($id);
+ else echo 'DEACTIVATED #'.$id;
- $arr = array();
- foreach($_POST as $k=>$v)
- if((substr($k,0,$prelen)==$prefix) && ($v!='KEEPPASS'))
- $arr[substr($k,$prelen)] = stripslashes($v);
+ echo '
';
+ return true;
+}
- return $arr;
- }
+// FELD-DEFINITIONEN (ARRAY=>DROPDOWN / HIDDEN / IGNORE / 1 / BOLD / PASSWORD / SHOW / SHOWTIME / MONITORID)
+$drop = array();
+$drop['cfg_graphic_module'] = array('vesa', 'ati', 'cirrus', 'i710', 'intel', 'nv', 'nouveau', 'mach64', 'mga', 'unichrome', 'radeon', 's3', 's3virge', 'savage', 'sis', 'trident', 'tseng', 'vmware');
+if($gfxinfo[module] == 'intel')
+{
+ $drop['cfg_graphic_hdmi'] = array('disable', 'enable');
+}
+else
+{
+ $drop['cfg_graphic_hdmi'] = 'ignore';
+}
+$drop['resolution'] = array('640x480', '800x600', '1024x768', '1280x960', '1280x1024', '1360x768', '1366x768', '1400x1050', '1440x900', '1600x1200', '1680x1050', '1280x720', '1920x1080');
+$drop['depth'] = array('24', '16', '8');
+$drop['mouse'] = array('Auto', 'IMPS/2', 'PS/2');
+$drop['keyboard'] = array('PC105');
+$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');
+$drop['networking'] = array('dhcp', 'static');
+$drop['port'] = array('lpt1', 'usb1', 'usb2', 'com1', 'com2');
+for ($i=0; $i<999; $i++) { $drop['cfg_printers_'.$i.'_ip'] = 'ignore'; }
+$drop['share'] = 'ignore';
+$drop['location'] = sqlarr('SELECT location FROM client_locations', '', 'location');
+$drop['id'] = 'hidden';
+$drop['flg_modified'] = '1';
+$drop['serial'] = 'ignore';
+$drop['monitorid'] = 'ignore';
+$drop['refresh_rate'] = array('','60','75','85','100');
+$drop['hostname'] = 'bold';
+$drop['session'] = 'bold';
+$drop['cfg_autostart_session'] = sqlarr('SELECT filename FROM cfg_sessions where serial='.$id, '', 'filename');
+array_unshift($drop['cfg_autostart_session'], "");
+$drop['mtime'] = 'showtime';
+$drop['mac'] = 'show';
+$drop['client_serials_serial'] = 'show';
+$drop['password'] = 'password';
+$drop['shell'] = 'password';
+$drop['vnc'] = 'password';
+$drop['samba'] = 'password';
+$drop['station'] = 'password';
+$drop['txt'] = 'txt';
+$drop['screensaver'] = array('','blank', 'random', 'ant', 'ant3d', 'apollonian', 'ball', 'bat', 'blot', 'bomb', 'bouboule',
+ 'bounce', 'braid', 'bubble', 'bug', 'clock', 'coral', 'crystal', 'daisy', 'dclock', 'decay', 'deco',
+ 'demon', 'dilemma', 'discrete', 'dragon', 'drift', 'euler2d', 'eyes', 'fadeplot', 'fiberlamp', 'flag',
+ 'flame', 'flow', 'forest', 'galaxy', 'goop', 'grav', 'helix', 'hop', 'hyper', 'ico', 'ifs', 'image',
+ 'juggle', 'julia', 'kaleid', 'kumppa', 'laser', 'life', 'life1d', 'life3d', 'lightning', 'lisa', 'lissie',
+ 'loop', 'lyapunov', 'mandelbrot', 'marquee', 'matrix', 'maze', 'mountain', 'munch', 'nose', 'pacman',
+ 'penrose', 'petal', 'petri', 'polyominoes', 'puzzle', 'pyro', 'qix', 'roll', 'rotor', 'scooter', 'shape',
+ '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');
+$drop['client_version_os'] = 'show';
+$drop['client_version_utils'] = 'show';
+
+// 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', 'wpa2', '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';
+
+// plugin support
+for ($i=0; $i<999; $i++) { $drop['cfg_plugins_'.$i.'_plugin'] = 'pluginconfig'; }
+for ($i=0; $i<999; $i++)
+{
+ $drop['cfg_plugins_'.$i.'_plugin_array'] = sqlarr('SELECT plugin FROM avail_plugins', '', 'plugin');
+ array_unshift($drop['cfg_plugins_'.$i.'_plugin_array'], "");
+}
+
+// get current citrix sessions
+// split all citrix server into an array to get the first server from list
+$citrix_query_browser = split(";", $citrix_browseradrs);
+exec($wwwroot.'/pnabrowse-wrapper -A '.$citrix_query_browser[0], $returned_citrix_sessions, $retval);
+if ($retval == 0)
+{
+ $citrix_public_applications = str_replace("'", "", $returned_citrix_sessions);
+ // add an empty value add the first position of the array as session-default
+ array_unshift($citrix_public_applications, "");
+ for ($i=0; $i<999; $i++) { $drop['cfg_sessions_'.$i.'_session'] = $citrix_public_applications; }
+}
+
+// GGF. NEUEN DATENSATZ EINFÜGEN
+if(isset($_POST['do_add']))
+{
+ list($bla,$what) = explode(' ',$_POST['do_add']);
+ if($what=='COMMENT') sqladd('cfg_comments', array('serial'=>$id));
+ else if($what=='PRINTER') sqladd('cfg_printers', array('serial'=>$id));
+ else if($what=='MODULE') sqladd('cfg_modules', array('serial'=>$id));
+ else if($what=='SESSION') sqladd('cfg_sessions', array('domain'=>$citrix_domain_name, 'browseradrs'=>$citrix_browseradrs, 'serial'=>$id));
+ else if($what=='MENUITEM') sqladd('cfg_other_menuitems', array('serial'=>$id));
+ else if($what=='PLUGIN') sqladd('cfg_plugins', array('serial'=>$id));
+}
+
+
+// GGF. SPEICHERN
+if($_POST['do_upl'])
+{
+ function postarr($prefix)
+ {
+ $prefix.='_';
+ $prelen = strlen($prefix);
+
+ $arr = array();
+ foreach($_POST as $k=>$v)
+ if((substr($k,0,$prelen)==$prefix) && ($v!='KEEPPASS'))
+ $arr[substr($k,$prelen)] = stripslashes($v);
- foreach($tabs as $k=>$t)
- {
- if(!$multi[$k]) mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id);
- else
- {
- $i=0;
- while(isset($_POST[$t.'_'.$i.'_id']))
- {
- if($_POST[$t.'_'.$i.'_delete'])
- mysql_query('DELETE FROM '.$t.' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']);
- else
- mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t.'_'.$i)).' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']);
- $i++;
- }
- }
- }
+ return $arr;
}
-
- // EINLESEN DER DATEN AUS SQL-TABELLEN
foreach($tabs as $k=>$t)
{
- if($multi[$k]) $data[$t] = sqlarr('SELECT * FROM '.$t.' WHERE serial='.$id);
- else $data[$t] = sqlfirst('SELECT * FROM '.$t.' WHERE serial='.$id);
- }
-
- // ANZEIGEN - KLAPPFUNKTIONEN
- $absnames = array();
-
- function openabs($heading, $helpfile='')
- {
- global $absnames;
- $absnames[] = $heading;
-
- //
-
- if( $_SESSION['openclose'][$heading] )
- {
- echo ' ['.$heading.'] ';
- if($helpfile!='') echo ' [?] ';
- echo '';
- }
+ if(!$multi[$k]) mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t)).' WHERE serial='.$id);
else
{
- echo '
['.$heading.'] ';
- if($helpfile!='') echo '
[?] ';
- echo '
';
+ $i=0;
+ while(isset($_POST[$t.'_'.$i.'_id']))
+ {
+ if($_POST[$t.'_'.$i.'_delete'])
+ mysql_query('DELETE FROM '.$t.' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']);
+ else
+ mysql_query('UPDATE '.$t.' SET '.updatestr(postarr($t.'_'.$i)).' WHERE serial='.$id.' AND id='.$_POST[$t.'_'.$i.'_id']);
+ $i++;
+ }
}
}
+
+ // reload site
+ header("location: show.php?id=".$id);
+}
+
+// EINLESEN DER DATEN AUS SQL-TABELLEN
+foreach($tabs as $k=>$t)
+{
+ if($multi[$k]) $data[$t] = sqlarr('SELECT * FROM '.$t.' WHERE serial='.$id);
+ else $data[$t] = sqlfirst('SELECT * FROM '.$t.' WHERE serial='.$id);
+}
+
+// ANZEIGEN - KLAPPFUNKTIONEN
+$absnames = array();
+
+function openabs($heading, $helpfile='')
+{
+ global $absnames;
+ $absnames[] = $heading;
- function closeabs()
+ //
+
+ if( $_SESSION['openclose'][$heading] )
{
- //
-
- echo '
';
+ echo '
['.$heading.'] ';
+ if($helpfile!='') echo '
[?] ';
+ echo '
';
}
+ else
+ {
+ echo '
['.$heading.'] ';
+ if($helpfile!='') echo '
[?] ';
+ echo '
';
+ }
+}
+
+function closeabs()
+{
+ //
+ echo '
';
+}
- // ANZEIGEN
-
- function parsearr($name, $arr, $del=false, $wireless=false)
- {
- global $drop;
- global $id;
- global $alxos;
-
- $parts = explode('_',$name); $helpfile='help.php?page='.$parts[1];
- 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;
+// ANZEIGEN
- //replace i810 with intel on 0.5.3 or higher
- if($alxos >= '0.5.3' && $v == 'i810')
- {
- echo 'Replaced "i810" with "intel" - Please press SAVE! ';
- $v='intel';
- }
+function parsearr($name, $arr, $del=false, $wireless=false)
+{
+ global $drop;
+ global $id;
+ global $alxos;
- if(is_array($d))
+ $parts = explode('_',$name); $helpfile='help.php?page='.$parts[1];
+ openabs($name, $helpfile);
+ echo '';
- closeabs();
+ else if($d=='bold') echo ''.$k2.' = ';
+ else if($d=='filename') echo 'filename = ';
+ else if($d=='show') echo ''.$k2.' = '.$v.' ';
+ else if($d=='showtime') echo ''.$k2.' = '.date('d.m.y - H:i:s', $v).' ';
+ else if($d=='password' && $v=='') echo ''.$k2.' = ';
+ else if($d=='password') echo ''.$k2.' = ';
+ else if($d=='txt') echo ' ';
+ else if($d!='ignore') echo ''.$k2.' = ';
+ }
+
+ if($del) echo 'delete = ';
+ echo '
';
+ closeabs();
+
+ if($name=='cfg_network' && !$wireless) parsearr($name.'_wireless', $arr, $del, true);
+}
+
+function parsearrs($name, $arr)
+{
+ foreach($arr as $k=>$a)
+ parsearr($name.'_'.$k, $a, true);
+}
+
+?>
+
ALX Config
+
+
+
+
-
-
-
-
+ }
-
- //echo '';
- echo '
';
?>