Changeset 3051

Show
Ignore:
Timestamp:
01/14/08 00:08:46 (11 months ago)
Author:
ixokai
Message:

A couple random fixes. This is not the changeset you are looking for.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • announcerplugin/0.11/announcerplugin/distributors/email_distributor.py

    r3047 r3051  
    3232 
    3333    formatters = ExtensionPoint(IAnnouncementFormatter) 
    34     resolvers = OrderedExtensionsOption('announcer', 'address_resolvers',  
     34    resolvers = OrderedExtensionsOption('announcer', 'email_address_resolvers',  
    3535        IAnnouncementAddressResolver, 'SessionEmailResolver',  
    3636    ) 
  • announcerplugin/0.11/announcerplugin/subscribers/watchers.py

    r3047 r3051  
    44from trac.web.api import IRequestFilter, IRequestHandler, Href 
    55from trac.web.chrome import ITemplateProvider, add_ctxtnav, add_stylesheet, \ 
    6                             add_script, add_warning 
     6                            add_script 
    77from trac.resource import get_resource_url 
    88from trac.ticket.api import ITicketChangeListener 
     
    1616        ITicketChangeListener, IWikiChangeListener) 
    1717 
    18     watchable_paths = ListOption('vote', 'paths', '/wiki*,/ticket*', 
     18    watchable_paths = ListOption('announcer', 'watchable_paths', '/wiki*,/ticket*', 
    1919        doc='List of URL paths to allow voting on. Globs are supported.') 
    2020 
     
    3535        req.perm.require('%s_VIEW' % realm.upper()) 
    3636         
    37         self.toggle_watched(req.session.sid, not req.authname == 'anonymous', resource
     37        self.toggle_watched(req.session.sid, not req.authname == 'anonymous', resource, req
    3838 
    3939        req.redirect(req.href(resource)) 
    4040 
    41     def toggle_watched(self, sid, authenticated, resource): 
     41    def toggle_watched(self, sid, authenticated, resource, req=None): 
    4242        realm, resource = resource.split('/', 1) 
    4343         
    4444        if self.is_watching(sid, authenticated, realm, resource): 
    4545            self.set_unwatch(sid, authenticated, realm, resource) 
     46            self._schedule_notice(req, 'You are now watching this resource for changes.') 
    4647        else: 
    4748            self.set_watch(sid, authenticated, realm, resource) 
    48              
     49            self._schedule_notice(req, 'You are no longer watching this resource for changes.') 
     50             
     51    def _schedule_notice(self, req, message): 
     52        req.session['_announcer_watch_message_'] = message 
     53                     
     54    def _add_notice(self, req): 
     55        if '_announcer_watch_message_' in req.session: 
     56 
     57            # This is temporary during 0.11b1 as add_notice was added later  
     58            # for the final 0.11 release. 
     59            try:  
     60                from trac.web.chrome import add_notice 
     61            except: 
     62                from trac.web.chrome import add_warning as add_notice 
     63             
     64            add_notice(req, req.session['_announcer_watch_message_']) 
     65            del req.session['_announcer_watch_message_'] 
     66                     
    4967    def is_watching(self, sid, authenticated, realm, resource): 
    5068        db = self.env.get_db_cnx() 
     
    115133             
    116134    # IRequestFilter methods 
    117     def pre_process_request(self, req, handler):         
     135    def pre_process_request(self, req, handler): 
     136        self._add_notice(req) 
     137         
    118138        if req.authname != "anonymous": 
    119139            for path in self.watchable_paths: