X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fadmin%2Fsystems%2Fclass_systemManagement.inc;h=ac36a2034057729f02f3d917f9962884c62053dd;hb=9695395f399e680d3fbb0c6b7a2df7d8b37d17c8;hp=1ab430adb90966e4ce224dde8f37136d48c9fc58;hpb=99ee92a703ab07286a61eb0a094ef7e9b7f27730;p=gosa.git diff --git a/plugins/admin/systems/class_systemManagement.inc b/plugins/admin/systems/class_systemManagement.inc index 1ab430adb..ac36a2034 100644 --- a/plugins/admin/systems/class_systemManagement.inc +++ b/plugins/admin/systems/class_systemManagement.inc @@ -54,7 +54,7 @@ class systems extends plugin /* Call parent execute */ plugin::execute(); - $_SESSION['LOCK_VARS_TO_USE'] = array("/^user_edit_/i","/^user_del_/","/^act/","/^id/"); + $_SESSION['LOCK_VARS_TO_USE'] = array("/^system_edit_/i","/^system_del_/","/^act/","/^id/"); /******************** Check for functional posts, edit|delete|add|... system devices @@ -67,21 +67,21 @@ class systems extends plugin /* Test Posts */ foreach($_POST as $key => $val){ // Post for delete - if(preg_match("/user_del.*/",$key)){ + if(preg_match("/system_del.*/",$key)){ $s_action = "del"; - $s_entry = preg_replace("/user_".$s_action."_/i","",$key); + $s_entry = preg_replace("/system_del_/i","",$key); // Post for edit - }elseif(preg_match("/user_edit_.*/",$key)){ + }elseif(preg_match("/system_edit_.*/",$key)){ $s_action="edit"; - $s_entry = preg_replace("/user_".$s_action."_/i","",$key); + $s_entry = preg_replace("/system_edit_/i","",$key); // Post for new - }elseif(preg_match("/user_new.*/",$key)){ + }elseif(preg_match("/system_new.*/",$key)){ $s_action="new"; - }elseif(preg_match("/user_tplnew.*/i",$key)){ + }elseif(preg_match("/system_tplnew.*/i",$key)){ $s_action="new_tpl"; - }elseif(preg_match("/user_setpwd_.*/i",$key)){ + }elseif(preg_match("/system_setpwd_.*/i",$key)){ $s_action="change_pw"; - $s_entry = preg_replace("/user_setpwd_/i","",$key); + $s_entry = preg_replace("/system_setpwd_/i","",$key); }elseif(preg_match("/gen_cd_.*/i",$key)){ $s_action="gen_cd"; $s_entry = preg_replace("/gen_cd_/i","",$key); @@ -121,7 +121,7 @@ class systems extends plugin return ($smarty->fetch(get_template_path('chooser.tpl', TRUE))); } - + /******************** Create FAI CD ... ********************/ @@ -132,6 +132,83 @@ class systems extends plugin } + /* Start CD-Creation */ + if ((isset($_POST["cd_create"])) && !empty($this->dn)){ + $smarty->assign("src", "?plug=".$_GET['plug']."&PerformIsoCreation"); + return ($smarty->fetch(get_template_path('gencd_frame.tpl', TRUE))); + } + + + if ($this->dn != "" && isset($_GET['PerformIsoCreation'])){ + + $return_button = "
"; + + $dsc = array(0 => array("pipe", "r"), 1 => array("pipe", "w"), 2 => array("pipe", "w")); + + /* Get and check command */ + $command= search_config($this->config->data['TABS'], "workgeneric", "ISOCMD"); + if (check_command($command)){ + @DEBUG (DEBUG_SHELL, __LINE__, __FUNCTION__, __FILE__, $command, "Execute"); + + /* Print out html introduction */ + echo ' + + +'; + + /* Open process handle and check if it is a valid process */ + $process= proc_open($command." '".$this->dn."'", $dsc, $pipes); + if (is_resource($process)) { + fclose($pipes[0]); + + /* Print out returned lines && write JS to scroll down each line */ + while (!feof($pipes[1])){ + $cur_dat = fgets($pipes[1], 1024); + echo $cur_dat; + echo '' ; + flush(); + } + } + + /* Get error string && close streams */ + $buffer= stream_get_contents($pipes[2]); + + fclose($pipes[1]); + fclose($pipes[2]); + echo ""; + + /* Check return code */ + $ret= proc_close($process); + if ($ret != 0){ + echo "
$buffer"; + } + + + + echo $return_button."