Mercurial > public > sg101
view gpp/accounts/__init__.py @ 463:452835f4429f
Fixing #225; for some reason MySQL finds the user 'John' when searching for 'John ' (note trailing space). This doesn't happen on SQLite. This causes a NoReverseMatch when searching for 'John ' in the member search. The solution is to call strip() on the form field contents in the clean_username() method of the search form.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 09 Jul 2011 02:00:48 +0000 |
parents | 69d0306a6fe7 |
children |
line wrap: on
line source
import datetime import logging from django.contrib.auth.models import User def create_new_user(pending_user, ip=None, admin_activation=False): """ This function contains the code to create a new user from a pending user. The pending user is deleted and the new user is saved. A log message is produced. If admin_activation is false, then ip should be the user's IP they confirmed from, if available. """ new_user = User() new_user.username = pending_user.username new_user.first_name = '' new_user.last_name = '' new_user.email = pending_user.email new_user.password = pending_user.password # already been hashed new_user.is_staff = False new_user.is_active = True new_user.is_superuser = False new_user.last_login = datetime.datetime.now() new_user.date_joined = new_user.last_login new_user.save() pending_user.delete() if admin_activation: msg = 'Accounts registration confirmed by ADMIN for %s' % new_user.username else: msg = 'Accounts registration confirmed by USER for %s from %s' % ( new_user.username, ip) logging.info(msg)