Passed
Branch master (21a93d)
by Alfred
01:51
created
ConfigManager.php 1 patch
Braces   +110 added lines, -64 removed lines patch added patch discarded remove patch
@@ -37,13 +37,13 @@  discard block
 block discarded – undo
37 37
         $numargs = func_num_args();
38 38
         try
39 39
         {
40
-            if($numargs > 2)
41
-                throw new Exception('SETUP ERROR: configuration manager can accept only up to 2 parameters,'.$numargs.' given!');
40
+            if($numargs > 2) {
41
+                            throw new Exception('SETUP ERROR: configuration manager can accept only up to 2 parameters,'.$numargs.' given!');
42
+            }
42 43
             $this->configureOptions($filename,$location);
43 44
             $this->parseConfiguration($this->Options);
44 45
             return $this;
45
-        }
46
-        catch(Exception $a)
46
+        } catch(Exception $a)
47 47
         {
48 48
             trigger_error($a->getMessage(),E_USER_ERROR);
49 49
         }
@@ -55,10 +55,18 @@  discard block
 block discarded – undo
55 55
      */
56 56
     public function get($section=null, $item=null)
57 57
     {
58
-        if($item) $item = trim(strtolower($item));
59
-        if($section) $section = trim(strtolower($section));
60
-        if(!count($this->Config)) return false;
61
-        if(!$section or !strlen($section)) return $this->Config;
58
+        if($item) {
59
+          $item = trim(strtolower($item));
60
+        }
61
+        if($section) {
62
+          $section = trim(strtolower($section));
63
+        }
64
+        if(!count($this->Config)) {
65
+          return false;
66
+        }
67
+        if(!$section or !strlen($section)) {
68
+          return $this->Config;
69
+        }
62 70
         if($section AND $item)
63 71
         {
64 72
             if(!isset($this->Config[$section]))
@@ -66,18 +74,22 @@  discard block
 block discarded – undo
66 74
                 $key = $item;
67 75
                 $item = $section;
68 76
                 $section = $this->defaultSection;
69
-                if(!isset($this->Config[$section][$item][$key]))
70
-                    return false;
77
+                if(!isset($this->Config[$section][$item][$key])) {
78
+                                    return false;
79
+                }
71 80
                 return $this->Config[$section][$item][$key];
72 81
             }
73
-        }
74
-        elseif(!$item or !strlen($item))
82
+        } elseif(!$item or !strlen($item))
75 83
         {
76 84
             $item = $section;
77
-            if(isset($this->Config[$item])) return $this->Config[$item];
85
+            if(isset($this->Config[$item])) {
86
+              return $this->Config[$item];
87
+            }
78 88
             $section = $this->defaultSection;
79 89
         }
80
-        if(!isset($this->Config[$section][$item])) return false;
90
+        if(!isset($this->Config[$section][$item])) {
91
+          return false;
92
+        }
81 93
         return $this->Config[$section][$item];
82 94
     }
83 95
 
@@ -95,14 +107,17 @@  discard block
 block discarded – undo
95 107
         switch($numarg)
96 108
         {
97 109
             case 1:
98
-                if(!is_array($arguments[0])) return false;
110
+                if(!is_array($arguments[0])) {
111
+                  return false;
112
+                }
99 113
                 $item=array_change_key_case($arguments[0], CASE_LOWER); $section=null; $value=null;	
100 114
 		break;
101 115
             case 2:
102
-                if(is_array($arguments[0])) return false;
116
+                if(is_array($arguments[0])) {
117
+                  return false;
118
+                }
103 119
                 $_arg = strtolower(trim($arguments[0]));
104
-                if(is_array($arguments[1])){ $section=$_arg; $item =array_change_key_case($arguments[1], CASE_LOWER);$value=null;}
105
-                else {$item = $_arg;$value=$arguments[1];$section=null;}
120
+                if(is_array($arguments[1])){ $section=$_arg; $item =array_change_key_case($arguments[1], CASE_LOWER);$value=null;} else {$item = $_arg;$value=$arguments[1];$section=null;}
106 121
                 break;
107 122
             default:
108 123
                 break;
@@ -110,18 +125,23 @@  discard block
 block discarded – undo
110 125
         $section = $section? trim(strtolower($section)) : $this->defaultSection;
111 126
         if(!is_array($item))
112 127
         {
113
-            if(!$value) return false;
128
+            if(!$value) {
129
+              return false;
130
+            }
114 131
             $item=trim(strtolower($item));
115 132
             if(!isset($this->Config[$section][$item]) or !is_array($this->Config[$section][$item])):
116 133
                 $this->Config[$section][$item]=$value;
117
-            else:
134
+            else {
135
+              :
118 136
                 if(!is_array($value)) $value = array($value);
137
+            }
119 138
                 $this->Config[$section][$item] = array_merge($this->Config[$section][$item],$value);
120 139
             endif;
121
-        }
122
-        else
140
+        } else
123 141
         {
124
-            if($value) return false;
142
+            if($value) {
143
+              return false;
144
+            }
125 145
             $item = array_change_key_case($item, CASE_LOWER);
126 146
             $sectionsize = count($this->Config[$section]);
127 147
             $itemsize = count($item);
@@ -129,13 +149,17 @@  discard block
 block discarded – undo
129 149
             {
130 150
                 if($itemsize=='1')
131 151
                 {
132
-                    if(isset($this->Config[$section][key($item)]))
133
-                        $this->Config[$section][key($item)] = array_merge($this->Config[$section][key($item)],$item[key($item)]);
134
-                    else if(!is_numeric(key($item))) $this->Config[$section][key($item)]=$item[key($item)];
152
+                    if(isset($this->Config[$section][key($item)])) {
153
+                                            $this->Config[$section][key($item)] = array_merge($this->Config[$section][key($item)],$item[key($item)]);
154
+                    } else if(!is_numeric(key($item))) {
155
+                      $this->Config[$section][key($item)]=$item[key($item)];
156
+                    }
157
+                } else {
158
+                  $this->Config[$section] = array_merge($this->Config[$section],$item);
135 159
                 }
136
-                else $this->Config[$section] = array_merge($this->Config[$section],$item);
160
+            } else {
161
+              $this->Config[$section] = $item;
137 162
             }
138
-            else $this->Config[$section] = $item;
139 163
         }
