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); }
private function base_display_input() { if (!$this->is_multilingual) { $this->display_input(); return; } $languages = UF_ML::get(); if (count($languages) > 1) { # Backup vars $id = $this->input_id; $value = $this->value; $width = 25; echo '<div class="uf-lang-wrap" style="padding-right:' . $width * count($languages) . 'px;">'; $this->display_language_switcher(); # Display inputs foreach ($languages as $language) { $this->language = $language['code']; $this->input_id = $id . '[' . $language['code'] . ']'; $this->value = UF_ML::split($value, $language['code']); echo '<div class="lang-input lang-input-' . $language['code'] . '">'; $this->display_input(); echo '</div>'; } echo '</div>'; # Restore vars $this->language = null; $this->input_id = $id; $this->value = $value; } else { $this->display_input(); } }