[buddypress-trac] [BuddyPress Trac] #6712: Screen notifications settings page

buddypress-trac noreply at wordpress.org
Thu Feb 4 00:17:26 UTC 2016

#6712: Screen notifications settings page
 Reporter:  r-a-y                      |       Owner:
     Type:  enhancement                |      Status:  new
 Priority:  normal                     |   Milestone:  2.5
Component:  Component - Notifications  |     Version:  1.9
 Severity:  normal                     |  Resolution:
 Keywords:  has-patch                  |
Changes (by r-a-y):

 * keywords:   => has-patch


 `01.patch` implements the "Settings > Notifications" page with the slug

 For devs, to register component notification actions, you need to add a
 `'notification_action_callback'` key similar to the existing
 `'notification_callback'` key for formatting notifications.  During the
 callback, you can use `bp_notifications_set_action()` to register each
 notification action.

 When a component does not have any notification actions registered (this
 can be expected for plugins), we fallback to a generic `'Receive screen
 notifications if I select "Yes" for this option'` row.

 This option also serves the purpose of disabling all notifications for a


 This option only shows up if more than one notification action is
 registered for a component.

 I could some use UX feedback for the `'I select "Yes" for this option'`
 text, as I'm not quite satisfied with it.  Some other labels I was mulling
 around include `'Suspend screen notifications'` and `'If I enable them'`.


 Some other dev notes:

 - Where possible, I've moved all existing email code from
 `bp-X-notifications.php` into `bp-X-functions.php` as emails are
 technically not a part of the Notifications component.
 - `bp-X-notifications.php` is now loaded only if the Notifications
 component is active.
 - For components to set the settings component title, I've created a
 generic, helper function called `bp_notifications_set_prop()` so devs can
 inject any custom properties needed.  View the patch to see how I'm using
 - For devs to pull up all notification actions, use the
 `bp_notifications_init_registered_actions()` function.  This ensures that
 we only fetch notification actions only when needed.

 Let me know if you have any questions.

Ticket URL: <https://buddypress.trac.wordpress.org/ticket/6712#comment:5>
BuddyPress Trac <http://buddypress.org/>
BuddyPress Trac

More information about the buddypress-trac mailing list