public function init(Atomik_Model_Builder $builder) { if (!$builder->hasField('created')) { $builder->addField(new Atomik_Model_Field_Timestamp('created', array('form-ignore' => true))); } if (!$builder->hasField('updated')) { $builder->addField(new Atomik_Model_Field_Timestamp('updated', array('form-ignore' => true))); } }
public function offsetExists($index) { return $this->_builder->hasField($index) || $this->_builder->hasReference($index) || $this->_builder->hasLink($index); }
public function afterSave(Atomik_Model_Builder $builder, Atomik_Model $model) { $db = $builder->getManager()->getDbInstance(); $fullDynamic = $builder->getOption('dynamic', false); $tableName = $builder->tableName; $foreignFieldName = $this->_prefix($tableName) . '_' . $builder->getPrimaryKeyField()->name; $primaryKey = $model->getPrimaryKey(); $tableName = $this->_suffix($tableName); foreach (get_object_vars($model) as $name => $value) { if (!$fullDynamic && ($builder->hasField($name) || $builder->hasReference($name))) { continue; } $data = array( $foreignFieldName => $primaryKey, $this->_prefix('field_name') => $name, $this->_prefix('field_value') => $value ); $db->set($tableName, $data, $foreignFieldName); } }