diff options
29 files changed, 161 insertions, 181 deletions
diff --git a/engine/lib/admin.php b/engine/lib/admin.php index ae6429baf..c0a5c0995 100644 --- a/engine/lib/admin.php +++ b/engine/lib/admin.php @@ -314,7 +314,7 @@ function admin_init() {  	// automatic adding of widgets for admin  	elgg_register_event_handler('make_admin', 'user', 'elgg_add_admin_widgets'); -	elgg_register_page_handler('admin', 'admin_settings_page_handler'); +	elgg_register_page_handler('admin', 'admin_page_handler');  	elgg_register_page_handler('admin_plugin_screenshot', 'admin_plugin_screenshot_page_handler');  	elgg_register_page_handler('admin_plugin_text_file', 'admin_markdown_page_handler');  } @@ -430,7 +430,7 @@ function admin_pagesetup() {   * @return void   * @access private   */ -function admin_settings_page_handler($page) { +function admin_page_handler($page) {  	admin_gatekeeper();  	elgg_admin_add_plugin_settings_menu(); @@ -485,7 +485,7 @@ function admin_settings_page_handler($page) {   * admin_plugin_screenshot/<plugin_id>/<size>/<ss_name>.<ext>   *   * @param array $pages The pages array - * @return true + * @return void   * @access private   */  function admin_plugin_screenshot_page_handler($pages) { @@ -524,8 +524,6 @@ function admin_plugin_screenshot_page_handler($pages) {  			echo file_get_contents($file);  			break;  	} - -	return true;  }  /** @@ -541,6 +539,7 @@ function admin_plugin_screenshot_page_handler($pages) {   *	* LICENSE.txt   *   * @param type $page + * @return void   * @access private   */  function admin_markdown_page_handler($pages) { diff --git a/engine/lib/deprecated-1.8.php b/engine/lib/deprecated-1.8.php index beba7d2b7..e1866498b 100644 --- a/engine/lib/deprecated-1.8.php +++ b/engine/lib/deprecated-1.8.php @@ -4735,3 +4735,40 @@ function remove_from_river_by_id($id) {  	return elgg_delete_river(array('id' => $id));  } + +/** + * A default page handler + * Tries to locate a suitable file to include. Only works for core pages, not plugins. + * + * @param array  $page    The page URL elements + * @param string $handler The base handler + * + * @return true|false Depending on success + * @deprecated 1.8 + */ +function default_page_handler($page, $handler) { +	global $CONFIG; + +	elgg_deprecated_notice("default_page_handler is deprecated", "1.8"); + +	$page = implode('/', $page); + +	// protect against including arbitary files +	$page = str_replace("..", "", $page); + +	$callpath = $CONFIG->path . $handler . "/" . $page; +	if (is_dir($callpath)) { +		$callpath = sanitise_filepath($callpath); +		$callpath .= "index.php"; +		if (file_exists($callpath)) { +			if (include($callpath)) { +				return TRUE; +			} +		} +	} else if (file_exists($callpath)) { +		include($callpath); +		return TRUE; +	} + +	return FALSE; +} diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php index a6f5fbc6f..03774deb4 100644 --- a/engine/lib/elgglib.php +++ b/engine/lib/elgglib.php @@ -1745,7 +1745,7 @@ function _elgg_shutdown_hook() {   * @access private   */  function elgg_js_page_handler($page) { -	return elgg_cacheable_view_page_handler($page, 'js'); +	elgg_cacheable_view_page_handler($page, 'js');  }  /** @@ -1777,8 +1777,6 @@ function elgg_ajax_page_handler($page) {  		echo elgg_view($view, $vars);  	} -	 -	return true;  }  /** @@ -1798,7 +1796,7 @@ function elgg_css_page_handler($page) {  		$page[0] = 'elgg';  	} -	return elgg_cacheable_view_page_handler($page, 'css'); +	elgg_cacheable_view_page_handler($page, 'css');  }  /** @@ -1809,7 +1807,7 @@ function elgg_css_page_handler($page) {   * @param array  $page The page array   * @param string $type The type: js or css   * - * @return mixed + * @return void   * @access private   */  function elgg_cacheable_view_page_handler($page, $type) { @@ -1824,7 +1822,7 @@ function elgg_cacheable_view_page_handler($page, $type) {  			break;  		default: -			return false; +			return;  			break;  	} @@ -1851,8 +1849,6 @@ function elgg_cacheable_view_page_handler($page, $type) {  		echo $return;  	} - -	return true;  }  /** @@ -1886,6 +1882,8 @@ function elgg_sql_reverse_order_by_clause($order_by) {   *   * Used as a callback for ElggBatch.   * + * @todo why aren't these static methods on ElggBatch? + *   * @param object $object The object to enable   * @return bool   * @access private diff --git a/engine/lib/pagehandler.php b/engine/lib/pagehandler.php index 0d5e5f89b..91e568c1d 100644 --- a/engine/lib/pagehandler.php +++ b/engine/lib/pagehandler.php @@ -9,12 +9,10 @@  /**   * Turns the current page over to the page handler, allowing registered handlers to take over.   * - * If a page handler returns FALSE, the request is handed over to the default_page_handler. - *   * @param string $handler The name of the handler type (eg 'blog')   * @param array  $page    The parameters to the page, as an array (exploded by '/' slashes)   * - * @return true|false Depending on whether a registered page handler was found + * @return bool   * @access private   */  function page_handler($handler, $page) { @@ -42,26 +40,12 @@ function page_handler($handler, $page) {  	$handler = $params['handler'];  	$page = $params['segments']; -	if (!isset($CONFIG->pagehandler) || empty($handler)) { -		$result = false; -	} else if (isset($CONFIG->pagehandler[$handler]) && is_callable($CONFIG->pagehandler[$handler])) { +	if (isset($CONFIG->pagehandler) && !empty($handler) && isset($CONFIG->pagehandler[$handler])) {  		$function = $CONFIG->pagehandler[$handler]; -		$result = call_user_func($function, $page, $handler); -		if ($result !== false) { -			$result = true; -		} -	} else { -		$result = false; +		call_user_func($function, $page, $handler);  	} -	if (!$result) { -		$result = default_page_handler($page, $handler); -	} -	if ($result !== false) { -		$result = true; -	} - -	return $result; +	return headers_sent();  }  /** @@ -74,14 +58,15 @@ function page_handler($handler, $page) {   * For example, the URL http://yoururl/blog/username/friends/ would result in the call:   * blog_page_handler(array('username','friends'), blog);   * - * Page handler functions should return true or the default page handler will be called. - *   * A request to register a page handler with the same identifier as previously registered   * handler will replace the previous one.   *   * The context is set to the page handler identifier before the registered   * page handler function is called. For the above example, the context is set to 'blog'.   * + * Requests not handled are forwarded to the front page with a reason of 404. + * Plugins can register for the 'forward', '404' plugin hook. @see forward() + *   * @param string $handler  The page type to handle   * @param string $function Your function name   * @@ -119,38 +104,3 @@ function elgg_unregister_page_handler($handler) {  	unset($CONFIG->pagehandler[$handler]);  } - -/** - * A default page handler - * Tries to locate a suitable file to include. Only works for core pages, not plugins. - * - * @param array  $page    The page URL elements - * @param string $handler The base handler - * - * @return true|false Depending on success - * @access private - */ -function default_page_handler($page, $handler) { -	global $CONFIG; - -	$page = implode('/', $page); - -	// protect against including arbitary files -	$page = str_replace("..", "", $page); - -	$callpath = $CONFIG->path . $handler . "/" . $page; -	if (is_dir($callpath)) { -		$callpath = sanitise_filepath($callpath); -		$callpath .= "index.php"; -		if (file_exists($callpath)) { -			if (include($callpath)) { -				return TRUE; -			} -		} -	} else if (file_exists($callpath)) { -		include($callpath); -		return TRUE; -	} - -	return FALSE; -} diff --git a/engine/lib/river.php b/engine/lib/river.php index f430eb224..b2fead824 100644 --- a/engine/lib/river.php +++ b/engine/lib/river.php @@ -586,6 +586,7 @@ function update_river_access_by_object($object_guid, $access_id) {   * Page handler for activiy   *   * @param array $page + * @return void   * @access private   */  function elgg_river_page_handler($page) { diff --git a/engine/lib/tags.php b/engine/lib/tags.php index 6275d653c..b2c9a672f 100644 --- a/engine/lib/tags.php +++ b/engine/lib/tags.php @@ -325,21 +325,18 @@ function elgg_get_registered_tag_metadata_names() {   * @access private   */  function elgg_tagcloud_page_handler($page) { -	switch ($page[0]) { -		default: -			$title = elgg_view_title(elgg_echo('tags:site_cloud')); -			$options = array( -				'threshold' => 0, -				'limit' => 100, -				'tag_name' => 'tags', -			); -			$tags = elgg_view_tagcloud($options); -			$content = $title . $tags; -			$body = elgg_view_layout('one_sidebar', array('content' => $content)); - -			echo elgg_view_page(elgg_echo('tags:site_cloud'), $body); -			break; -	} + +	$title = elgg_view_title(elgg_echo('tags:site_cloud')); +	$options = array( +		'threshold' => 0, +		'limit' => 100, +		'tag_name' => 'tags', +	); +	$tags = elgg_view_tagcloud($options); +	$content = $title . $tags; +	$body = elgg_view_layout('one_sidebar', array('content' => $content)); + +	echo elgg_view_page(elgg_echo('tags:site_cloud'), $body);  }  /** diff --git a/engine/lib/user_settings.php b/engine/lib/user_settings.php index bb5d8d6c4..12084662b 100644 --- a/engine/lib/user_settings.php +++ b/engine/lib/user_settings.php @@ -304,7 +304,7 @@ function usersettings_page_handler($page) {  		$page[0] = 'user';  	} -	if ($page[1]) { +	if (isset($page[1])) {  		$user = get_user_by_username($page[1]);  		elgg_set_page_owner_guid($user->guid);  	} else { @@ -324,12 +324,13 @@ function usersettings_page_handler($page) {  			$path = $CONFIG->path . "pages/settings/tools.php";  			break;  		case 'user': -		default:  			$path = $CONFIG->path . "pages/settings/account.php";  			break;  	} -	require($path); +	if (isset($path)) { +		require $path; +	}  }  /** diff --git a/engine/lib/users.php b/engine/lib/users.php index 843b897e9..3001a2ac6 100644 --- a/engine/lib/users.php +++ b/engine/lib/users.php @@ -1072,7 +1072,7 @@ function friends_page_handler($page_elements) {  function friends_of_page_handler($page_elements) {  	elgg_set_context('friends');  	if (isset($page_elements[0]) && $user = get_user_by_username($page_elements[0])) { -		set_page_owner($user->getGUID()); +		elgg_set_page_owner_guid($user->getGUID());  	}  	if (elgg_get_logged_in_user_guid() == elgg_get_page_owner_guid()) {  		collections_submenu_items(); @@ -1404,6 +1404,7 @@ function elgg_profile_fields_setup() {   * /avatar/view/<username>/<size>/<icontime>   *   * @param array $page + * @return void   * @access private   */  function elgg_avatar_page_handler($page) { @@ -1426,6 +1427,7 @@ function elgg_avatar_page_handler($page) {   * Profile page handler   *   * @param array $page + * @return void   * @access private   */  function elgg_profile_page_handler($page) { diff --git a/mod/blog/start.php b/mod/blog/start.php index 81837c48e..b2da00bc7 100644 --- a/mod/blog/start.php +++ b/mod/blog/start.php @@ -93,7 +93,7 @@ function blog_init() {   * @todo no archives for all blogs or friends   *   * @param array $page - * @return NULL + * @return void   */  function blog_page_handler($page) { @@ -139,17 +139,17 @@ function blog_page_handler($page) {  			$params = blog_get_page_content_list($page[1]);  			break;  		case 'all': -		default: -			$title = elgg_echo('blog:title:all_blogs');  			$params = blog_get_page_content_list();  			break;  	} -	$params['sidebar'] .= elgg_view('blog/sidebar', array('page' => $page_type)); +	if (isset($params)) { +		$params['sidebar'] .= elgg_view('blog/sidebar', array('page' => $page_type)); -	$body = elgg_view_layout('content', $params); +		$body = elgg_view_layout('content', $params); -	echo elgg_view_page($params['title'], $body); +		echo elgg_view_page($params['title'], $body); +	}  }  /** diff --git a/mod/bookmarks/start.php b/mod/bookmarks/start.php index 2a7b44e97..6d9dc9b3d 100644 --- a/mod/bookmarks/start.php +++ b/mod/bookmarks/start.php @@ -83,6 +83,7 @@ function bookmarks_init() {   * Title is ignored   *   * @param array $page + * @return void   */  function bookmarks_page_handler($page) {  	elgg_load_library('elgg:bookmarks'); @@ -145,14 +146,9 @@ function bookmarks_page_handler($page) {  			set_input('container_guid', $page[1]);  			include "$pages/bookmarklet.php";  			break; - -		default: -			return false;  	}  	elgg_pop_context(); - -	return true;  }  /** diff --git a/mod/categories/start.php b/mod/categories/start.php index b6bc4a55c..3cec516f1 100644 --- a/mod/categories/start.php +++ b/mod/categories/start.php @@ -27,12 +27,11 @@ function categories_init() {  /** - * Page handler - * + * Category page handler + * @return void   */  function categories_page_handler() {  	include(dirname(__FILE__) . "/pages/categories/listing.php"); -	return TRUE;  }  /** diff --git a/mod/dashboard/start.php b/mod/dashboard/start.php index 5635ead57..0197ee64f 100644 --- a/mod/dashboard/start.php +++ b/mod/dashboard/start.php @@ -29,6 +29,10 @@ function dashboard_init() {  	elgg_register_plugin_hook_handler('get_list', 'default_widgets', 'dashboard_default_widgets');  } +/** + * Dashboard page handler + * @return void + */  function dashboard_page_handler() {  	// Ensure that only logged-in users can see this page  	gatekeeper(); diff --git a/mod/developers/start.php b/mod/developers/start.php index ab9a174a4..c89e3d36f 100644 --- a/mod/developers/start.php +++ b/mod/developers/start.php @@ -157,6 +157,7 @@ function developers_log_events($name, $type) {   * Serve the theme preview pages   *   * @param array $page + * @return void   */  function developers_theme_preview_controller($page) {  	if (!isset($page[0])) { diff --git a/mod/diagnostics/start.php b/mod/diagnostics/start.php index 735e15042..0bcc08bd9 100644 --- a/mod/diagnostics/start.php +++ b/mod/diagnostics/start.php @@ -12,9 +12,6 @@ elgg_register_event_handler('init', 'system', 'diagnostics_init');   */  function diagnostics_init() { -	// Register a page handler, so we can have nice URLs -	elgg_register_page_handler('diagnostics','diagnostics_page_handler'); -  	// Add admin menu item  	elgg_register_admin_menu_item('develop', 'diagnostics', 'develop_utilities'); diff --git a/mod/externalpages/start.php b/mod/externalpages/start.php index 3169503be..271051ba9 100644 --- a/mod/externalpages/start.php +++ b/mod/externalpages/start.php @@ -53,6 +53,7 @@ function expages_setup_footer_menu() {   *   * @param array  $page    URL segements   * @param string $handler Handler identifier + * @return void   */  function expages_page_handler($page, $handler) {  	if ($handler == 'expages') { diff --git a/mod/file/start.php b/mod/file/start.php index 9007fc9ba..bb20fc7ba 100644 --- a/mod/file/start.php +++ b/mod/file/start.php @@ -100,7 +100,7 @@ function file_init() {   * Title is ignored   *   * @param array $page - * @return NULL + * @return void   */  function file_page_handler($page) { @@ -136,7 +136,6 @@ function file_page_handler($page) {  			include "$file_dir/owner.php";  			break;  		case 'all': -		default:  			include "$file_dir/world.php";  			break;  	} @@ -145,10 +144,10 @@ function file_page_handler($page) {  /**   * Creates the notification message body   * - * @param unknown_type $hook - * @param unknown_type $entity_type - * @param unknown_type $returnvalue - * @param unknown_type $params + * @param string $hook + * @param string $entity_type + * @param string $returnvalue + * @param array  $params   */  function file_notify_message($hook, $entity_type, $returnvalue, $params) {  	$entity = $params['entity']; diff --git a/mod/groups/start.php b/mod/groups/start.php index 1b5b03ce7..710ccc0b2 100644 --- a/mod/groups/start.php +++ b/mod/groups/start.php @@ -192,6 +192,7 @@ function groups_setup_sidebar_menus() {   *  Group members:        groups/members/<guid>   *   * @param array $page Array of url segments for routing + * @return void   */  function groups_page_handler($page) { @@ -244,7 +245,8 @@ function groups_page_handler($page) {  /**   * Handle group icons.   * - * @param unknown_type $page + * @param array $page + * @return void   */  function groups_icon_handler($page) { @@ -750,6 +752,7 @@ function discussion_init() {   *  Edit discussion topic: discussion/edit/<guid>   *   * @param array $page Array of url segments for routing + * @return void   */  function discussion_page_handler($page) { diff --git a/mod/invitefriends/start.php b/mod/invitefriends/start.php index f39d25f4b..61cfed96c 100644 --- a/mod/invitefriends/start.php +++ b/mod/invitefriends/start.php @@ -27,6 +27,7 @@ function invitefriends_init() {   * Page handler function   *    * @param array $page Page URL segments + * @return void   */  function invitefriends_page_handler($page) {  	gatekeeper(); diff --git a/mod/members/start.php b/mod/members/start.php index 2c1793c17..1d734da17 100644 --- a/mod/members/start.php +++ b/mod/members/start.php @@ -19,6 +19,7 @@ function members_init() {   * Members page handler   *   * @param array $page url segments + * @return void   */  function members_page_handler($page) {  	$base = elgg_get_plugins_path() . 'members/pages/members'; diff --git a/mod/messageboard/start.php b/mod/messageboard/start.php index 0b0155069..9db16cf3b 100644 --- a/mod/messageboard/start.php +++ b/mod/messageboard/start.php @@ -42,7 +42,7 @@ function messageboard_init() {   *  Group messageboard:                messageboard/group/<guid>/all (not implemented)   *   * @param array $page Array of page elements - * @return bool + * @return void   */  function messageboard_page_handler($page) {  	$new_section_one = array('owner', 'add', 'group'); @@ -85,8 +85,6 @@ function messageboard_page_handler($page) {  			include "$pages/owner.php";  			break;  	} - -	return true;  }  /** diff --git a/mod/messages/start.php b/mod/messages/start.php index 4a3b0b250..631a5f731 100644 --- a/mod/messages/start.php +++ b/mod/messages/start.php @@ -70,7 +70,7 @@ function messages_init() {   * Messages page handler   *   * @param array $page Array of URL components for routing - * @return bool + * @return void   */  function messages_page_handler($page) { @@ -112,11 +112,7 @@ function messages_page_handler($page) {  		case 'add':  			include("$base_dir/send.php");  			break; -		default: -			return false;  	} - -	return true;  }  /** diff --git a/mod/notifications/start.php b/mod/notifications/start.php index c6701cc3e..7ec82cfc9 100644 --- a/mod/notifications/start.php +++ b/mod/notifications/start.php @@ -36,6 +36,7 @@ function notifications_plugin_init() {   * Route page requests   *   * @param array $page Array of url parameters + * @return void   */  function notifications_page_handler($page) { @@ -51,12 +52,9 @@ function notifications_page_handler($page) {  			require "$base/groups.php";  			break;  		case 'personal': -		default:  			require "$base/index.php";  			break;  	} - -	return TRUE;  }  /** diff --git a/mod/pages/start.php b/mod/pages/start.php index 744306649..fd1d7df47 100644 --- a/mod/pages/start.php +++ b/mod/pages/start.php @@ -100,6 +100,7 @@ function pages_init() {   * Title is ignored   *   * @param array $page + * @return void   */  function pages_page_handler($page) { @@ -149,12 +150,9 @@ function pages_page_handler($page) {  			include "$base_dir/revision.php";  			break;  		case 'all': -		default:  			include "$base_dir/world.php";  			break;  	} - -	return;  }  /** diff --git a/mod/profile/start.php b/mod/profile/start.php index 0f13ad844..1c82d55f5 100644 --- a/mod/profile/start.php +++ b/mod/profile/start.php @@ -48,6 +48,7 @@ function profile_init() {   * Profile page handler   *   * @param array $page Array of URL segments passed by the page handling mechanism + * @return void   */  function profile_page_handler($page) { diff --git a/mod/reportedcontent/start.php b/mod/reportedcontent/start.php index 66a1248d9..0638feb52 100644 --- a/mod/reportedcontent/start.php +++ b/mod/reportedcontent/start.php @@ -60,6 +60,7 @@ function reportedcontent_init() {   * Serves the add report page   *   * @param array $page Array of page routing elements + * @return void   */  function reportedcontent_page_handler($page) {  	// only logged in users can report things diff --git a/mod/search/start.php b/mod/search/start.php index 9ab14f42f..a88c6ec03 100644 --- a/mod/search/start.php +++ b/mod/search/start.php @@ -14,7 +14,7 @@ function search_init() {  	require_once 'search_hooks.php';  	// page handler for search actions and results -	elgg_register_page_handler('search','search_page_handler'); +	elgg_register_page_handler('search', 'search_page_handler');  	// register some default search hooks  	elgg_register_plugin_hook_handler('search', 'object', 'search_objects_hook'); @@ -55,7 +55,8 @@ function search_init() {  /**   * Page handler for search   * - * @param array $page Page elements from pain page handler + * @param array $page Page elements from core page handler + * @return void   */  function search_page_handler($page) { diff --git a/mod/thewire/start.php b/mod/thewire/start.php index d5e995359..f46d9ec75 100644 --- a/mod/thewire/start.php +++ b/mod/thewire/start.php @@ -84,58 +84,57 @@ function thewire_init() {   * thewire/tag/<tag>            View wire posts tagged with <tag>   *   * @param array $page From the page_handler function - * @return true|false Depending on success + * @return void   */  function thewire_page_handler($page) {  	$base_dir = elgg_get_plugins_path() . 'thewire/pages/thewire'; -	// if just /thewire go to global view in the else statement -	if (isset($page[0]) && $page[0]) { - -		switch ($page[0]) { -			case "all": -				include "$base_dir/everyone.php"; -				break; - -			case "friends": -				include "$base_dir/friends.php"; -				break; - -			case "owner": -				include "$base_dir/owner.php"; -				break; - -			case "thread": -				if (isset($page[1])) { -					set_input('thread_id', $page[1]); -				} -				include "$base_dir/thread.php"; -				break; -			case "reply": -				if (isset($page[1])) { -					set_input('guid', $page[1]); -				} -				include "$base_dir/reply.php"; -				break; -			case "tag": -				if (isset($page[1])) { -					set_input('tag', $page[1]); -				} -				include "$base_dir/tag.php"; -				break; -			case "previous": -				if (isset($page[1])) { -					set_input('guid', $page[1]); -				} -				include "$base_dir/previous.php"; -				break; -		} -	} else { -		include "$base_dir/everyone.php"; +	if (!isset($page[0])) { +		$page = array('all');  	} -	return true; +	switch ($page[0]) { +		case "all": +			include "$base_dir/everyone.php"; +			break; + +		case "friends": +			include "$base_dir/friends.php"; +			break; + +		case "owner": +			include "$base_dir/owner.php"; +			break; + +		case "thread": +			if (isset($page[1])) { +				set_input('thread_id', $page[1]); +			} +			include "$base_dir/thread.php"; +			break; + +		case "reply": +			if (isset($page[1])) { +				set_input('guid', $page[1]); +			} +			include "$base_dir/reply.php"; +			break; + +		case "tag": +			if (isset($page[1])) { +				set_input('tag', $page[1]); +			} +			include "$base_dir/tag.php"; +			break; + +		case "previous": +			if (isset($page[1])) { +				set_input('guid', $page[1]); +			} +			include "$base_dir/previous.php"; +			break; +	}  }  /** diff --git a/mod/twitter_api/start.php b/mod/twitter_api/start.php index b17643c8c..fd2ff6493 100644 --- a/mod/twitter_api/start.php +++ b/mod/twitter_api/start.php @@ -45,13 +45,14 @@ function twitter_api_init() {   * Handles old pg/twitterservice/ handler   *   * @param array $page + * @return void   */  function twitter_api_pagehandler_deprecated($page) {  	$url = elgg_get_site_url() . 'pg/twitter_api/authorize';  	$msg = elgg_echo('twitter_api:deprecated_callback_url', array($url));  	register_error($msg); -	return twitter_api_pagehandler($page); +	twitter_api_pagehandler($page);  } @@ -59,10 +60,11 @@ function twitter_api_pagehandler_deprecated($page) {   * Serves pages for twitter.   *   * @param array $page + * @return void   */  function twitter_api_pagehandler($page) {  	if (!isset($page[0])) { -		forward(); +		return;  	}  	switch ($page[0]) { @@ -90,9 +92,6 @@ function twitter_api_pagehandler($page) {  			$pages = dirname(__FILE__) . '/pages/twitter_api';  			include "$pages/interstitial.php";  			break; -		default: -			forward(); -			break;  	}  } diff --git a/mod/uservalidationbyemail/start.php b/mod/uservalidationbyemail/start.php index d3d0c3488..a674511cf 100644 --- a/mod/uservalidationbyemail/start.php +++ b/mod/uservalidationbyemail/start.php @@ -149,6 +149,7 @@ function uservalidationbyemail_check_auth_attempt($credentials) {   * Checks sent passed validation code and user guids and validates the user.   *   * @param array $page + * @return void   */  function uservalidationbyemail_page_handler($page) { @@ -162,7 +163,7 @@ function uservalidationbyemail_page_handler($page) {  		$user = get_entity($user_guid); -		if (($code) && ($user)) { +		if ($code && $user) {  			if (uservalidationbyemail_validate_email($user_guid, $code)) {  				elgg_push_context('uservalidationbyemail_validate_user'); @@ -184,7 +185,8 @@ function uservalidationbyemail_page_handler($page) {  		register_error(elgg_echo('email:confirm:fail'));  	} -	forward(); +	// forward to front page +	forward('');  }  /**  | 
