diff --git a/outputhtml.php b/outputhtml.php index e5a2f69..248e8f8 100644 --- a/outputhtml.php +++ b/outputhtml.php @@ -33,10 +33,13 @@ class outputhtml extends output $resView = $data; if ($viewClass !== FALSE && $viewMethod !== FALSE) { - if ($module !== "") - require_once ("modules/$module/views/$viewClass.php"); - else - require_once ("views/$viewClass.php"); + if (! class_exists ($viewClass)) + { + if ($module !== "") + require_once ("modules/$module/views/$viewClass.php"); + else + require_once ("views/$viewClass.php"); + } $obj = new $viewClass; $resView = $obj->$viewMethod ($data, $variable); if (is_array ($resView)) @@ -58,10 +61,30 @@ class outputhtml extends output $layoutPage = $this->layoutVariables ($layout, $variable); $resView = str_replace ("{content}", $resView, $layoutPage); } + else + { + // No layout : display a very basic HTML page + $layoutPage = <<< EOT + + + + + {title} + + +{flash} +{content} + + +EOT; + $resView = str_replace ("{content}", $resView, $layoutPage); + } // Do the title replacement in the replacement structure if (! isset ($replacement["{title}"])) $replacement["{title}"] = $title; + if (! isset ($replacement["{flash}"])) + $replacement["{flash}"] = ""; foreach ($replacement as $key=>$val) $resView = str_replace ($key, $val, $resView);