summaryrefslogtreecommitdiff
path: root/lpf/lib/Controller.class.php
diff options
context:
space:
mode:
Diffstat (limited to 'lpf/lib/Controller.class.php')
-rw-r--r--lpf/lib/Controller.class.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/lpf/lib/Controller.class.php b/lpf/lib/Controller.class.php
new file mode 100644
index 0000000..05736ee
--- /dev/null
+++ b/lpf/lib/Controller.class.php
@@ -0,0 +1,30 @@
+<?php
+
+class Controller {
+ /**
+ * Show a $view, in the most appropriate format (according to file
+ * extension and HTTP Accept header). Pass the array $vars to the view.
+ */
+ protected function showView($view, $vars=null) {
+ if ($vars===null) { $vars = array(); }
+
+ $obj = new View($view);
+ $obj->show($vars);
+ }
+
+ // Here be default handlers ////////////////////////////////////////////
+
+ public function index($routed, $remainder) {
+ header('Content-type: text/plain');
+ echo " == Generic Controller Index == \n\n";
+ $routed_str = implode('/', $routed);
+ $remainder_str = implode('/', $remainder);
+ echo "Full path: $routed_str/$remainder_str\n";
+ echo "Controller path: $routed_str\n";
+ echo "Remainder path: $remainder_str\n";
+ }
+ public function http404($routed, $remainder) {
+ $this->showView('http404', array('routed'=>$routed,
+ 'remainder'=>$remainder));
+ }
+}