public function saveData(MessageStack $errors, Entry $entry, $data = null) { // Since we are dealing with multiple // values, must purge the existing data first Symphony::Database()->delete(sprintf('tbl_data_%s_%s', $entry->section, $this->{'element-name'}), array($entry->id), "`entry_id` = %s"); if (!is_array($data->value)) { $data->value = array($data->value); } foreach ($data->value as $d) { $d = $this->processData($d, $entry); parent::saveData($errors, $entry, $d); } return Field::STATUS_OK; }
public function saveData(MessageStack $errors, Entry $entry, $data = null) { // Since we are dealing with multiple // values, must purge the existing data first Symphony::Database()->delete(sprintf('tbl_data_%s_%s', $entry->section, $this->{'element-name'}), array($entry->id), "`entry_id` = %s"); $data = preg_split('/' . preg_quote($this->{'delimiter'}) . '/i', $data->value, -1, PREG_SPLIT_NO_EMPTY); $data = array_map('trim', $data); if (!is_array($data)) { $data = array($data); } $data = General::array_remove_duplicates($data, true); foreach ($data as $tag) { $tag = $this->processData($tag, $entry); parent::saveData($errors, $entry, $tag); } return Field::STATUS_OK; }