X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=setup%2Fclass_setup.inc;h=753751c52537d7e43e28845244038b07f8eea244;hb=01e1aa21db184f46c8d78eb80887bf5d6d594d3c;hp=84c21be3dcc2761cc5e6f8809593dad4fb4eec4f;hpb=d380cd591aaccbb90eb50a0c98eef27a3384aa6f;p=gosa.git diff --git a/setup/class_setup.inc b/setup/class_setup.inc index 84c21be3d..753751c52 100644 --- a/setup/class_setup.inc +++ b/setup/class_setup.inc @@ -18,8 +18,10 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + require_once("class_setupStep.inc"); + class setup { var $i_steps = 9; // Number of setup steps @@ -41,6 +43,7 @@ class setup $this->o_steps[$i++] = new Step_Config2(); $this->o_steps[$i++] = new Step_Config3(); $this->o_steps[$i++] = new Step_Migrate(); + $this->o_steps[$i++] = new Step_Feedback(); $this->o_steps[$i++] = new Step_Finish(); $this->i_steps = $i-1; @@ -52,13 +55,27 @@ class setup } foreach($this->o_steps as $key => $step){ - $this->o_steps[$key]->parent = $this; + $this->o_steps[$key]->parent = &$this; } } - function execute() { + /* Display phpinfo() dialog when $_GET['info'] is set, + * but only do this, if user is allowed to use the setup. + * If setupStep_Welcome is_completed, we are allowed to view those infos- + */ + if(isset($_GET['info']) && preg_match("/Step_Welcome/i",get_class($this->o_steps[1])) && $this->o_steps[1]->is_completed()){ + phpinfo(); + exit(); + } + + /* display step error msgs */ + $msgs = $this->o_steps[$this->i_current]->check(); + foreach($msgs as $msg){ + print_red($msg); + } + $this->o_steps[$this->i_last]->set_active(FALSE); $this->o_steps[$this->i_current]->set_active(); $content = $this->o_steps[$this->i_current]->execute(); @@ -246,11 +263,7 @@ class setup $str .= ""; } $str.= " "; - if(isset($this->o_steps[$this->i_current + 1])){ $str .= ""; - }else{ - $str .= ""; - } $str .=""; } return($str); @@ -273,6 +286,17 @@ class setup } return(false); } + + function step_name_to_id($name) + { + foreach($this->o_steps as $id => $class){ + if(get_class($class) == $name){ + return($id); + } + } + return(0); + } + }