1 |
cvsjoko |
1.1 |
<? |
2 |
|
|
|
3 |
|
|
class Site { |
4 |
|
|
|
5 |
|
|
var $idxIC; |
6 |
|
|
var $Attribs; |
7 |
|
|
|
8 |
|
|
// hash of names of already by "$tracking->loadModule()" loaded modules |
9 |
|
|
var $modules_loaded; |
10 |
|
|
|
11 |
|
|
|
12 |
|
|
function Site() { |
13 |
|
|
} |
14 |
|
|
|
15 |
|
|
function addInformationCluster($args) { |
16 |
|
|
$this->idxIC[$args['name']] = new InformationCluster($args); |
17 |
|
|
} |
18 |
|
|
|
19 |
|
|
function getInformationCluster($name) { |
20 |
|
|
if (!is_object($this->idxIC[$name])) { |
21 |
|
|
return; |
22 |
|
|
} |
23 |
|
|
return $this->idxIC[$name]; |
24 |
|
|
} |
25 |
|
|
|
26 |
|
|
function setAttribute($name, $value) { |
27 |
|
|
$this->Attribs[$name] = $value; |
28 |
|
|
} |
29 |
|
|
|
30 |
|
|
function getAttribute($name) { |
31 |
|
|
return $this->Attribs[$name]; |
32 |
|
|
} |
33 |
|
|
|
34 |
|
|
|
35 |
|
|
function loadLibrary($libname) { |
36 |
|
|
pla_LoadModule($libname); |
37 |
|
|
} |
38 |
|
|
|
39 |
|
|
function loadModule($modulename) { |
40 |
|
|
|
41 |
|
|
if (isset($this->modules_loaded[$modulename])) { |
42 |
|
|
return; |
43 |
|
|
} else { |
44 |
|
|
$this->modules_loaded[$modulename] = 1; |
45 |
|
|
} |
46 |
|
|
|
47 |
|
|
$path_modules = $this->getAttribute('path_base') . 'modules/'; |
48 |
|
|
$includefile = $path_modules . $modulename; |
49 |
|
|
if (file_exists($includefile)) { |
50 |
|
|
include($includefile); |
51 |
|
|
} else { |
52 |
|
|
print "Could not load module \"$modulename\" located at \"$includefile\".<br>"; |
53 |
|
|
} |
54 |
|
|
} |
55 |
|
|
|
56 |
|
|
} |
57 |
|
|
|
58 |
|
|
?> |