nouveau module "models" dans l'environnement
[mtweb] / mw / mw_app.php
1 <?php
2
3   class mw_app{
4
5     var $env;
6
7     function set_env(&$env){
8       $this->env =& $env;
9     }
10
11     function env(){
12       return $this->env;
13     }
14
15     function init($config_file){
16       require $config_file;
17       $PATHES["mw_dir"] .= $PATHES["mw_dir"] && substr($PATHES["mw_dir"], -1) != "/" ? "/" : "";
18       $PATHES["mw_path"] .= $PATHES["mw_path"] && substr($PATHES["mw_path"], -1) != "/" ? "/" : "";
19       if(!isset($CONFIG)) $CONFIG = array();
20       $env = false;
21       $this->set_env($env);
22       if(
23             ($sxml_class_file = (file_exists($PATHES["mw_dir"]."libs/sxml.php") ? $PATHES["mw_dir"]."libs/sxml.php" : ""))
24         &&  ($empty_class_file = (file_exists($PATHES["mw_dir"]."libs/empty_class.php") ? $PATHES["mw_dir"]."libs/empty_class.php" : ""))
25         &&  ($env_class_file = (file_exists($PATHES["mw_dir"]."env/mw_env.php") ? $PATHES["mw_dir"]."env/mw_env.php" : ""))
26       ){
27         require $sxml_class_file;
28         require $empty_class_file;
29         require $env_class_file;
30         $env = new mw_env(true);
31         $this->set_env($env);
32         $env->load_modules($PATHES["mw_dir"], "env/modules/");
33         $env->set_config_file($config_file);
34         $env->set_PATHES($PATHES);
35         $env->init_plugins();
36         $env->load_config($bdd, $CONFIG);
37         $env->init();
38       }
39       return $this->env();
40     }
41
42     function run($etat = ""){
43       $env = $this->env();
44       $etat = ($etat === false ? false : ($etat ? $etat : (isset($_GET[$env->param("e")]) ? $_GET[$env->param("e")] : "")));
45       if($etat !== false) $env->run($etat);
46     }
47   
48     function display(){
49       $env = $this->env();
50       if($env->etat_is_valid()){
51         $template = $env->get_template();
52         $layout = $env->init_layout();
53         $template->render_layout($layout);
54       }
55     }
56
57   }
58
59 ?>