From 6f7fdef0f500cd4bb540affd3bc1482243f337c1 Mon Sep 17 00:00:00 2001 From: emkael Date: Wed, 24 Feb 2016 23:18:07 +0100 Subject: * Prado 3.3.0 --- .../framework/I18N/TGlobalizationAutoDetect.php | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lib/prado/framework/I18N/TGlobalizationAutoDetect.php (limited to 'lib/prado/framework/I18N/TGlobalizationAutoDetect.php') diff --git a/lib/prado/framework/I18N/TGlobalizationAutoDetect.php b/lib/prado/framework/I18N/TGlobalizationAutoDetect.php new file mode 100644 index 0000000..2412712 --- /dev/null +++ b/lib/prado/framework/I18N/TGlobalizationAutoDetect.php @@ -0,0 +1,49 @@ + + * @link https://github.com/pradosoft/prado + * @copyright Copyright © 2005-2015 The PRADO Group + * @license https://github.com/pradosoft/prado/blob/master/COPYRIGHT + * @version $Revision: 1.66 $ $Date: ${DATE} ${TIME} $ + * @package System.I18N + */ + +/** + * Import the HTTPNeogtiator + */ +Prado::using('System.I18N.core.HTTPNegotiator'); + +/** + * TGlobalizationAutoDetect class will automatically try to resolve the default + * culture using the user browser language settings. + * + * @author Wei Zhuo + * @version $Revision: 1.66 $ $Date: ${DATE} ${TIME} $ + * @package System.I18N + */ +class TGlobalizationAutoDetect extends TGlobalization +{ + private $_detectedLanguage; + + public function init($xml) + { + parent::init($xml); + + //set the culture according to browser language settings + $http = new HTTPNegotiator(); + $languages = $http->getLanguages(); + if(count($languages) > 0) + { + $this->_detectedLanguage=$languages[0]; + $this->setCulture($languages[0]); + } + } + + public function getDetectedLanguage() + { + return $this->_detectedLanguage; + } +} + -- cgit v1.2.3