summaryrefslogtreecommitdiffstats
path: root/code/modules.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'code/modules.inc.php')
-rw-r--r--code/modules.inc.php18
1 files changed, 15 insertions, 3 deletions
diff --git a/code/modules.inc.php b/code/modules.inc.php
index 4c17807..02aa9f2 100644
--- a/code/modules.inc.php
+++ b/code/modules.inc.php
@@ -12,6 +12,7 @@
class Modules {
var $modules;
+ var $pages;
var $code;
var $templates;
@@ -29,10 +30,10 @@
if(!$data) continue;
$info = $GLOBALS['xmlparser']->FindTag($data, 'info');
- if(!is_array($info)) continue;
+ if(!$info) continue;
$name = $GLOBALS['xmlparser']->FindTag($info, 'name');
- if(!is_array($name)) continue;
+ if(!$name) continue;
if(count($name['children']) != 1) continue;
if(!is_string($name['children'][0])) continue;
@@ -42,7 +43,7 @@
'templates' => array());
$files = $GLOBALS['xmlparser']->FindTag($data, 'files');
- if(!is_array($files)) continue;
+ if(!$files) continue;
foreach($files['children'] as $file) {
if(!is_array($file)) continue;
@@ -50,6 +51,17 @@
if(!is_string($file['children'][0])) continue;
switch($file['tag']) {
+ case 'page':
+ $type = $file['attribs']['type'];
+ if(!$type) $type = 'c';
+
+ $pagename = $file['children'][0] . '.' . $type;
+ $realname = 'modules/' . $moddir . '/pages/' . strtr($file['children'][0], array(':' => '/'))
+ . '.' . $type . '.xml';
+
+ $this->pages[$pagename] = $realname;
+ $this->modules[$name]['pages'][$pagename] = $realname;
+ break;
case 'code':
$filename = 'code/' . $file['children'][0] . '.inc.php';
$realname = 'modules/' . $moddir . '/code/' . $file['children'][0] . '.inc.php';