static)) { $this->static = $this->getStatic(); } return $this->static; break; case 'repeatable': if (empty($this->repeatable)) { $this->repeatable = $this->getRepeatable(); } return $this->repeatable; break; default: return parent::__get($name); } } /** * Get the rendering of this field type for static display, e.g. in a single * item view (typically a "read" task). * * @since 2.0 * * @return string The field HTML */ public function getStatic() { if (isset($this->element['legacy'])) { return $this->getInput(); } $options = array( 'id' => $this->id ); return $this->getFieldContents($options); } /** * Get the rendering of this field type for a repeatable (grid) display, * e.g. in a view listing many item (typically a "browse" task) * * @since 2.0 * * @return string The field HTML */ public function getRepeatable() { if (isset($this->element['legacy'])) { return $this->getInput(); } $options = array( 'class' => $this->id ); return $this->getFieldContents($options); } /** * Method to get the field input markup. * * @param array $fieldOptions Options to be passed into the field * * @return string The field HTML */ public function getFieldContents(array $fieldOptions = array()) { $id = isset($fieldOptions['id']) ? 'id="' . $fieldOptions['id'] . '" ' : ''; $class = $this->class . (isset($fieldOptions['class']) ? ' ' . $fieldOptions['class'] : ''); return '' . htmlspecialchars(GenericList::getOptionName($this->getOptions(), $this->value), ENT_COMPAT, 'UTF-8') . ''; } }