Changeset 220
- Timestamp:
- 04/08/08 18:40:06 (8 months ago)
- Files:
-
- trunk/Phergie/Plugin/Set.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/Phergie/Plugin/Set.php
r217 r220 40 40 $this->setIni($var, $this->parseIniValue($value)); 41 41 } 42 $this->doNotice($user, 'Updated Setting: ' . $var . ' = ' . $this->getIni($var)); 42 43 // Save ini file 43 44 file_put_contents(PHERGIE_INI_PATH, $contents); … … 67 68 $new = trim($new, "\" '"); 68 69 $old = trim($old, "\" \n\r"); 70 69 71 if ($append && !empty($old)) { 70 72 return '"' . $old . ', ' . $new . '"'; 71 73 } 74 72 75 if (is_numeric($new)) { 73 76 return $new; 74 77 } 75 switch (strtolower($new)) { 76 case 'true': 77 case 'false': 78 case 'on': 79 case 'off': 80 case '': 81 return $new; 82 default: 83 return '"' . $new . '"'; 78 79 if ($this->parseIniValue($new) != $new) { 80 return (strtolower($new) != 'null' ? $new : ''); 81 } else { 82 return '"' . $new . '"'; 84 83 } 85 84 } … … 90 89 protected function parseIniValue($value) 91 90 { 92 $value = trim($value, '" '); 91 $value = trim($value); 92 if (strpos($value, ':') !== false) { 93 return $value; 94 } 95 96 $const = get_defined_constants(); 97 93 98 switch (strtolower($value)) { 94 99 case 'true': 100 case 'yes': 95 101 case 'on': 96 102 case '1': 97 return '1'; 103 $return = '1'; 104 break; 98 105 case 'false': 106 case 'no': 99 107 case 'off': 100 108 case '0': 101 109 case '': 102 return ''; 110 $return = ''; 111 break; 112 case 'null': 113 $return = null; 114 break; 103 115 default: 104 return $value; 116 $return = (isset($const[$value]) ? $const[$value] : $value); 117 break; 105 118 } 119 unset($const, $value); 120 121 return $return; 106 122 } 107 123 }