Changeset 3736

Show
Ignore:
Timestamp:
05/29/08 05:09:20 (6 months ago)
Author:
clp
Message:

Ticket #3080

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • accountldapplugin/0.10/accountldap/accountldap.py

    r3514 r3736  
    6060        old = req.args.get('oldpassword') 
    6161        if p1 != p2: 
    62             req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Las contraseñas suministradas no coinciden.',  u' Por favor, revise las contraseñas.')) 
     62            req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Password mismatch',  u' please use exactly the same password')) 
    6363            return template, None 
    6464        if old == p1: 
    65             req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Las contraseña antigua y la nueva contraseña es la misma.',  u' Por favor, realice un cambio en la nueva contraseña.')) 
     65            req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Password is not changed',  u' please change your password')) 
    6666            return template, None 
    67         dn = 'uid=%s,%s,%s' % (req.authname, self.userdn, self.basedn) 
     67        #dn = 'uid=%s,%s,%s' % (req.authname, self.userdn, self.basedn) 
    6868        try: 
    69             self.log.warn('Ldap chnage password dn. %s' % dn) 
    70             self.ldap.passwd_s(dn, old, p1) 
     69            base = self.userdn + ',' + self.basedn 
     70            ld_results = self.ldap.search_s(base, ldap.SCOPE_SUBTREE, 'uid=%s' % req.authname, ['dn']) 
     71            # FIXME: Use only the first found DN. We should only have single DN here 
     72            if ld_results : 
     73                dn = ld_results[0][0] 
     74                self.ldap.passwd_s(dn, old, p1) 
     75            else : 
     76                raise LDAPError('Failed to find user in LDAP') 
    7177        except ldap.LDAPError, e: 
    72             req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Se produjo un error durante el cambio de contraseña.',  u' Por favor, comprueba que la contraseña antigua es la correcta.')) 
     78            req.hdf['accountldap.message'] = Markup('<center style="color: chocolate">%s<b>%s</b></center>' % (u'Failed to change your password',  u' An error occurred during LDAP pasword operation. Please consult your log file.')) 
    7379            self.log.warn('Ldap change password. %s' % e) 
    7480            return template, None 
    75         req.hdf['accountldap.message'] = Markup('<center style="color: green"><b>%s</b></center>' %  u'La contraseña se ha cambiado correctamente.')              
     81        req.hdf['accountldap.message'] = Markup('<center style="color: green"><b>%s</b></center>' %  u'Password successfully changed')              
    7682        return template, None 
    7783    # 
     
    97103                 
    98104    def get_navigation_items(self, req): 
    99         if not req.authname or not req.session.has_key('email'): 
     105#        if not req.authname or not req.session.has_key('email') : 
     106#            return 
     107#        uid = req.remote_user.lower() 
     108#       XXX: it seems that password changing should be OK even without email 
     109        if not req.authname : 
    100110            return 
    101         uid = req.remote_user.lower() 
    102         yield 'metanav', self.MODULE_NAME,  Markup('<a href="%s">%s</a>' % (self.env.href.accountldap(), u'Contraseñas'))  
     111        if req.authname == 'anonymous' : 
     112            return 
     113        yield 'metanav', self.MODULE_NAME,  Markup('<a href="%s">%s</a>' % (self.env.href.accountldap(), u'Password')) 
    103114    # 
    104115    # ----------------------------------------------------------------------------------------- helper methods 
  • accountldapplugin/0.10/accountldap/templates/accountldap.cs

    r3514 r3736  
    66<div id="content" class="settings"> 
    77 
    8  <h1>Contraseñas de LDAP</h1> 
     8 <h1>Change your LDAP password</h1> 
    99 
    10   <p> 
    11  Esta página te permite cambiar la contraseña del LDAP.  
    12  Tener en cuenta que este cambio se realizará de forma <b>centralizada</b> y afectará a todos los  
    13  sistemas que utilizando el mismo LDAP, como por ejemplo el <b>Subversion</b>. 
    14  </p> 
     10  <p>This page let you change your LDAP password. If you happen to use LDAP as centrlize authentication for other system such as Subversion, this will also change every passwords associate with LDAP server</p> 
    1511  
    1612 <?cs if:accountldap.message != None ?> 
     
    2521 <legend>Cambio de contraseña</legend> 
    2622  <div> 
    27    <label for="oldpassword" style="float:left;text-align:right;margin-top:5px;width:15em;">Contraseña antigua:</label> 
     23   <label for="oldpassword" style="float:left;text-align:right;margin-top:5px;width:15em;">Old password: </label> 
    2824   <input type="password" id="oldpassword" name="oldpassword" class="textwidget" size="30" /> 
    2925  </div> 
     
    3127  &nbsp; 
    3228  <div> 
    33    <label for="password1" style="float:left;text-align:right;margin-top:5px;width:15em;">Nueva contraseña:</label> 
     29   <label for="password1" style="float:left;text-align:right;margin-top:5px;width:15em;">New password: </label> 
    3430   <input type="password" id="password1" name="password1" class="textwidget" size="30" /> 
    3531  </div> 
    3632  <div> 
    37    <label for="password2" style="float:left;text-align:right;margin-top:5px;width:15em;">Confirmar contraseña:</label> 
     33   <label for="password2" style="float:left;text-align:right;margin-top:5px;width:15em;">Confirm password: </label> 
    3834   <input type="password" id="password2" name="password2" class="textwidget" size="30" /> 
    3935  </div>