diff options
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/lib/widgets.php | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/engine/lib/widgets.php b/engine/lib/widgets.php index 46f34391a..d73dd6330 100644 --- a/engine/lib/widgets.php +++ b/engine/lib/widgets.php @@ -316,7 +316,12 @@ function elgg_default_widgets_init() {  		// override permissions for creating widget on logged out / just created entities  		elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'elgg_default_widgets_permissions_override'); +		// only register the callback once per event +		$events = array();  		foreach ($default_widgets as $info) { +			$events[$info['event'] . ',' . $info['entity_type']] = $info; +		} +		foreach ($events as $info) {  			elgg_register_event_handler($info['event'], $info['entity_type'], 'elgg_create_default_widgets');  		}  	}  | 
