How do I implement this, I am a basic user, Could you please explain the way to implement it? and does this patch also works with trac 0.12.7?
Regards, SF On Friday, May 12, 2017 at 5:12:42 AM UTC+2, RjOllos wrote: > > > > On Tuesday, May 9, 2017 at 1:51:58 PM UTC-7, Peter Suter wrote: >> >> On 09.05.2017 22:13, toto200891 wrote: >> >> Hi >> >> Could anybody suggest some ideas about group notification? what I mean is >> like if there are 3 groups A, B and C and every group have different members >> with different mail id's. And now if I have to notify a particular group, >> say for example Group A? How could I do it? >> >> For now I am entering email id of each member manually. Is there any other >> way to send an email to every member of that group by writing a single mail >> id? I have also tried creating a gmail group and tried sending it to that >> group. But as you know the mail get delivered to the group and not to the >> inbox of the members? >> >> So could you please suggest some ideas to achieve the following objective. >> >> Regards >> SF >> >> >> Hi >> >> You could test JoinableGroupSubscriber: >> https://trac.edgewall.org/ticket/11870#comment:3 >> >> https://trac.edgewall.org/browser/psuter.hg/tracopt/notification/joinable_groups.py?rev=10397 >> https://trac.edgewall.org/attachment/ticket/11870/watch-prefs.png >> >> Regards, >> Peter >> > > > I can also see how it would be desirable to CC a permission group, and > have all members of the group receive an email. Without accounting for > overlapping user and group name,s here is a simple patch to demonstrate > (against 1.2-stable): > > diff --git a/trac/ticket/notification.py b/trac/ticket/notification.py > index 92957d016..589fdbb41 100644 > --- a/trac/ticket/notification.py > +++ b/trac/ticket/notification.py > @@ -29,6 +29,7 @@ from trac.notification.compat import NotifyEmail > from trac.notification.mail import (RecipientMatcher, create_message_id, > get_from_author, set_header) > from trac.notification.model import Subscription > +from trac.perm import PermissionSystem > from trac.ticket.api import translation_deactivated > from trac.ticket.model import Ticket > from trac.util.datefmt import (datetime_now, format_date_or_datetime, > @@ -462,6 +463,13 @@ class CarbonCopySubscriber(Component): > if 'fields' in event.changes and 'cc' in event.changes['fields']: > cc_set.update(to_set(event.changes['fields']['cc']['old'])) > > + # Get members of permission groups > + groups = PermissionSystem(self.env).get_groups_dict() > + for cc in cc_set.copy(): > + if cc in groups: > + cc_set.remove(cc) > + cc_set.update(groups[cc]) > + > matcher = RecipientMatcher(self.env) > klass = self.__class__.__name__ > sids = set() > > > If we don't want this to be the default behavior, we could use similar > logic to create a CarbonCopyGroupSubscriber. In the case of a group that > has the same name as an sid, we'd have to decide which takes precedent, and > should log a warning. As far as I'm concerned, CarbonCopyGroupSubscriber > could just go in trac.ticket.notification rather than tracopt.notification, > since it wouldn't be enabled by default anyway. > > - Ryan > > > > > > > -- You received this message because you are subscribed to the Google Groups "Trac Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/trac-users. For more options, visit https://groups.google.com/d/optout.
