Ignore:
Timestamp:
12 Jul 2012, 11:43:12 (13 years ago)
Author:
Henrik Bettermann
Message:

Add boolean field 'suspended' to IStudent and IApplicant and extend authentication (checkPassword) slightly. Test will follow

Location:
main/waeup.kofa/trunk/src/waeup/kofa/students
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/students/authentication.py

    r8757 r8983  
    102102    def checkPassword(self, password):
    103103        """Check whether the given `password` matches the one stored.
     104
     105        We additionally check if student account has been suspended.
    104106        """
    105107        if not isinstance(password, basestring):
     
    107109        if not getattr(self.context, 'password', None):
    108110            # unset/empty passwords do never match
     111            return False
     112        if self.context.suspended == True:
    109113            return False
    110114        passwordmanager = getUtility(IPasswordManager, 'SSHA')
  • main/waeup.kofa/trunk/src/waeup/kofa/students/browser.py

    r8977 r8983  
    292292    grok.require('waeup.viewStudent')
    293293    grok.template('basepage')
    294     form_fields = grok.AutoFields(IStudentBase).omit('password')
     294    form_fields = grok.AutoFields(IStudentBase).omit('password', 'suspended')
    295295    pnav = 4
    296296
    297297    @property
    298298    def label(self):
    299         return _('${a}: Base Data',
     299        if self.context.suspended:
     300            return _('${a}: Base Data (account suspended)',
     301                mapping = {'a':self.context.display_fullname})
     302        return  _('${a}: Base Data',
    300303            mapping = {'a':self.context.display_fullname})
    301304
  • main/waeup.kofa/trunk/src/waeup/kofa/students/interfaces.py

    r8977 r8983  
    157157    is_postgrad = Attribute('True if postgraduate student')
    158158
     159    suspended = schema.Bool(
     160        title = _(u'Account suspended'),
     161        default = False,
     162        )
     163
    159164    student_id = schema.TextLine(
    160165        title = _(u'Student Id'),
  • main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_authentication.py

    r8351 r8983  
    6565    email = None
    6666    phone = None
     67    suspended = False
    6768
    6869
  • main/waeup.kofa/trunk/src/waeup/kofa/students/tests/test_export.py

    r8947 r8983  
    4444            'adm_code,clearance_locked,clr_code,date_of_birth,email,employer,'
    4545            'firstname,lastname,matric_number,middlename,nationality,'
    46             'perm_address,phone,reg_number,sex,student_id,password,'
     46            'perm_address,phone,reg_number,sex,student_id,suspended,password,'
    4747            'state,history,certcode\r\n'
    4848
    4949            'my adm code,0,my clr code,1981-02-04#,anna@sample.com,,'
    5050            'Anna,Tester,M123456,M.,NG,"Studentroad 21\nLagos 123456\n",'
    51             '+234-123-12345#,123456,f,A111111,,created'
     51            '+234-123-12345#,123456,f,A111111,0,,created'
    5252            in result
    5353            )
     
    6464            'adm_code,clearance_locked,clr_code,date_of_birth,email,employer,'
    6565            'firstname,lastname,matric_number,middlename,nationality,'
    66             'perm_address,phone,reg_number,sex,student_id,password,'
     66            'perm_address,phone,reg_number,sex,student_id,suspended,password,'
    6767            'state,history,certcode\r\n'
    6868
    6969            'my adm code,0,my clr code,1981-02-04#,anna@sample.com,,'
    7070            'Anna,Tester,M123456,M.,NG,"Studentroad 21\nLagos 123456\n",'
    71             '+234-123-12345#,123456,f,A111111,,created'
     71            '+234-123-12345#,123456,f,A111111,0,,created'
    7272            in result
    7373            )
     
    8383            'adm_code,clearance_locked,clr_code,date_of_birth,email,employer,'
    8484            'firstname,lastname,matric_number,middlename,nationality,'
    85             'perm_address,phone,reg_number,sex,student_id,password,'
     85            'perm_address,phone,reg_number,sex,student_id,suspended,password,'
    8686            'state,history,certcode\r\n'
    8787
    8888            'my adm code,0,my clr code,1981-02-04#,anna@sample.com,,'
    8989            'Anna,Tester,M123456,M.,NG,"Studentroad 21\nLagos 123456\n",'
    90             '+234-123-12345#,123456,f,A111111,,created'
     90            '+234-123-12345#,123456,f,A111111,0,,created'
    9191            in result
    9292            )
Note: See TracChangeset for help on using the changeset viewer.