140 164
         $re = $this->Save();
141 165
         ob_end_clean();
@@ -160,21 +184,25 @@  discard block
 block discarded – undo
160 184
                 if(isset($this->Config[$section][$item][$key]))
161 185
                 {
162 186
                     $itemSize=count($this->Config[$section][$item]);
163
-                    if($itemSize>1) unset($this->Config[$section][$item][$key]);
164
-                    else unset($this->Config[$section]);
187
+                    if($itemSize>1) {
188
+                      unset($this->Config[$section][$item][$key]);
189
+                    } else {
190
+                      unset($this->Config[$section]);
191
+                    }
165 192
                 }
166
-            }
167
-            else
193
+            } else
168 194
             {
169 195
                 $sectionSize=count($this->Config[$section]);
170 196
                 if(isset($this->Config[$section][$item]))
171 197
                 {
172
-                    if($sectionSize>1) unset($this->Config[$section][$item]);
173
-                    else unset($this->Config[$section]);
198
+                    if($sectionSize>1) {
199
+                      unset($this->Config[$section][$item]);
200
+                    } else {
201
+                      unset($this->Config[$section]);
202
+                    }
174 203
                 }
175 204
             } 
176
-        }
177
-        else
205
+        } else
178 206
         {
179 207
             $item = $section;
180 208
             if(!isset($this->Config[$item]))
@@ -183,11 +211,15 @@  discard block
 block discarded – undo
183 211
                 $defaultSectionSize = count($this->Config[$section]);
184 212
                 if(isset($this->Config[$section][$item]))
185 213
                 {
186
-                    if($defaultSectionSize>1) unset($this->Config[$section][$item]);
187
-                    else unset($this->Config[$section]);
214
+                    if($defaultSectionSize>1) {
215
+                      unset($this->Config[$section][$item]);
216
+                    } else {
217
+                      unset($this->Config[$section]);
218
+                    }
188 219
                 }
220
+            } else {
221
+              unset($this->Config[$item]);
189 222
             }
190
-            else unset($this->Config[$item]);
191 223
         }
192 224
         return $this->Save();
193 225
     }
@@ -197,27 +229,31 @@  discard block
 block discarded – undo
197 229
      * @return array|bool
198 230
      */
