12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- <?php
- /**
- * CFormStringElement class file.
- *
- * @author Qiang Xue <qiang.xue@gmail.com>
- * @link http://www.yiiframework.com/
- * @copyright 2008-2013 Yii Software LLC
- * @license http://www.yiiframework.com/license/
- */
- /**
- * CFormStringElement represents a string in a form.
- *
- * @property string $on Scenario names separated by commas. Defaults to null.
- *
- * @author Qiang Xue <qiang.xue@gmail.com>
- * @package system.web.form
- * @since 1.1
- */
- class CFormStringElement extends CFormElement
- {
- /**
- * @var string the string content
- */
- public $content;
- private $_on;
- /**
- * Returns a value indicating under which scenarios this string is visible.
- * If the value is empty, it means the string is visible under all scenarios.
- * Otherwise, only when the model is in the scenario whose name can be found in
- * this value, will the string be visible. See {@link CModel::scenario} for more
- * information about model scenarios.
- * @return string scenario names separated by commas. Defaults to null.
- */
- public function getOn()
- {
- return $this->_on;
- }
- /**
- * @param string $value scenario names separated by commas.
- */
- public function setOn($value)
- {
- $this->_on=preg_split('/[\s,]+/',$value,-1,PREG_SPLIT_NO_EMPTY);
- }
- /**
- * Renders this element.
- * The default implementation simply returns {@link content}.
- * @return string the string content
- */
- public function render()
- {
- return $this->content;
- }
- /**
- * Evaluates the visibility of this element.
- * This method will check the {@link on} property to see if
- * the model is in a scenario that should have this string displayed.
- * @return boolean whether this element is visible.
- */
- protected function evaluateVisible()
- {
- return empty($this->_on) || in_array($this->getParent()->getModel()->getScenario(),$this->_on);
- }
- }
|