Exemple #1
0
 def do_generate_users(self, request):
   '''Automatically generates users'''
   try:
     name = request.getvalue('name', '')
     assert name != ''
     start = int(request.getvalue('start', 'error'))
     end = int(request.getvalue('end', 'error'))
     passlen = int(request.getvalue('passlength', 'error'))
   except:
     request.writeln('<p align="center"><font color="red">Error: Some fields were not entered correctly or were blank; autogeneration cancelled.</font></p>')
     return
   rand = random.Random()
   index_len = len(str(end))
   for i in range(start, end + 1):
     user = Directory.create_user(request.session.user.id)
     newname = name
     for j in range(len(str(i)), index_len):  # pad lower numbers with zeros
       newname += '0'
     newname += str(i)
     user.name = newname
     user.email = ''
     user.username = newname
     user.password = ''
     if passlen > 0:
       for i in range(passlen - 1):  # all letters except last char is a number
         user.password += rand.choice(ASCII_CHARS)
       user.password += rand.choice(DIGIT_CHARS)
     user.save()
Exemple #2
0
 def save_user(self, request):
   '''Saves (or creates) a user'''
   userid = request.getvalue('userid', 'New')
   if (userid == 'New'):
     user = Directory.create_user(request.session.user.id)
   else:
     user = Directory.get_user(userid)
   for key in Directory.USER_FIELDS:
     setattr(user, key, request.getvalue(key, ''))
   user.save()