public function save($src) { if (!isset($src[$this->id])) { return; } $data = $src[$this->id]; if ($this->is_multilingual) { $value = array(); $languages = UF_ML::get(); foreach ($languages as $language) { extract($language); if (isset($data[$code])) { $value[$code] = $this->prepare_value($data[$code]); } else { $value[$code] = false; } } $this->value = UF_ML::join($value); } else { $this->value = $this->prepare_value($data); } if (!method_exists($this->datastore, 'save_value')) { return; } $this->datastore->save_value($this->id, $this->value); }
public function save($data) { if ($this->is_multilingual) { $languages = UF_ML::get(); $this->value = array(); foreach ($languages as $l) { $this->value[$l['code']] = isset($data[$this->id][$l['code']]); } $this->value = UF_ML::join($this->value); } else { $this->value = isset($data[$this->id]); } $this->datastore->save_value($this->id, $this->value); }
function save($source) { if (isset($source[$this->id]) && $source[$this->id] != NULL) { $value = $source[$this->id]; if ($this->is_multilingual) { $result_values = array(); $result_order = array(); foreach ($value as $code => $language) { $result_values[$code] = $language; unset($result_values[$code]["__" . md5($this->id) . "__"]); if ($this->is_sortable) { $result_order[$code] = $source[$this->id][$code]['order']; } } if (isset($result_values['order'])) { unset($result_values['order']); } $result_values = UF_ML::join($result_values); $result_order = UF_ML::join($result_order); $this->datastore->save_value($this->id, $result_values); $this->datastore->save_value('order_' . $this->id, $result_order); } else { if ($value == NULL) { $value = array(); } unset($value["__" . md5($this->id) . "__"]); $this->value = $value; if (is_array($this->value) && isset($this->value['order'])) { unset($this->value['order']); } $this->datastore->save_value($this->id, $this->value); if ($this->is_sortable) { $this->order = $source[$this->id]['order']; $this->datastore->save_value('order_' . $this->id, $this->order); } } } }