aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engine/lib/elgglib.php23
-rw-r--r--engine/start.php2
-rw-r--r--views/default/messages/exceptions/exception.php (renamed from views/default/messages/errors/exception.php)0
-rw-r--r--views/default/messages/list.php25
-rw-r--r--views/default/pageshell.php7
5 files changed, 54 insertions, 3 deletions
diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php
index 63baf16d5..7f98954a4 100644
--- a/engine/lib/elgglib.php
+++ b/engine/lib/elgglib.php
@@ -107,6 +107,25 @@
return $content;
}
+
+ /**
+ * Returns a representation of a full 'page' (which might be an HTML page, RSS file, etc, depending on the current view)
+ *
+ * @param unknown_type $title
+ * @param unknown_type $body
+ * @return unknown
+ */
+
+ function page_draw($title, $body) {
+
+ return elgg_view('pageshell', array(
+ 'title' => $title,
+ 'body' => $body,
+ 'messages' => system_messages()
+ )
+ );
+
+ }
/**
* Library loading and handling
@@ -399,8 +418,8 @@
function __elgg_php_exception_handler($exception) {
- $body = elgg_view("messages/errors/exception",array('object' => $exception));
- echo elgg_view("pageshell", array("title" => "Exception", "body" => $body));
+ $body = elgg_view("messages/exceptions/exception",array('object' => $exception));
+ echo page_draw("Exception", $body);
}
diff --git a/engine/start.php b/engine/start.php
index 03274ae4b..73a1e6b2d 100644
--- a/engine/start.php
+++ b/engine/start.php
@@ -22,7 +22,7 @@
}
if (!@include_once(dirname(__FILE__) . "/lib/elgglib.php")) { // Main Elgg library
- throw new InstallationException("Could not load the main Elgg library.");
+ throw new InstallationException("Elgg could not load its main library.");
}
/**
diff --git a/views/default/messages/errors/exception.php b/views/default/messages/exceptions/exception.php
index 8973db714..8973db714 100644
--- a/views/default/messages/errors/exception.php
+++ b/views/default/messages/exceptions/exception.php
diff --git a/views/default/messages/list.php b/views/default/messages/list.php
new file mode 100644
index 000000000..bac2fab56
--- /dev/null
+++ b/views/default/messages/list.php
@@ -0,0 +1,25 @@
+<?php
+
+ /**
+ * Elgg global system message list
+ * Lists all system messages
+ *
+ * @package Elgg
+ * @subpackage Core
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd
+ * @copyright Curverider Ltd 2008
+ * @link http://elgg.org/
+ *
+ * @uses $vars['object'] The array of message registers
+ */
+
+ if (!empty($vars['object']) && is_array($vars['object'])) {
+
+ foreach($vars['object'] as $register => $list ) {
+ echo elgg_view("messages/{$register}/list", array('object' => $list));
+ }
+
+ }
+
+?> \ No newline at end of file
diff --git a/views/default/pageshell.php b/views/default/pageshell.php
index a751143ee..eb10afc8e 100644
--- a/views/default/pageshell.php
+++ b/views/default/pageshell.php
@@ -13,7 +13,9 @@
*
* @uses $vars['title'] The page title
* @uses $vars['body'] The main content of the page
+ * @uses $vars['messages'] A 2d array of various message registers, passed from system_messages()
*/
+
?>
<html>
@@ -21,6 +23,11 @@
<title><?php echo $vars['title']; ?></title>
</head>
<body>
+ <?php
+
+ echo elgg_view('messages/list', array('object' => 'messages'));
+
+ ?>
<h1><?php echo $vars['title']; ?></h1>
<?php echo $vars['body']; ?>
</body>