[gelöst] Inhalt eines (via hook_edit_form erstellten) Form-Elements wird nicht gespeichert
Eingetragen von SuperEngineer 64 (133)
am 22.05.2014 - 11:44 Uhr in
am 22.05.2014 - 11:44 Uhr in
Hey ho,
Ein Textfield in meiner Custom Content Pane funktioniert einwandfrei.
Eine Textarea incl. Input-Filter (also '#type' => 'text_format',) wird jedoch nicht gespeichert.
<?php
function text_edit_form($form, &$form_state) {
$conf = $form_state['conf'];
$form['form_text'] = array(
'#type' => 'text_format',
'#title' => t('Text'),
'#format' => 'filtered_html',
'#size' => 50,
'#resizeable' => TRUE,
'#default_value' => !empty($conf['form_text']) ? $conf['form_text'] : '',
);
return $form;
}
function text_edit_form_submit($form, &$form_state) {
foreach (array('form_text') as $key) {
$form_state['conf'][$key] = $form_state['values'][$key];
}
}
?>
In einem Forum steht nun geschrieben, #default_value erwarte einen String, text_format liefere jedoch ein Array.
Die Lösung sei nun diese:
<?php
// Retrieve the default values for 'value' and 'format', if not readily
// available through other means:
$defaults = array(
'value' => '',
'format' => filter_default_format(),
);
$my_richtext_field = variable_get('my_richtext_field', $defaults);
// Just construct a regular #type 'text_format' form element:
$form['my_richtext_field'] = array(
'#type' => 'text_format',
'#title' => t('My richtext field'),
'#default_value' => $my_richtext_field['value'],
'#format' => $my_richtext_field['format'],
);
?>
Wie münze ich diesen Code nun auf meinen hook_edit_form um? Verstehe nicht ganz was dort vorsich geht.
Kann mir jemand helfen an diesem Sonnigen Tag im Mai? :)
Lieben Gruß,
SE64
- Anmelden oder Registrieren um Kommentare zu schreiben
Gelöst! Speicher-Funktion
am 22.05.2014 - 12:40 Uhr
Gelöst! Speicher-Funktion umgeschrieben.
<?php
function text_edit_form_submit($form, &$form_state) {
$form_state['conf']['form_text'] = $form_state['values']['form_text']['value'];
}
?>