Commit 5ff1cee3 authored by catch's avatar catch

Issue #1029060 by plopesc, Kars-T: Should allowed options for list fields trim() the strings?.

parent 3af2941e
......@@ -199,7 +199,7 @@ function testOptionsAllowedValuesText() {
}
/**
* Options (boolen) : test 'On/Off' values input.
* Options (boolean) : test 'On/Off' values input.
*/
function testOptionsAllowedValuesBoolean() {
$this->field_name = 'field_options_boolean';
......@@ -225,6 +225,19 @@ function testOptionsAllowedValuesBoolean() {
$this->assertFalse(isset($field['settings']['off']), 'The off value is not saved into settings');
}
/**
* Options (text) : test 'trimmed values' input.
*/
function testOptionsTrimmedValuesText() {
$this->field_name = 'field_options_trimmed_text';
$this->createOptionsField('list_text');
// Explicit keys.
$string = "zero |Zero\none | One";
$array = array('zero' => 'Zero', 'one' => 'One');
$this->assertAllowedValuesInput($string, $array, 'Explicit keys are accepted and trimmed.');
}
/**
* Helper function to create list field of a given type.
*
......
......@@ -304,8 +304,9 @@ function options_extract_allowed_values($string, $field_type, $generate_keys) {
// Check for an explicit key.
$matches = array();
if (preg_match('/(.*)\|(.*)/', $text, $matches)) {
$key = $matches[1];
$value = $matches[2];
// Trim key and value to avoid unwanted spaces issues.
$key = trim($matches[1]);
$value = trim($matches[2]);
$explicit_keys = TRUE;
}
// Otherwise see if we can use the value as the key. Detecting true integer
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment