Code

Added additional check to delete block
[gosa.git] / setup / class_setup.inc
index a51d922c51e4d8ab6ae2925a88208c63df96b456..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 
@@ -40,7 +42,10 @@ class setup
     $this->o_steps[$i++] = new Step_Config1();
     $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;
 
     /* Ensure that setup is not reachable if gosa.conf (CONFIG_FILE) */
     if(file_exists(CONFIG_DIR."/".CONFIG_FILE)){
@@ -50,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();
@@ -236,7 +255,7 @@ class setup
     if($this->o_steps[$this->i_current]->dialog){
       $str ="";
     }else{
-      $str ="";
+      $str ="<p class='seperator' style='margin-bottom:10px;'>&nbsp;</p>";
       $str.="   <div style='text-align:right;float:top;'>";
       if(isset($this->o_steps[$this->i_current -1]) && $this->o_steps[$this->i_current -1]->is_enabled()){
         $str .= "<input type='submit' name='last' value='"._("Back")."'>";
@@ -244,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);
@@ -271,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);
+  }
+  
 }