Exemple #1
0
 /**
  * @inheritdoc
  */
 public function repeatable($object)
 {
     TypeChecker::getInstance()->check($object, [Block::getClass(), AbstractField::getClass()], 'object')->throwTypeErrorIfNotValid();
     $repeatableBlockName = $object->getName();
     $repeatableBlockTitle = $object->getTitle();
     $object->title('');
     $repeatableBlock = new Block($repeatableBlockName, $repeatableBlockTitle);
     $repeatableBlock->setRepeatable(true);
     $object->setName('#IND#');
     $repeatableBlock->setRepeatObject($object);
     $deepCopy = new DeepCopy();
     $objectClone = $deepCopy->copy($repeatableBlock->getRepeatObject());
     $objectClone->setParent($repeatableBlock);
     $objectClone->setName('0');
     $repeatableBlock->children()->add($objectClone);
     $repeatableBlock->setParent($this);
     $this->children()->add($repeatableBlock);
     return $this;
 }