BUGFIX Fixed TreeMultiselectField/TreeDropdownField saving with 'unchanged' default values from constructor

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@99581 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Ingo Schommer 2010-02-22 04:37:33 +00:00
parent 26ca64a579
commit fcfccf6231
2 changed files with 6 additions and 2 deletions

View File

@ -160,6 +160,8 @@ class TreeDropdownField extends FormField {
if($forceValues = $this->value) { if($forceValues = $this->value) {
if(($values = preg_split('/,\s*/', $forceValues)) && count($values)) foreach($values as $value) { if(($values = preg_split('/,\s*/', $forceValues)) && count($values)) foreach($values as $value) {
if(!is_numeric($value)) continue;
$obj->markToExpose($this->objectForKey($value)); $obj->markToExpose($this->objectForKey($value));
} }
} }

View File

@ -45,6 +45,8 @@ class TreeMultiselectField extends TreeDropdownField {
$items = new DataObjectSet(); $items = new DataObjectSet();
$ids = explode(',', $this->value); $ids = explode(',', $this->value);
foreach($ids as $id) { foreach($ids as $id) {
if(!is_numeric($id)) continue;
$item = DataObject::get_by_id($this->sourceObject, $id); $item = DataObject::get_by_id($this->sourceObject, $id);
if($item) $items->push($item); if($item) $items->push($item);
} }