Guest User

Untitled

a guest
May 26th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. from fedora.client.fas2 import AccountSystem
  2. import getpass
  3. from datetime import datetime
  4. from time import mktime
  5. import sys
  6.  
  7. # This is the magic time (in seconds since the UNIX Epoch) that Toshio gave me
  8. # where the end of the initial FAS2 import lies. Any timestamps prior to this
  9. # can't be trusted.
  10. # start_date = "2008-03-12 02:06:00"
  11. start_date = 1205305560
  12.  
  13. print 'Username:',
  14. username = raw_input()
  15. password = getpass.getpass()
  16.  
  17. foo = AccountSystem(username=username, password=password)
  18.  
  19. # s/unapproved_roles/approved_roles/ to do the same analysis on current members
  20. amb = foo.group_by_name('ambassadors')['unapproved_roles']
  21. cla = foo.group_by_name('cla_done')['approved_roles']
  22. unapproved = {}
  23. for i in amb:
  24. creation = datetime.strptime(i['creation'][:19], '%Y-%m-%d %H:%M:%S')
  25. if mktime(creation.timetuple()) < start_date:
  26. # we don't care
  27. continue
  28. unapproved[i['person_id']] = {
  29. 'creation': creation,
  30. 'fas_sign': None,
  31. }
  32. for i in cla:
  33. if i['person_id'] in unapproved.keys():
  34. if i['approval'] == None:
  35. # we don't care
  36. unapproved.pop(i['person_id'])
  37. continue
  38. approval = datetime.strptime(i['approval'][:19], '%Y-%m-%d %H:%M:%S')
  39. if mktime(approval.timetuple()) < start_date:
  40. # we don't care
  41. unapproved.pop(i['person_id'])
  42. continue
  43. unapproved[i['person_id']]['fas_sign'] = approval
  44.  
  45. data = []
  46. for i in unapproved:
  47. delta = unapproved[i]['creation'] - unapproved[i]['fas_sign']
  48. data.append(delta.days * 86400 + delta.seconds)
  49.  
  50. data.sort()
  51. print data
  52. print len(data)
Add Comment
Please, Sign In to add comment