BuddyPress Notifications Settings Functionality
I’m currently working on a BuddyPress implementation for a client who has a rather interesting request: on the notifications settings page they want to change the radio buttons to checkboxes and combine all three settings pages into one page. At first glance this doesn’t seem particularly difficult – until you realize that checkboxes don’t offer you the ability to use a boolean value. A “checked” checkbox POSTs as either “yes” or its defined value… Which is fine. However, and “unchecked” checkbox doesn’t POST anything at all.
What this means is that the way the BuddyPress updates and saves its settings has to be modified. And there’s the rub: tracing back through all of the files and functions, I am unable to see exactly how it is that BuddyPress handles all of this. I have traced back to the bp-settings-actions.php file as well as bp-settings-loader.php, but I can’t figure for the life of me how it is that bp-settings-loader.php is involved in this process.
Additionally, I can’t see how the form itself that handles the settings (notifications.php) is passing the settings to the functions that do the updating to the database. The form ACTION is “echo bp_displayed_user_domain() . bp_get_settings_slug() . ‘/notifications';” which the best I can tell is self-referential, and the submit button’s VALUE is “”. Thing is, I can’t see what the form is passing the VALUE “Save Changes” to, especially if I am correct about the ACTION being self-referential.
Anyone have any insight into how these settings are saved or what would have to be done to change those radio buttons into checkboxes? Any help is MUCH appreciated!!!
You must be logged in to reply to this topic.