summaryrefslogtreecommitdiff
path: root/tests/FunctionalTests/active-controls/protected/pages/FeatureList.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/FunctionalTests/active-controls/protected/pages/FeatureList.php')
-rwxr-xr-xtests/FunctionalTests/active-controls/protected/pages/FeatureList.php34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/FunctionalTests/active-controls/protected/pages/FeatureList.php b/tests/FunctionalTests/active-controls/protected/pages/FeatureList.php
new file mode 100755
index 00000000..8f28f6de
--- /dev/null
+++ b/tests/FunctionalTests/active-controls/protected/pages/FeatureList.php
@@ -0,0 +1,34 @@
+<?php
+
+class FeatureList extends TPage
+{
+ public function onLoad($param)
+ {
+ parent::onLoad($param);
+ $list=$this->getPageList(dirname(__FILE__),'');
+ $this->List->DataSource=$list;
+ $this->List->dataBind();
+ }
+
+ protected function getPageList($directory,$basePath)
+ {
+ $list=array();
+ $folder=@opendir($directory);
+ while($entry=@readdir($folder))
+ {
+ if($entry[0]==='.')
+ continue;
+ else if(is_file($directory.'/'.$entry))
+ {
+ if(($page=basename($entry,'.page'))!==$entry && strpos($page,'.')===false)
+ $list['?page='.$basePath.$page]=$basePath.$page;
+ }
+ else
+ $list=array_merge($list,$this->getPageList($directory.'/'.$entry,$basePath.$entry.'.'));
+ }
+ closedir($folder);
+ return $list;
+ }
+}
+
+?> \ No newline at end of file