Code

Added additional check to delete block
[gosa.git] / setup / class_setup.inc
index fabac97a9ef526c2198f9767d737ab23e6794079..753751c52537d7e43e28845244038b07f8eea244 100644 (file)
    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,21 @@ 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){
@@ -252,11 +263,7 @@ class setup
         $str .= "<input type='button' name='last' value='"._("Back")."' disabled>";
       }
       $str.= "&nbsp;";
-      if(isset($this->o_steps[$this->i_current + 1])){
         $str .= "<input type='submit' name='next' value='"._("Continue")."'>";
-      }else{
-        $str .= "<input type='button' value='"._("Continue")."' disabled>";
-      }
       $str .="</div>";
     }
     return($str);
@@ -279,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);
+  }
+  
 }