reorganisation des dossiers
[mtweb] / web / app / env / modules / mw_env_run.php
diff --git a/web/app/env/modules/mw_env_run.php b/web/app/env/modules/mw_env_run.php
deleted file mode 100644 (file)
index 69360c2..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php
-
-  class mw_env_run extends mw_env{
-
-    var $etat;
-
-    function user(){
-      $data = $this->data();
-      return $data->get_session_user();
-    }
-
-    function set_etat($etat, $valid_status = true){
-      if(($this->etat = $this->valid_etat($etat)) !== false){
-        if(!$valid_status || $this->status_ok($this->etat, false)){
-          return $this->etat;
-        }
-        else $this->erreur("Vous n'avez pas le statut requis pour effectuer cette action");
-      }
-      else $this->erreur("etat invalide");
-      return false;
-    }
-
-    function valid_etat($etat){
-      $_etat = array();
-      $_etat["mod"] = "";
-      $_etat["controller"] = "";
-      $_etat["action"] = "";
-      if(is_array($etat)){
-        $_etat["mod"] = isset($etat["mod"]) ? $etat["mod"] : "";
-        $_etat["controller"] = isset($etat["controller"]) ? $etat["controller"] : "";
-        $_etat["action"] = isset($etat["action"]) ? $etat["action"] : "";
-      }
-      else{
-        $etat = explode("/", $etat);
-        foreach($etat as $etat_item){
-          if($etat_item){
-            if(!$_etat["mod"]) $_etat["mod"] = $etat_item;
-            else{
-              if(!$_etat["controller"]) $_etat["controller"] = $etat_item;
-              else{
-                if(!$_etat["action"]) $_etat["action"] = $etat_item;
-                break;
-              }
-            }
-          }
-        }
-      }
-      if(!$_etat["mod"]){
-        $_etat["mod"] = "index";
-        $_etat["controller"] = "index";
-        $_etat["action"] = "index";
-      }
-      else{
-        if(!$_etat["controller"]){
-          $_etat["controller"] = "index";
-          $_etat["action"] = "index";
-        }
-        else{
-          if(!$_etat["action"]) $_etat["action"] = "index";
-        }
-      }
-      if(
-           is_array($_etat)
-        && count($_etat) == 3
-        && isset($_etat["mod"]) && preg_match("/^[a-zA-Z0-9_]+$/", $_etat["mod"])
-        && isset($_etat["controller"]) && preg_match("/^[a-zA-Z0-9_]+$/", $_etat["controller"])
-        && isset($_etat["action"]) && preg_match("/^[a-zA-Z0-9_]+$/", $_etat["action"])
-      ){
-        return $_etat;
-      }
-      return false;
-    }
-
-    function etat_is_valid(){
-      return $this->valid_etat($this->etat);
-    }
-
-    function status_ok($etat, $CHECK_FORMAT = true){
-      $OK = $this->config("default_allow");
-      $data = $this->data();
-      if($CHECK_FORMAT) $etat = $this->valid_etat($etat);
-      if($etat !== false){
-        if(($user_status = $data->get_user_status()) !== false){
-          if(
-            (
-              $action_status = $data->get_action_status(
-                $etat["mod"],
-                $etat["controller"],
-                $etat["action"]
-              )
-            ) !== false
-          ){
-            $action = $etat["mod"]."/".$etat["controller"]."/".$etat["action"];
-            if(isset($action_status[$action])){
-              $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
-            }
-            else{
-              $action = $etat["mod"]."/".$etat["controller"];
-              if(isset($action_status[$action])){
-                $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
-              }
-              else{
-                $action = $etat["mod"];
-                if(isset($action_status[$action])){
-                  $OK = $action_status[$action][0] || (isset($action_status[$action][$user_status]) && $action_status[$action][$user_status]);
-                }
-              }
-            }
-          }
-          else $this->erreur("Impossible de lire les status des actions en base");
-        }
-        else $this->erreur("Impossible de lire le statut de l'utilisateur courant");
-      }
-      else $this->erreur("etat invalide");
-      return $OK;
-    }
-
-    function run($etat, $valid_status = true, $params = array(), $method = "GET"){
-      if($this->set_etat($etat, $valid_status)){
-        $controller_file = "mods/".$this->etat("mod")."/".$this->etat("controller").".php";
-        if($this->app_file_exists($controller_file = "mods/".$this->etat("mod")."/".$this->etat("controller").".php", "DESC")){
-          if(!class_exists("mw_mod")) require $this->app_file("mods/mw_mod.php");
-          if(!class_exists($controller_class = "mw_".$this->etat("mod")."_".$this->etat("controller"))){
-            require $this->app_file($controller_file, "DESC");
-          }
-          if(class_exists($controller_class)){
-            $controller = new $controller_class();
-            $action_method = $this->etat("action");
-            if(method_exists($controller, $action_method)){
-              foreach($params as $key => $value){
-                switch(strtolower($method)){
-                  case "get": $_GET[$this->param($key)] = $value; break;
-                  case "post": $_POST[$key] = $value; break;
-                  default: break;
-                }
-              }
-              if(($controller_validate = $controller->validate($this)) === true){
-                if(($controller_prepare_inputs = $controller->prepare_inputs($this)) === true){
-                  $controller->$action_method($this);
-                }
-                else $this->erreur($controller_prepare_inputs);
-              }
-              else $this->erreur($controller_validate);
-            }
-            else $this->erreur("Impossible de trouver l'action ".$this->etat("action"));
-          }
-          else $this->erreur("Impossible d'instancier le controleur ".$this->etat("controller"));
-        }
-        else $this->erreur("Impossible de trouver le controleur ".$this->etat("controller")." pour le module ".$this->etat("mod"));
-      }
-      else $this->erreur("Impossible d'effectuer cette action");
-    }
-
-    function etat($name){
-      return $this->etat[$name];
-    }
-
-    function check_stop(){
-      return $this->etat("mod") == "reponses";
-    }
-
-    function get_mod($mod_name){
-      if($etat = $this->valid_etat($mod_name)){
-        if($this->app_file_exists($controller_file = "mods/".$etat["mod"]."/".$etat["controller"].".php")){
-          if(!class_exists("mw_mod")) require $this->app_file("mods/mw_mod.php");
-          if(!class_exists($controller_class = "mw_".$etat["mod"]."_".$etat["controller"])){
-            require $this->app_file($controller_file);
-          }
-          if(class_exists($controller_class)){
-            return new $controller_class();
-          }
-        }
-      }
-      return false;
-    }
-
-  }
-
-?>
\ No newline at end of file