]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Fixes #4254 not registering the default widgets callback more than once per event
authorcash <cash.costello@gmail.com>
Sat, 31 Dec 2011 20:02:38 +0000 (15:02 -0500)
committercash <cash.costello@gmail.com>
Sat, 31 Dec 2011 20:02:38 +0000 (15:02 -0500)
engine/lib/widgets.php

index 46f34391a362cee0221411fa110fafe4858b43d7..d73dd6330c63539ead0732c53cf38aca50334cdc 100644 (file)
@@ -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');
                }
        }