summaryrefslogtreecommitdiffstats
path: root/core/namespace/Language.php
diff options
context:
space:
mode:
Diffstat (limited to 'core/namespace/Language.php')
-rw-r--r--core/namespace/Language.php48
1 files changed, 48 insertions, 0 deletions
diff --git a/core/namespace/Language.php b/core/namespace/Language.php
new file mode 100644
index 0000000..c8a018e
--- /dev/null
+++ b/core/namespace/Language.php
@@ -0,0 +1,48 @@
+<?php
+class Language {
+ private $language = [];
+ private $template = [];
+
+ public function __construct($lang) {
+ require ROOT."core/language/{$lang}.php";
+ $this->language = $LANGUAGE;
+ }
+
+ public function loadLanguage($filename) {
+ require $filename;
+ $this->template = $LANGUAGE;
+ }
+
+ public function template($name, $params = FALSE) {
+ if(isset($this->template[$name])) {
+ if($params) {
+ return vsprintf($this->template[$name], $params);
+ }
+
+ return $this->template[$name];
+ }
+
+ return "{{$name}}";
+ }
+
+ private function get($name, $params = FALSE) {
+ if(isset($this->language[$name])) {
+ if($params) {
+ return vsprintf($this->language[$name], $params);
+ }
+
+ return $this->language[$name];
+ }
+
+ return "{{$name}}";
+ }
+
+ public function text($name, $params = FALSE) {
+ return $this->get($name, $params);
+ }
+
+ public function set($name, $value) {
+ return $this->language[$name] = $value;
+ }
+}
+?> \ No newline at end of file