Changeset 2548

Show
Ignore:
Timestamp:
08/04/07 19:55:18 (1 year ago)
Author:
mgood
Message:

AccountManagerPlugin:

commit 0.10 patch for metanav password reset link (fixes #950)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • accountmanagerplugin/0.10/acct_mgr/web_ui.py

    r1709 r2548  
    135135    #INavigationContributor methods 
    136136    def get_active_navigation_item(self, req): 
    137         return 'account' 
     137        if req.path_info == '/account': 
     138            return 'account' 
     139        elif req.path_info == '/reset_password': 
     140            return 'reset_password' 
    138141 
    139142    def get_navigation_items(self, req): 
     
    143146            yield 'metanav', 'account', Markup('<a href="%s">My Account</a>', 
    144147                                               (req.href.account())) 
     148        elif self.reset_password_enabled and not LoginModule(self.env).enabled: 
     149            yield 'metanav', 'reset_password', Markup('<a href="%s">Forgot your password?</a>', 
     150                                                      (req.href.reset_password())) 
    145151 
    146152    # IRequestHandler methods 
     
    156162            self._do_reset_password(req) 
    157163            return 'reset_password.cs', None 
     164 
     165    def reset_password_enabled(self): 
     166        return (self.env.is_component_enabled(AccountModule) 
     167                and NotificationSystem(self.env).smtp_enabled 
     168                and self._write_check()) 
     169    reset_password_enabled = property(reset_password_enabled) 
    158170 
    159171    def _do_account(self, req): 
     
    351363        if req.path_info.startswith('/login') and req.authname == 'anonymous': 
    352364            req.hdf['referer'] = self._referer(req) 
    353             if self.env.is_component_enabled(AccountModule) \ 
    354                and NotificationSystem(self.env).smtp_enabled: 
     365            if AccountModule(self.env).reset_password_enabled: 
    355366                req.hdf['trac.href.reset_password'] = req.href.reset_password() 
    356367            if req.method == 'POST':