Ejemplo n.º 1
0
 protected function loadFields()
 {
     $fields = null;
     $fmod = SPLoader::loadModel('field');
     /* get fields */
     try {
         $this->_db->select('*', 'spdb_field', array('section' => Sobi::Section(), 'inSearch' => 1, 'enabled' => 1), 'position');
         $fields = $this->_db->loadObjectList();
     } catch (SPException $x) {
         Sobi::Error($this->name(), SPLang::e('CANNOT_GET_FIELDS_DB_ERR', $x->getMessage()), SPC::ERROR, 500, __LINE__, __FILE__);
     }
     if (count($fields)) {
         foreach ($fields as $i => $f) {
             /* @var SPField $field */
             $field = new $fmod();
             $field->extend($f);
             if (count($this->_request) && isset($this->_request[$field->get('nid')])) {
                 $field->setSelected($this->_request[$field->get('nid')]);
             }
             $fields[$i] = $field;
         }
     }
     Sobi::Trigger('LoadFields', 'Search', array(&$fields));
     return $fields;
 }