BMO/ComponentWatch: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
Line 5: Line 5:
== schema  ==
== schema  ==


*table '''bmo_watch''' (user_id, product_id, component_id)
*table '''component_watch''' (user_id, product_id, component_id)
** Comment (dkl): Should we call this component_watch instead and bmo since this would be a useful extension for others to install as well?


== preferences  ==
== preferences  ==


*add a hook to the end of '''account/prefs/email.html.tmpl''' or add a component/product watching tab using the existing hook
*add a hook to the end of '''account/prefs/email.html.tmpl''' or add a component/product watching tab using the existing hook
*add a select for selecting multiple products and/or components  
*add a select for selecting multiple products and/or components
*allow users to watch individual products, or entire components
** UI Idea (dkl): Replicate the same Product:__Any__ style multi-select fields from editflagtypes.cgi. Then users can watch all components for a product or just specific ones. In bmo_watch, a line with an user_id, product_id, but null component_id would mean watch all components for a product.
** UI Idea (dkl): Replicate the same Product:__Any__ style multi-select fields from editflagtypes.cgi. Then users can watch all components for a product or just specific ones. In bmo_watch, a line with an user_id, product_id, but null component_id would mean watch all components for a product.
** Question (dkl): Should we always make the user select at least one or more products and not allow watching of all components?
 
*either use a real select (as per the search ui), or an iframed list of checkboxes to mimic listbox+checkbox
 


== code  ==
== code  ==
Line 20: Line 20:
*hook '''bugmail_recipients'''  
*hook '''bugmail_recipients'''  
*simple join to bring in watchers, update '''recipients''' hash
*simple join to bring in watchers, update '''recipients''' hash
*Question (dkl): Should we also notify the user when their bug changes from a component they were watching to a new component they are not?


== issues ==
== issues ==


*bugmail needs to be extended to support a new relationship type (component/product watching)
*bugmail needs to be extended to support a new relationship type (component/product watching)
*need to send notification when a bug changes ''from'' a watched component/product
Confirmed users
1,201

edits

Navigation menu