In gluon/tools.py function register() starting from line 1246 must read: elif self.settings.registration_requires_approval: table_user[form.vars.id] = dict(registration_key='pending')
Currently it is: elif self.settings.registration_requires_approval: user[form.vars.id] = dict(registration_key='pending') which gives an error 'Variable user is used before assignment'. -- Subscription settings: http://groups.google.com/group/web2py/subscribe?hl=en