Changeset 5872
- Timestamp:
- 07/01/08 21:46:18 (3 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
freepbx/trunk/amp_conf/htdocs/admin/featurecodes.class.php
r4993 r5872 9 9 var $_enabled; // Enabled/Disabled (0=disabled; 1=enabled; -1=unknown) 10 10 var $_loaded; // If this feature code was succesfully loaded from the DB 11 var $_overridecodes; // Overide defaults from featurecodes.conf 11 12 12 13 // CONSTRUCTOR 13 14 function featurecode($modulename, $featurename) { 15 global $amp_conf; 16 14 17 if ($modulename == '' || $featurename == '') 15 18 die_freepbx('feature code class must be called with ModuleName and FeatureName'); 19 20 $fd = $amp_conf['ASTETCDIR'].'/freepbx_featurecodes.conf'; 21 $this->_overridecodes = array(); 22 if (file_exists($fd)) { 23 $this->_overridecodes = parse_ini_file($fd,true); 24 } 16 25 17 26 $this->_modulename = $modulename; … … 43 52 if (is_array($res)) { // found something, read it 44 53 $this->_description = $res[0]; 45 $this->_defaultcode = $res[1]; 54 if (isset($this->_overridecodes[$this->_modulename][$this->_featurename]) && trim($this->_overridecodes[$this->_modulename][$this->_featurename]) != '') { 55 $this->_defaultcode = $this->_overridecodes[$this->_modulename][$this->_featurename]; 56 if ($this->_defaultcode != $res[1]) { 57 $sql = 'UPDATE featurecodes SET defaultcode = '.sql_formattext($this->_defaultcode). 58 'WHERE modulename = '.sql_formattext($this->_modulename). ' AND featurename = '.sql_formattext($this->_featurename); 59 sql($sql, 'query'); 60 } 61 } else { 62 $this->_defaultcode = $res[1]; 63 } 46 64 $this->_customcode = $res[2]; 47 65 $this->_enabled = $res[3]; … … 109 127 110 128 // SET DEFAULT CODE 111 function setDefault($de afultcode, $defaultenabled = true) {129 function setDefault($defaultcode, $defaultenabled = true) { 112 130 if (!$this->isReady()) 113 131 $this->init(1); 114 132 115 if ($deafultcode == '') { 133 if (isset($this->_overridecodes[$this->_modulename][$this->_featurename])) { 134 $defaultcode = $this->_overridecodes[$this->_modulename][$this->_featurename]; 135 } 136 137 if (trim($defaultcode) == '') { 116 138 unset($this->_defaultcode); 117 139 } else { 118 $this->_defaultcode = $de afultcode;140 $this->_defaultcode = $defaultcode; 119 141 } 120 142 … … 122 144 $this->_enabled = ($defaultenabled) ? 1 : 0; 123 145 } 124 125 146 126 147 } … … 217 238 218 239 function featurecodes_getAllFeaturesDetailed() { 240 global $amp_conf; 241 242 $fd = $amp_conf['ASTETCDIR'].'/freepbx_featurecodes.conf'; 243 $overridecodes = array(); 244 if (file_exists($fd)) { 245 $overridecodes = parse_ini_file($fd,true); 246 } 219 247 $s = "SELECT featurecodes.modulename, featurecodes.featurename, featurecodes.description AS featuredescription, featurecodes.enabled AS featureenabled, featurecodes.defaultcode, featurecodes.customcode, "; 220 248 $s .= "modules.enabled AS moduleenabled "; … … 227 255 $modules = module_getinfo(false, MODULE_STATUS_ENABLED); 228 256 foreach ($results as $key => $item) { 257 229 258 // get the module display name 230 259 $results[$key]['moduledescription'] = (!empty($modules[ $item['modulename'] ]['name']) ? $modules[ $item['modulename'] ]['name'] : ucfirst($item['modulename'])); 260 if (isset($overridecodes[$item['modulename']][$item['featurename']]) && trim($overridecodes[$item['modulename']][$item['featurename']]) != '') { 261 $results[$key]['defaultcode'] = $overridecodes[$item['modulename']][$item['featurename']]; 262 } 231 263 } 232 264
