db908550ee93f69dda491a1e464c8a48b77ceb87
[mtweb] / mw / app / data / modules / share / mw_data_sgbds.php
1 <?php
2
3   class mw_data_sgbds extends mw_data{
4
5     function sgbds(){
6       $env = $this->env();
7       $sgbds = array();
8       $impls_dir = $env->app_file("data/impl");
9       if(!file_exists($impls_dir) || !is_dir($impls_dir)){
10         return false;
11       }
12       if($dh = opendir($impls_dir)){
13         $OK = true;
14         while($OK && ($impl_file = readdir($dh)) !== false){
15           if(substr($impl_file, 0 ,1) !== "." && substr($impl_file, -4) == ".php"){
16             require_once $impls_dir."/".$impl_file;
17             if(class_exists($class_name = substr($impl_file, 0, -4))){
18               if(
19                     method_exists($class_name, "sgbd_name")
20                 &&  method_exists($class_name, "extention_ok")
21               ){
22                 $impl = new $class_name();
23                 if($impl->extention_ok($env)) $sgbds[$class_name] = $impl;
24               }
25             }
26           }
27         }
28       }
29       else{
30         return false;
31       }
32       return $sgbds;
33     }
34
35   }
36
37 ?>