/libraries/fof/form/field/sql.php
https://github.com/elinw/joomla-cms · PHP · 97 lines · 47 code · 12 blank · 38 comment · 4 complexity · fc2a482d10bbbdd55034ee33a665535b MD5 · raw file
- <?php
- /**
- * @package FrameworkOnFramework
- * @copyright Copyright (C) 2010 - 2012 Akeeba Ltd. All rights reserved.
- * @license GNU General Public License version 2 or later; see LICENSE.txt
- */
- // Protect from unauthorized access
- defined('_JEXEC') or die;
- if (!class_exists('JFormFieldSql'))
- {
- require_once JPATH_LIBRARIES . '/joomla/form/fields/sql.php';
- }
- /**
- * Form Field class for FOF
- * Radio selection listGeneric list from an SQL statement
- *
- * @package FrameworkOnFramework
- * @since 2.0
- */
- class FOFFormFieldSql extends JFormFieldSql implements FOFFormField
- {
- protected $static;
- protected $repeatable;
- /**
- * Method to get certain otherwise inaccessible properties from the form field object.
- *
- * @param string $name The property name for which to the the value.
- *
- * @return mixed The property value or null.
- *
- * @since 2.0
- */
- public function __get($name)
- {
- switch ($name)
- {
- case 'static':
- if (empty($this->static))
- {
- $this->static = $this->getStatic();
- }
- return $this->static;
- break;
- case 'repeatable':
- if (empty($this->repeatable))
- {
- $this->repeatable = $this->getRepeatable();
- }
- return $this->static;
- 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()
- {
- $class = $this->element['class'] ? ' class="' . (string) $this->element['class'] . '"' : '';
- return '<span id="' . $this->id . '" ' . $class . '>' .
- htmlspecialchars(FOFFormFieldList::getOptionName($this->getOptions(), $this->value), ENT_COMPAT, 'UTF-8') .
- '</span>';
- }
- /**
- * 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()
- {
- $class = $this->element['class'] ? (string) $this->element['class'] : '';
- return '<span class="' . $this->id . ' ' . $class . '">' .
- htmlspecialchars(FOFFormFieldList::getOptionName($this->getOptions(), $this->value), ENT_COMPAT, 'UTF-8') .
- '</span>';
- }
- }