/** * If saving a re-used attribute, then don't bother posting the main record data as it can't be changed. The postSubmit * can still occur though to link it to websites and surveys. * * @return integer Id of the attribute. */ protected function validateAndSubmit() { if (isset($this->submission['metaFields']) && isset($this->submission['metaFields']['disabled_input']) && $this->submission['metaFields']['disabled_input']['value'] == 'YES') { $this->find($this->submission['fields']['id']['value']); return $this->id; } else { return parent::validateAndSubmit(); } }
/** * Create a virtual field called default_value from the relevant default value fields, depending on the data type. */ public function __get($column) { if ($column == 'default_value') { $attr = ORM::factory('survey_attribute', $this->survey_attribute_id); switch ($attr->data_type) { case 'T': return parent::__get('default_text_value'); case 'F': return parent::__get('default_float_value'); case 'I': case 'L': return parent::__get('default_int_value'); case 'D': case 'V': $vagueDate = array(parent::__get('default_date_start_value'), parent::__get('default_date_end_value'), parent::__get('default_date_type_value')); return vague_date::vague_date_to_string($vagueDate); } } else { return parent::__get($column); } }