71 lines
1.8 KiB
PHP
71 lines
1.8 KiB
PHP
<?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);
|
|
}
|
|
}
|