fix #8131 - chinese translations
[Pman.Core] / Config.php
1 <?php
2
3 // default framework settings for release
4
5 class Pman_Core_Config {
6     
7     
8     var $memory_limit = 0;
9     
10     var $defaults = array(  ); // override... 
11     
12     
13     function init($ff, $cfg)
14     {
15       
16         $cfg = $this->overlayDefaults($cfg);
17         
18         if (!empty($this->memory_limit)) {
19             $mem = ini_get('memory_limit');
20             if (php_sapi_name() != 'cli' && $this->to_bytes($mem) < $this->to_bytes($this->memory_limit)) {
21                 die("increase the memory limit settings to 2048M or more");
22             }
23         
24         }
25         
26         return $cfg;
27     }
28     
29     function to_bytes($val) {
30         $val = trim($val);
31         $last = strtolower($val[strlen($val)-1]);
32         switch($last) {
33             // The 'G' modifier is available since PHP 5.1.0
34             case 'g':
35                 $val = substr($val, 0, -1);
36                 $val *= 1024;
37             case 'm':
38                 $val = substr($val, 0, -1);
39                 $val *= 1024;
40                 $val = substr($val, 0, -1);
41             case 'k':
42                 $val *= 1024;
43         }
44     
45         return $val;
46     }
47     function overlayDefaults($cfg)
48     {
49         if (isset($this->defaults['disable']) && is_array($this->defaults['disable']) ) {
50             $this->defaults['disable'] = implode(',', $this->defaults['disable']);
51         }
52         foreach($this->defaults as $k=>$v) {
53             if (is_array($v)) {
54                 
55                 if (!isset($cfg[$k])) {
56                     $cfg[$k] = $v;
57                     continue;
58                 }
59                 
60                 foreach($v as $kk=>$vv) {
61                     if (isset($cfg[$k][$kk])) {
62                         continue;
63                     }
64                     
65                     $cfg[$k][$kk] = $vv;
66                 }
67             }
68             
69             if (!isset($cfg[$k])) {
70                 $cfg[$k] = $v;
71             }
72         }
73         
74         return $cfg;
75     }
76     
77
78 }