Beispiel #1
0
 /**
  * Load all options data into protected array
  */
 protected function _loadOptions()
 {
     if (empty($this->_allOptions)) {
         $options = frameCsp::_()->getTable('options');
         $htmltype = frameCsp::_()->getTable('htmltype');
         $optionsCategories = frameCsp::_()->getTable('options_categories');
         $this->_allOptions = $options->innerJoin($htmltype, 'htmltype_id')->leftJoin($optionsCategories, 'cat_id')->orderBy(array('cat_id', 'sort_order'))->getAll($options->alias() . '.*, ' . $htmltype->alias() . '.label AS htmltype, ' . $optionsCategories->alias() . '.label AS cat_label');
         foreach ($this->_allOptions as $i => $opt) {
             if (!empty($this->_allOptions[$i]['params'])) {
                 $this->_allOptions[$i]['params'] = utilsCsp::unserialize($this->_allOptions[$i]['params']);
             }
             if ($this->_allOptions[$i]['value_type'] == 'array') {
                 $this->_allOptions[$i]['value'] = utilsCsp::unserialize($this->_allOptions[$i]['value']);
                 if (!is_array($this->_allOptions[$i]['value'])) {
                     $this->_allOptions[$i]['value'] = array();
                 }
             }
             if (empty($this->_allOptions[$i]['cat_id'])) {
                 // Move all options that have no category - to Other
                 $this->_allOptions[$i]['cat_id'] = 6;
                 $this->_allOptions[$i]['cat_label'] = 'Other';
             }
         }
     }
 }
Beispiel #2
0
 protected function _adaptFromDb($d = array())
 {
     switch ($d['type']) {
         case 'email':
             $d['data'] = utilsCsp::unserialize($d['data']);
             break;
     }
     return $d;
 }