1: <?php defined('_JOOS_CORE') or exit();
2:
3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
18: class joosConfig
19: {
20: private static $data = array();
21:
22: public static function init()
23: {
24: if (empty(self::$data)) {
25: $conf = require_once JPATH_APP_CONFIG . DS . 'site.php';
26: self::$data = $conf;
27: }
28: }
29:
30: public static function get_all()
31: {
32: return self::$data;
33: }
34:
35: public static function get($name, $default = null)
36: {
37: $name_array = explode(':', $name);
38: $count = count($name_array);
39:
40: if ($count == 1) {
41: return isset(self::$data[$name]) ? self::$data[$name] : $default;
42: }
43:
44:
45: else {
46:
47: switch ($count) {
48: case 2:
49: default:
50: return isset(self::$data[$name_array[0]][$name_array[1]]) ? self::$data[$name_array[0]][$name_array[1]] : $default;
51: break;
52:
53: case 3:
54: return isset(self::$data[$name_array[0][$name_array[1][$name_array[2]]]]) ? self::$data[$name_array[0][$name_array[1][$name_array[2]]]] : $default;
55: break;
56:
57: case 4:
58: return isset(self::$data[$name_array[0][$name_array[1][$name_array[2][$name_array[3]]]]]) ? self::$data[$name_array[0][$name_array[1][$name_array[2][$name_array[3]]]]] : $default;
59: break;
60: }
61:
62: }
63:
64: }
65:
66: 67: 68:
69: public static function get2($type, $name, $default = null)
70: {
71: return self::get($type . ':' . $name, $default);
72: }
73:
74: public static function set($name, $value)
75: {
76: self::$data[$name] = $value;
77: }
78:
79: }
80: