From 63c79dd722d5a8dd09b8828a4711d496680c0062 Mon Sep 17 00:00:00 2001 From: xue <> Date: Mon, 3 Apr 2006 21:55:33 +0000 Subject: Cleanup of I18N. --- framework/I18N/TI18NControl.php | 89 ++++++++++++++++++++--------------------- 1 file changed, 43 insertions(+), 46 deletions(-) (limited to 'framework/I18N/TI18NControl.php') diff --git a/framework/I18N/TI18NControl.php b/framework/I18N/TI18NControl.php index 44e15f2f..e6aed0fa 100644 --- a/framework/I18N/TI18NControl.php +++ b/framework/I18N/TI18NControl.php @@ -1,43 +1,63 @@ - * @version $Revision: 1.1 $ $Date: 2005/08/27 03:21:12 $ + * @author Wei Zhuo + * @link http://www.pradosoft.com/ + * @copyright Copyright © 2005 PradoSoft + * @license http://www.pradosoft.com/license/ + * @version $Revision: $ $Date: $ * @package System.I18N */ /** + * TI18NControl class. + * * Base class for I18N components, providing Culture and Charset properties. * Namespace: System.I18N * * Properties - * - Culture, string, + * - Culture, string, *
Gets or sets the culture for formatting. If the Culture property * is not specified. The culture from the Application/Page is used. - * - Charset, string, - *
Gets or sets the charset for both input and output. - * If the Charset property is not specified. The charset from the + * - Charset, string, + *
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 * @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(); + + //instance charset + $charset = $this->getViewState('Charset',''); + + //fall back to globalization charset + if(empty($charset)) + $charset = is_null($app) ? '' : $app->getCharset(); + + //fall back to default charset + if(empty($charset)) + $charset = (is_null($app)) ? 'UTF-8' : $app->getDefaultCharset(); + + return $charset; + } + /** * Sets the charset for message output * @param string the charset, e.g. UTF-8 @@ -45,50 +65,27 @@ class TI18NControl extends TControl public function setCharset($value) { $this->setViewState('Charset',$value,''); - } + } + - /** * Get the specific culture for this control. * @param parameter - * @return string culture identifier. + * @return string culture identifier. */ public function getCulture() { return $this->getViewState('Culture',''); } - + /** * Get the custom culture identifier. - * @param string culture identifier. + * @param string culture identifier. */ public function setCulture($culture) { $this->setViewState('Culture',$culture,''); } - - /** - * Gets the charset, with fall back to the application charset, - * then the default charset in globalization, and finally UTF-8 - * @return string charset - */ - public function getCharset() - { - $app = $this->Application->getGlobalization(); - - //instance charset - $charset = $this->getViewState('Charset',''); - - //fall back to globalization charset - if(empty($charset)) - $charset = is_null($app) ? '' : $app->getCharset(); - - //fall back to default charset - if(empty($charset)) - $charset = (is_null($app)) ? 'UTF-8' : $app->getDefaultCharset(); - - return $charset; - } } ?> \ No newline at end of file -- cgit v1.2.3