supp debug dans crud et arrangements init
[mtweb] / mw / app / init / 0300_data.php
index 9d5e2f9..9d376e2 100644 (file)
@@ -1,35 +1,41 @@
 <?php
 
-  if(!class_exists("mw_sgbd")) require_once $this->app_file("data/mw_sgbd.php");
-  if(!class_exists("mw_data")) require_once $this->app_file("data/mw_data.php");
-  if(($plugins = $this->plugins("DESC")) === false){
-    $this->erreur("Impossible de lire les plugins pour charger les modules de donnees", true);
-  }
-  $data = new mw_data(true);
+  // -------------------------------------------------------------------------
+  //                                                                      sgbd
+  //
+
+  $sgbd_impl_file = $this->path("mw_dir")."env/sgbd/mw_".$this->bdd("sgbd").".php";
   if($this->bdd("sgbd")){
-    if(!$this->app_file_exists("data/impl/mw_".$this->bdd("sgbd").".php")){
+    if(!file_exists($sgbd_impl_file)){
       $this->erreur("Impossible de trouver le fichier d'implementation du sgbd ".$this->bdd("sgbd"), true);
     }
     $sgbd_impl = "mw_".$this->bdd("sgbd");
-    if(!class_exists($sgbd_impl)) require_once $this->app_file("data/impl/".$sgbd_impl.".php");
+    if(!class_exists($sgbd_impl)) require_once $sgbd_impl_file;
     if(!class_exists($sgbd_impl)){
       $this->erreur("Impossible de trouver la classe d'implementation du sgbd ".$this->bdd("sgbd"), true);
     }
-    $sgbd = new mw_sgbd(
-      new $sgbd_impl(
-        array(
-          "host" => $this->bdd("host"),
-          "base" => $this->bdd("base"),
-          "user" => $this->bdd("user"),
-          "password" => $this->bdd("password")
-        )
-      ),
-      $this
+    $sgbd = new $sgbd_impl(
+      $this,
+      array(
+        "host" => $this->bdd("host"),
+        "base" => $this->bdd("base"),
+        "user" => $this->bdd("user"),
+        "password" => $this->bdd("password")
+      )
     );
     if(!$sgbd->extention_ok()){
       $this->erreur("L'extention php ".$this->bdd("sgbd")." n'est pas install&eacute;e", true);
     }
   }
+
+  // -------------------------------------------------------------------------
+  //                                                                      data
+  //
+
+  if(($plugins = $this->plugins("DESC")) === false){
+    $this->erreur("Impossible de lire les plugins pour charger les modules de donnees", true);
+  }
+  $data = new mw_data(true);
   foreach($plugins as $plugin_name => $plugin){
     if($plugin["installed"] && $plugin["enabled"]){
       $data->load_modules($this->path("mw_dir")."plugins/".$plugin_name."/app/", "data/modules/share/");
@@ -45,5 +51,3 @@
   }
   $data->set_env($this);
   $this->set_data($data);
-
-?>
\ No newline at end of file