function em_options_textarea($title, $name, $description = '') { $translate = EM_ML::is_option_translatable($name); ?> <tr valign="top" id='<?php echo esc_attr($name); ?> _row'> <th scope="row"><?php echo esc_html($title); ?> </th> <td> <textarea name="<?php echo esc_attr($name); ?> " id="<?php echo esc_attr($name); ?> " rows="6" cols="60"><?php echo esc_attr(get_option($name), ENT_QUOTES); ?> </textarea> <?php if ($translate) { ?> <span class="em-translatable"></span><?php } ?> <br /> <?php if ($translate) { echo '<div class="em-ml-options"><table class="form-table">'; foreach (EM_ML::get_langs() as $lang => $lang_name) { if ($lang != EM_ML::$wplang) { ?> <tr> <td class="lang"><?php echo $lang_name; ?> </td> <td class="lang-text"><textarea name="<?php echo esc_attr($name); ?> _ml[<?php echo $lang; ?> ]" id="<?php echo esc_attr($name . '_' . $lang); ?> " style="width: 100%" size="45"><?php echo esc_attr(EM_ML::get_option($name, $lang, false), ENT_QUOTES); ?> </textarea></td> </tr> <?php } else { $default_lang = '<input name="' . esc_attr($name) . '_ml[' . EM_ML::$wplang . ']" type="hidden" id="' . esc_attr($name . '_' . EM_ML::$wplang) . '" value="' . esc_attr(get_option($name, $default), ENT_QUOTES) . '" />'; } } echo '</table>'; echo '<em>' . __('If left blank, the default value will be used.', 'dbem') . '</em>'; echo $default_lang . '</div>'; } ?> <em><?php echo $description; ?> </em> </td> </tr> <?php }
/** * When saving an original location, save shared meta to translations as well. * @param boolean $result * @param EM_Location $EM_Location * @return boolean */ public static function location_save_meta($result, $EM_Location) { if ($result && EM_ML::is_original($EM_Location)) { //save post meta for all others as well foreach (EM_ML::get_langs() as $lang_code => $language) { $location = EM_ML::get_translation($EM_Location, $lang_code); /* @var $EM_Location EM_Location */ if ($location->location_id != $EM_Location->location_id) { self::location_merge_original_meta($location, $EM_Location); $location->save_meta(); } } } return $result; }