diff options
Diffstat (limited to 'app/classes/Simplel10n.class.php')
-rw-r--r-- | app/classes/Simplel10n.class.php | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/app/classes/Simplel10n.class.php b/app/classes/Simplel10n.class.php new file mode 100644 index 0000000..cc31921 --- /dev/null +++ b/app/classes/Simplel10n.class.php @@ -0,0 +1,40 @@ +<?php + + +class Simplel10n { + + public $locale; + public $l10nFolder; + + public function __construct($locale='en') { + $GLOBALS['locale'] = array(); + $this->locale = $locale; + $this->l10nFolder = dirname(__FILE__) . '/../l10n/'; + $this->load($this->l10nFolder . $this->locale); + } + + public function setL1OnFolder($path) { + $this->l10nFolder = $path; + } + + static function getString($str) { + if(array_key_exists($str, $GLOBALS['locale'])) { + return $GLOBALS['locale'][$str]; + } else { + return $str; + } + } + + static function load($pathToFile) { + + if (!file_exists($pathToFile . '.lang')) return false; + + $file = file($pathToFile . '.lang'); + + foreach ($file as $k => $v) { + if (substr($v,0,1) == ';' && !empty($file[$k+1])) { + $GLOBALS['locale'][trim(substr($v,1))] = trim($file[$k+1]); + } + } + } +} |