Merge pull request #1728 from wilr/open6445

FIX: Ensure FieldList::push() doesn't eliminate key
This commit is contained in:
Simon Welsh 2013-04-05 23:25:52 -07:00
commit 77514204ee

View File

@ -402,7 +402,8 @@ class FieldList extends ArrayList {
public function push($item, $key = null) {
$this->onBeforeInsert($item);
$item->setContainerFieldList($this);
return parent::push($item, $key = null);
return parent::push($item, $key);
}
/**
@ -410,7 +411,10 @@ class FieldList extends ArrayList {
*/
protected function onBeforeInsert($item) {
$this->flushFieldsCache();
if($item->getName()) $this->rootFieldList()->removeByName($item->getName(), true);
if($item->getName()) {
$this->rootFieldList()->removeByName($item->getName(), true);
}
}
@ -420,7 +424,10 @@ class FieldList extends ArrayList {
* @param Form $form The form to set this FieldList to
*/
public function setForm($form) {
foreach($this as $field) $field->setForm($form);
foreach($this as $field) {
$field->setForm($form);
}
return $this;
}