name = 'qtranslate_wysiwyg';
$this->label = __("Wysiwyg Editor",'acf');
$this->category = __("qTranslate",'acf');
acf_field::__construct();
add_filter('acf/fields/wysiwyg/toolbars', array($this, 'toolbars'), 1, 1);
}
function toolbars($toolbars)
{
return acf_field_wysiwyg::toolbars($toolbars);
}
function create_field($field)
{
if (!acf_qtranslate_enabled()) {
acf_field_wysiwyg::create_field($field);
return;
}
$defaults = array(
'toolbar' => 'full',
'media_upload' => 'yes',
);
$field = array_merge($defaults, $field);
global $q_config, $wp_version;
$languages = qtrans_getSortedLanguages(true);
$values = qtrans_split($field['value'], $quicktags = true);
echo '
';
foreach ($languages as $language) {
$class = ($language === end($languages)) ? 'wp-switch-editor current-language' : 'wp-switch-editor';
echo '
' . $q_config['language_name'][$language] . '';
}
foreach ($languages as $language):
$value = $values[$language];
$id = 'wysiwyg' . $field['id'] . "[$language]";
$name = $field['name'] . "[$language]";
$class = ($language === end($languages)) ? 'acf_wysiwyg wp-editor-wrap current-language' : 'acf_wysiwyg wp-editor-wrap';
?>
';
}
function format_value($value, $post_id, $field)
{
return $value;
}
function format_value_for_api($value, $post_id, $field) {
if (acf_qtranslate_enabled()) {
$value = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($value);
}
return acf_field_wysiwyg::format_value_for_api($value, $post_id, $field);
}
function update_value($value, $post_id, $field)
{
if (acf_qtranslate_enabled()) {
$value = qtrans_join($value);
}
return $value;
}
}
new acf_field_qtranslate_wysiwyg;