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);
+ }
+
}