check file exists
[Pman.Core] / UpdateDatabase / VerifyConfig.php
1 <?php
2
3 require_once 'Pman.php';
4
5 class Pman_Core_UpdateDatabase_VerifyConfig extends Pman
6 {
7     static $cli_opts = array(
8
9     );
10     
11     function getAuth()
12     {
13         if ($_SERVER['HTTP_HOST'] == 'localhost') {
14             return true;
15         }
16         
17         $this->getAuthUser();
18         
19         if(empty($this->authUser)) {
20             return false;
21         }
22         
23         return true;
24     }
25     
26     function get($base, $opts = array())
27     {
28         $requirements = array();
29         
30         $ff = HTML_FlexyFramework::get();
31         
32         foreach($this->modulesList() as $m) {
33             
34             $fd = $ff->rootDir. "/Pman/$m/UpdateDatabase.php";
35             
36             if (!file_exists($fd)) {
37                 continue;
38             }
39             
40             require_once $fd;
41             $cls = new ReflectionClass('Pman_'. $m . '_UpdateDatabase');
42             $props = $cls->getDefaultProperties();
43             
44             if(!empty($props['required_config'])) {
45                 $requirements = array_merge($requirements, $props['required_config']);
46             }
47         }
48         
49         $error = array();
50         
51         foreach ($requirements as $k => $v){
52             
53             if(empty($ff->{$k})){
54                 $error[] = "Missing Config: {$k} Config";
55                 continue;
56             }
57             
58             foreach ($v as $r){
59                 
60                 if(isset($ff->{$k}[$r])){
61                     continue;
62                 }
63                 
64                 $error[] = "Missing Config: {$k} - {$r}";
65             }
66         }
67         
68         return $error;
69     }
70 }