Merge pull request #3138 from prototech/ticket/12642

[ticket/12642] Ensure CPF type specific options are set when editing booleans.
This commit is contained in:
Joas Schilling 2015-01-20 22:46:08 +01:00
commit f02dc44a23

View file

@ -367,29 +367,29 @@ class type_bool extends type_base
*/ */
public function prepare_hidden_fields($step, $key, $action, &$field_data) public function prepare_hidden_fields($step, $key, $action, &$field_data)
{ {
if ($key == 'l_lang_options' && $this->request->is_set('l_lang_options')) if ($key == 'field_default_value')
{ {
return $this->request->variable($key, array(array('')), true); $field_length = $this->request->variable('field_length', 0);
}
else if ($key == 'field_default_value') // Do a simple is set check if using checkbox.
if ($field_length == 2)
{ {
return $this->request->variable($key, $field_data[$key]); return $this->request->is_set($key);
} }
else return $this->request->variable($key, $field_data[$key], true);
}
$default_lang_options = array(
'l_lang_options' => array(0 => array('')),
'lang_options' => array(0 => ''),
);
if (isset($default_lang_options[$key]) && $this->request->is_set($key))
{ {
if (!$this->request->is_set($key)) return $this->request->variable($key, $default_lang_options[$key], true);
{
return false;
}
else if ($key == 'field_ident' && isset($field_data[$key]))
{
return $field_data[$key];
}
else
{
return ($key == 'lang_options') ? $this->request->variable($key, array(''), true) : $this->request->variable($key, '', true);
}
} }
return parent::prepare_hidden_fields($step, $key, $action, $field_data);
} }
/** /**