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() { ...@@ -199,7 +199,7 @@ function testOptionsAllowedValuesText() {
} }
/** /**
* Options (boolen) : test 'On/Off' values input. * Options (boolean) : test 'On/Off' values input.
*/ */
function testOptionsAllowedValuesBoolean() { function testOptionsAllowedValuesBoolean() {
$this->field_name = 'field_options_boolean'; $this->field_name = 'field_options_boolean';
...@@ -225,6 +225,19 @@ function testOptionsAllowedValuesBoolean() { ...@@ -225,6 +225,19 @@ function testOptionsAllowedValuesBoolean() {
$this->assertFalse(isset($field['settings']['off']), 'The off value is not saved into settings'); $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. * Helper function to create list field of a given type.
* *
......
...@@ -304,8 +304,9 @@ function options_extract_allowed_values($string, $field_type, $generate_keys) { ...@@ -304,8 +304,9 @@ function options_extract_allowed_values($string, $field_type, $generate_keys) {
// Check for an explicit key. // Check for an explicit key.
$matches = array(); $matches = array();
if (preg_match('/(.*)\|(.*)/', $text, $matches)) { if (preg_match('/(.*)\|(.*)/', $text, $matches)) {
$key = $matches[1]; // Trim key and value to avoid unwanted spaces issues.
$value = $matches[2]; $key = trim($matches[1]);
$value = trim($matches[2]);
$explicit_keys = TRUE; $explicit_keys = TRUE;
} }
// Otherwise see if we can use the value as the key. Detecting true integer // 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