public function getItems()
{
$items = array();
if (TRUE === $this->items instanceof QueryInterface) {
$items = $this->addOptionsFromResults($this->items);
} elseif (TRUE === is_string($this->items)) {
$itemNames = GeneralUtility::trimExplode(',', $this->items);
if (!$this->getTranslateCsvItems()) {
foreach ($itemNames as $itemName) {
array_push($items, array($itemName, $itemName));
}
} else {
foreach ($itemNames as $itemName) {
$resolvedLabel = $this->resolveLocalLanguageValueOfLabel('', $this->getPath() . '.option.' . $itemName);
array_push($items, array($resolvedLabel, $itemName));
}
}
} elseif (TRUE === is_array($this->items) || TRUE === $this->items instanceof \Traversable) {
foreach ($this->items as $itemIndex => $itemValue) {
if (TRUE === is_array($itemValue) || TRUE === $itemValue instanceof \ArrayObject) {
array_push($items, $itemValue);
} else {
array_push($items, array($itemValue, $itemIndex));
}
}
}
$emptyOption = $this->getEmptyOption();
if (FALSE !== $emptyOption) {
array_unshift($items, array($emptyOption, ''));
}
return $items;
}