+ function run_mod($mod_name, $valid_role = true){
+ $env = $this->env();
+ $etat = false;
+ if(isset($_GET[$env->param("e")])){
+ $etat = $env->valid_etat($_GET[$env->param("e")]);
+ if(!$etat || ($etat["mod"] != $mod_name)){
+ $etat = false;
+ }
+ }
+ if(!$etat){
+ $etat = $env->valid_etat($mod_name);
+ }
+ if(!$etat) return false;
+ $env->run($etat, array(), $valid_role);
+ return true;
+ }
+
+ function install(){
+ if($this->run_mod("install", false)){
+ $this->display();
+ }
+ }
+
+ function upgrade(){
+ if($this->run_mod("upgrade", false)){
+ $this->display();
+ }
+ }
+