199 231
     private function configureOptions($file,$location=null){
200
-        if(!is_string($file) or ($location and !is_string($location)))
201
-            throw new Exception('SETUP ERROR: configuration manager can accept string only parameters');
232
+        if(!is_string($file) or ($location and !is_string($location))) {
233
+                    throw new Exception('SETUP ERROR: configuration manager can accept string only parameters');
234
+        }
202 235
         $default=[
203 236
             'driver' => 'PHP',
204 237
             'filename' => null,
205 238
             'directory' => __DIR__,
206 239
         ];
207 240
         $Options = [];
208
-        if($location)
209
-            $Options['directory']=rtrim($this->normalize($location),DIRECTORY_SEPARATOR);
210
-        else{
211
-            if(basename($file)!==$file)
212
-                $Options['directory']= rtrim($this->normalize(pathinfo($file,PATHINFO_DIRNAME)),DIRECTORY_SEPARATOR);
241
+        if($location) {
242
+                    $Options['directory']=rtrim($this->normalize($location),DIRECTORY_SEPARATOR);
243
+        } else{
244
+            if(basename($file)!==$file) {
245
+                            $Options['directory']= rtrim($this->normalize(pathinfo($file,PATHINFO_DIRNAME)),DIRECTORY_SEPARATOR);
246
+            }
213 247
         }
214 248
         $Options['filename'] = basename($file);
215
-        if(strpos($Options['filename'],'.')!==false)
216
-            $Options['driver'] = strtoupper(pathinfo($Options['filename'], PATHINFO_EXTENSION));
217
-        else
218
-            $Options['filename']= $Options['filename'].'.'.strtolower($default['driver']);
219
-	     if(!in_array($Options['driver'],$this->availableDrivers))
220
-            throw new Exception('ERROR: driver "'.$Options['driver'].'" not supported');
249
+        if(strpos($Options['filename'],'.')!==false) {
250
+                    $Options['driver'] = strtoupper(pathinfo($Options['filename'], PATHINFO_EXTENSION));
251
+        } else {
252
+                    $Options['filename']= $Options['filename'].'.'.strtolower($default['driver']);
253
+        }
254
+	     if(!in_array($Options['driver'],$this->availableDrivers)) {
255
+	                 throw new Exception('ERROR: driver "'.$Options['driver'].'" not supported');
256
+	     }
221 257
 	    $this->Options = array_merge($default,$Options);
222 258
         return $this->Options;
223 259
     }
@@ -231,12 +267,17 @@  discard block
 block discarded – undo
231 267
         $isAbsolute = stripos(PHP_OS, 'win')===0 ? preg_match('/^[A-Za-z]+:/', $path): !strncmp($path, DIRECTORY_SEPARATOR, 1);
232 268
         if (!$isAbsolute)
233 269
         {
234
-            if (!$relativeTo) $relativeTo = getcwd();
270
+            if (!$relativeTo) {
271
+              $relativeTo = getcwd();
272
+            }
235 273
             $path = $relativeTo.DIRECTORY_SEPARATOR.$path;
236 274
         }
237
-        if (is_link($path) and ($parentPath = realpath(dirname($path))))
238
-            return $parentPath.DIRECTORY_SEPARATOR.$path;
239
-        if ($realpath = realpath($path))  return $realpath;
275
+        if (is_link($path) and ($parentPath = realpath(dirname($path)))) {
276
+                    return $parentPath.DIRECTORY_SEPARATOR.$path;
277
+        }
278
+        if ($realpath = realpath($path)) {
279
+          return $realpath;
280
+        }
240 281
         $parts = explode(DIRECTORY_SEPARATOR, trim($path, DIRECTORY_SEPARATOR));
241 282
         while (end($parts) !== false)
242 283
         {
@@ -259,8 +300,9 @@  discard block
 block discarded – undo
259 300
 
260 301
         try
261 302
         {  $this->targetFile = $this->normalize($options['directory'].DIRECTORY_SEPARATOR.$options['filename']);
262
-            if(!file_exists($this->targetFile))
263
-                file_put_contents($this->targetFile,'',LOCK_EX);
303
+            if(!file_exists($this->targetFile)) {
304
+                            file_put_contents($this->targetFile,'',LOCK_EX);
305
+            }
264 306
             switch($this->Options['driver'])
265 307
             {
266 308
                 case 'JSON':
@@ -274,11 +316,12 @@  discard block
 block discarded – undo
274 316
                     $this->Config = yaml_parse_file($this->targetFile,0,$ndocs);
275 317
                     break;
276 318
                 default:
277
-                    if(!$this->Config = include $this->targetFile) $this->Config = [];
319
+                    if(!$this->Config = include $this->targetFile) {
320
+                      $this->Config = [];
321
+                    }
278 322
                     break;
279 323
             }
280
-        }
281
-        catch(Exception $b)
324
+        } catch(Exception $b)
282 325
         {
283 326
             trigger_error($b->getMessage(),E_USER_ERROR);
284 327
         }
@@ -289,7 +332,9 @@  discard block
 block discarded – undo
289 332
      */
290 333
      private function Save()
291 334
     {
292
-        if( !is_writeable( $this->targetFile ) ) @chmod($this->targetFile,0775);
335
+        if( !is_writeable( $this->targetFile ) ) {
336
+          @chmod($this->targetFile,0775);
337
+        }
293 338
         $content = null;
294 339
         switch($this->Options['driver'])
295 340
         {
@@ -304,8 +349,9 @@  discard block
 block discarded – undo
304 349
                 {
305 350
                     is_array($array) or $array = array($array);
306 351
                     $content .= '[' . $section . ']'.PHP_EOL;
307
-                    foreach( $array as $key => $value )
308
-                        $content .= PHP_TAB.$key.' = '.$value.PHP_EOL;
352
+                    foreach( $array as $key => $value ) {
353
+                                            $content .= PHP_TAB.$key.' = '.$value.PHP_EOL;
354
+                    }
309 355
                     $content .= PHP_EOL;
310 356
                 }
311 357
                 break;
Please login to merge, or discard this patch.