From 69786dcc8ad1c193f3b4fff36807e6dc92da1d8d Mon Sep 17 00:00:00 2001 From: Cash Costello Date: Fri, 10 Feb 2012 07:24:11 -0500 Subject: new layout and ajax loading for walled garden --- engine/lib/elgglib.php | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'engine/lib/elgglib.php') diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php index 11bdc7285..5c444c2f5 100644 --- a/engine/lib/elgglib.php +++ b/engine/lib/elgglib.php @@ -2021,14 +2021,36 @@ function elgg_walled_garden_index() { elgg_load_css('elgg.walled_garden'); elgg_load_js('elgg.walled_garden'); - $body = elgg_view('core/walled_garden/body'); + $content = elgg_view('core/walled_garden/login'); + $params = array( + 'content' => $content, + 'class' => 'elgg-walledgarden-double', + ); + $body = elgg_view_layout('walled_garden', $params); echo elgg_view_page('', $body, 'walled_garden'); // return true to prevent other plugins from adding a front page return true; } +/** + * Serve walled garden sections + * + * @param array $page Array of URL segments + * @return string + * @access private + */ +function _elgg_walled_garden_ajax_handler($page) { + $view = $page[0]; + $params = array( + 'content' => elgg_view("core/walled_garden/$view"), + 'class' => 'elgg-walledgarden-single hidden', + ); + echo elgg_view_layout('walled_garden', $params); + return true; +} + /** * Checks the status of the Walled Garden and forwards to a login page * if required. @@ -2049,6 +2071,8 @@ function elgg_walled_garden() { elgg_register_css('elgg.walled_garden', '/css/walled_garden.css'); elgg_register_js('elgg.walled_garden', '/js/walled_garden.js'); + elgg_register_page_handler('walled_garden', '_elgg_walled_garden_ajax_handler'); + // check for external page view if (isset($CONFIG->site) && $CONFIG->site instanceof ElggSite) { $CONFIG->site->checkWalledGarden(); -- cgit v1.2.3