/** * Adds the records to the database and returns a new {@link DataList} * * @param GridField * @param SS_List * @return SS_List */ public function getManipulatedData(GridField $gridField, SS_List $dataList) { $state = $gridField->State->MockDataGenerator; $count = (string) $state->Count; if (!$count) { return $dataList; } $generator = new MockDataBuilder($gridField->getModelClass()); $ids = $generator->setCount($count)->setIncludeRelations($state->IncludeRelations)->setDownloadImages($state->DownloadImages === true)->generate(); foreach ($ids as $id) { $dataList->add($id); } return $dataList; }
public function getManipulatedData(GridField $gridField, SS_List $dataList) { if (!$gridField->State->GridFieldAddRelation) { return $dataList; } $objectID = Convert::raw2sql($gridField->State->GridFieldAddRelation); if ($objectID) { $object = DataObject::get_by_id($dataList->dataclass(), $objectID); if ($object) { $dataList->add($object); } } $gridField->State->GridFieldAddRelation = null; return $dataList; }
/** * If an object ID is set, add the object to the list * * @param GridField $gridField * @param SS_List $dataList * @return SS_List */ public function getManipulatedData(GridField $gridField, SS_List $dataList) { if (!$gridField->State->GridFieldAddRelation) { return $dataList; } $objectID = Convert::raw2sql($gridField->State->GridFieldAddRelation); if ($objectID) { $object = DataObject::get_by_id($dataList->dataclass(), $objectID); if ($object) { // if the object is currently not linked to either a page or another list then we want to link to // the original, otherwise link to a clone if (!$object->ParentID && !$object->ListID) { $dataList->add($object); } else { $virtual = new ElementVirtualLinked(); $virtual->LinkedElementID = $object->ID; $virtual->write(); $dataList->add($virtual); } } } $gridField->State->GridFieldAddRelation = null; return $dataList; }
/** * If an object ID is set, add the object to the list * * @param GridField $gridField * @param SS_List $dataList * @return SS_List */ public function getManipulatedData(GridField $gridField, SS_List $dataList) { if (!$gridField->State->GridFieldAddRelation) { return $dataList; } $objectID = Convert::raw2sql($gridField->State->GridFieldAddRelation); if ($objectID) { $object = DataObject::get_by_id($dataList->dataclass(), $objectID); if ($object) { $virtual = new ElementVirtualLinked(); $virtual->LinkedElementID = $object->ID; $virtual->write(); $dataList->add($virtual); } } $gridField->State->GridFieldAddRelation = null; return $dataList; }
/** * If an object ID is set, add the object to the list * * @param GridField $gridField * @param SS_List $dataList * @return SS_List */ public function getManipulatedData(GridField $gridField, SS_List $dataList) { if (!$gridField->State->GridFieldAddRelation) { return $dataList; } $objectID = Convert::raw2sql($gridField->State->GridFieldAddRelation); if ($objectID) { $object = DataObject::get_by_id($dataList->dataclass(), $objectID); if ($object) { if ($this->_item_limit > 0 && $dataList->count() + 1 > $this->_item_limit) { $gridField->getForm()->getController()->getResponse()->addHeader('X-Status', _t('LimitedRelationsGridField.ITEM_LIMIT_REACHED', '_You cannot add any more items, you can only add {count} items. Please remove one then try again.', array('count' => $this->_item_limit))); } else { $dataList->add($object); } } } $gridField->State->GridFieldAddRelation = null; return $dataList; }
/** * If an object ID is set, add the object to the list * * @param GridField $gridField * @param SS_List $dataList * @return SS_List */ public function getManipulatedData(GridField $gridField, SS_List $dataList) { $objectID = $gridField->State->GridFieldAddRelation(null); if (empty($objectID)) { return $dataList; } $object = DataObject::get_by_id($dataList->dataclass(), $objectID); if ($object) { $dataList->add($object); } $gridField->State->GridFieldAddRelation = null; return $dataList; }
public function add($item) { $this->list->add($item); }