sobjects/notification.py
branchtls-sprint
changeset 730 9062cdc140a9
parent 692 800592b8d39b
child 738 9b8cb1976992
equal deleted inserted replaced
729:3cbe805be515 730:9062cdc140a9
    18 from logilab.common.textutils import normalize_text
    18 from logilab.common.textutils import normalize_text
    19 
    19 
    20 from cubicweb import RegistryException
    20 from cubicweb import RegistryException
    21 from cubicweb.selectors import implements
    21 from cubicweb.selectors import implements
    22 from cubicweb.common.view import EntityView, Component
    22 from cubicweb.common.view import EntityView, Component
    23 from cubicweb.common.registerers import accepts_registerer
       
    24 from cubicweb.common.mail import format_mail
    23 from cubicweb.common.mail import format_mail
    25 
    24 
    26 from cubicweb.server.pool import PreCommitOperation
    25 from cubicweb.server.pool import PreCommitOperation
    27 from cubicweb.server.hookhelper import SendMailOp
    26 from cubicweb.server.hookhelper import SendMailOp
    28 from cubicweb.server.hooksmanager import Hook
    27 from cubicweb.server.hooksmanager import Hook
    34 
    33 
    35     by default user's with their email set are notified if any, else the default
    34     by default user's with their email set are notified if any, else the default
    36     email addresses specified in the configuration are used
    35     email addresses specified in the configuration are used
    37     """
    36     """
    38     id = 'recipients_finder'
    37     id = 'recipients_finder'
    39     __registerer__ = accepts_registerer
    38     __select__ = implements('Any')
    40     __selectors__ = (implements('Any'),)
       
    41     user_rql = ('Any X,E,A WHERE X is EUser, X in_state S, S name "activated",'
    39     user_rql = ('Any X,E,A WHERE X is EUser, X in_state S, S name "activated",'
    42                 'X primary_email E, E address A')
    40                 'X primary_email E, E address A')
    43     
    41     
    44     def recipients(self):
    42     def recipients(self):
    45         mode = self.config['default-recipients-mode']
    43         mode = self.config['default-recipients-mode']
   295                                   entity.eid, self.user_login())
   293                                   entity.eid, self.user_login())
   296 
   294 
   297 
   295 
   298 class CardAddedView(NormalizedTextView):
   296 class CardAddedView(NormalizedTextView):
   299     """get notified from new cards"""
   297     """get notified from new cards"""
   300     __selectors__ = (implements('Card'),)
   298     __select__ = implements('Card')
   301     content_attr = 'synopsis'
   299     content_attr = 'synopsis'
   302     
   300     
   303 
   301