diff options
Diffstat (limited to 'lib/prado/framework/I18N/TI18NControl.php')
-rw-r--r-- | lib/prado/framework/I18N/TI18NControl.php | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/lib/prado/framework/I18N/TI18NControl.php b/lib/prado/framework/I18N/TI18NControl.php new file mode 100644 index 0000000..d784dfc --- /dev/null +++ b/lib/prado/framework/I18N/TI18NControl.php @@ -0,0 +1,89 @@ +<?php +/** + * Base I18N component. + * + * @author Wei Zhuo <weizhuo[at]gmail[dot]com> + * @link https://github.com/pradosoft/prado + * @copyright Copyright © 2005-2015 The PRADO Group + * @license https://github.com/pradosoft/prado/blob/master/COPYRIGHT + * @package System.I18N + */ + + +/** + * TI18NControl class. + * + * Base class for I18N components, providing Culture and Charset properties. + * Namespace: System.I18N + * + * Properties + * - <b>Culture</b>, string, + * <br>Gets or sets the culture for formatting. If the Culture property + * is not specified. The culture from the Application/Page is used. + * - <b>Charset</b>, string, + * <br>Gets or sets the charset for both input and output. + * If the Charset property is not specified. The charset from the + * Application/Page is used. The default is UTF-8. + * + * @author Xiang Wei Zhuo <weizhuo[at]gmail[dot]com> + * @version v1.0, last update on Sat Dec 11 15:25:11 EST 2004 + * @package System.I18N + */ +class TI18NControl extends TControl +{ + /** + * Gets the charset. + * It is evaluated in the following order: + * 1) application charset, + * 2) the default charset in globalization + * 3) UTF-8 + * @return string charset + */ + public function getCharset() + { + $app = $this->getApplication()->getGlobalization(false); + + //instance charset + $charset = $this->getViewState('Charset',''); + + //fall back to globalization charset + if(empty($charset)) + $charset = ($app===null) ? '' : $app->getCharset(); + + //fall back to default charset + if(empty($charset)) + $charset = ($app===null) ? 'UTF-8' : $app->getDefaultCharset(); + + return $charset; + } + + /** + * Sets the charset for message output + * @param string the charset, e.g. UTF-8 + */ + public function setCharset($value) + { + $this->setViewState('Charset',$value,''); + } + + + /** + * Get the specific culture for this control. + * @param parameter + * @return string culture identifier. + */ + public function getCulture() + { + return $this->getViewState('Culture',''); + } + + /** + * Get the custom culture identifier. + * @param string culture identifier. + */ + public function setCulture($culture) + { + $this->setViewState('Culture',$culture,''); + } +} + |