File: class-language.php

package info (click to toggle)
knowledgeroot 0.9.7.3-2
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 6,368 kB
  • ctags: 23,662
  • sloc: php: 6,113; sql: 171; perl: 133; xml: 132; makefile: 40
file content (88 lines) | stat: -rwxr-xr-x 2,369 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
/******************************
 * Knowledgeroot
 * Frank Habermann
 * 11.04.2006
 *
 * Version 0.1
 * This Class is for language work
 ******************************/
 
class language {
	var $CLASS = array();
	var $default_lang = "en";
	var $get = array(); // array with languagetokens
	
	var $sys = array(); // array with syslanguagetokens

	function start(&$CLASS,$language) {
		$this->CLASS =& $CLASS;

		// load syslangtokens to array
		$this->load_sys_lang($language);
		
		// set userlanguage if available
		if($_SESSION['language'] != "") {
			$language = $_SESSION['language'];
		}
		
		$this->load_language($language);
		
		return 0;
	}

	function load_language($language) {
		if(is_file("system/language/lang_" . $language . ".php")) {
			include("system/language/lang_" . $language . ".php");
		} elseif(is_file("system/language/lang_" . $this->default_lang . ".php")) {
			include("system/language/lang_" . $this->default_lang . ".php");
			$language = $this->default_lang;
		} else {
			exit("LANGUAGE: '" . $language . "' NOT FOUND!");
		}
		
		$this->get = $languagetoken[$language];
		unset($languagetoken);
	}
	
	function load_sys_lang($language) {
		if(is_file("system/language/lang_" . $language . ".php")) {
			include("system/language/lang_" . $language . ".php");
		} elseif(is_file("system/language/lang_" . $this->default_lang . ".php")) {
			include("system/language/lang_" . $this->default_lang . ".php");
			$language = $this->default_lang;
		} else {
			exit("LANGUAGE: '" . $language . "' NOT FOUND!");
		}
		
		$this->sys = $languagetoken[$language];
		unset($languagetoken);
	}
	
	// dropdown with available languages
	function lang_dropdown($name = "language",$default = "") {
		if(!is_array($this->CLASS['vars']['knowledgeroot']['availablelanguages'])) {
			$this->CLASS['vars']['knowledgeroot']['availablelanguages'] = array($this->CLASS['vars']['knowledgeroot']['language']);
		}
		
		if($default == "") {
			$default = $this->CLASS['vars']['knowledgeroot']['language'];
		}
	
		$out = "<select name=\"".$name."\">\n";
		
		foreach($this->CLASS['vars']['knowledgeroot']['availablelanguages'] as $key => $value) {
			if($value == $default) {
				$selected = "selected";
			}
			
			$out .= "\t<option value=\"".$value."\" $selected>".$value."</option>\n";
			$selected = "";
		}

		$out .= "</select>\n";
		return $out;
	}
}

?>