bans.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. from __future__ import unicode_literals
  2. from misago.users.models import Ban
  3. from . import fetch_assoc, localise_datetime
  4. CHECK_MAPPING = {
  5. 1: 0,
  6. 2: 1,
  7. 3: 2
  8. }
  9. def move_bans():
  10. for ban in fetch_assoc('SELECT * FROM misago_ban'):
  11. if ban['test']:
  12. Ban.objects.create(
  13. check_type=CHECK_MAPPING[ban['test']],
  14. banned_value=ban['ban'],
  15. user_message=ban['reason_user'],
  16. staff_message=ban['reason_admin'],
  17. expires_on=localise_datetime(ban['expires'])
  18. )
  19. else:
  20. Ban.objects.create(
  21. check_type=0,
  22. banned_value=ban['ban'],
  23. user_message=ban['reason_user'],
  24. staff_message=ban['reason_admin'],
  25. expires_on=localise_datetime(ban['expires'])
  26. )
  27. Ban.objects.create(
  28. check_type=1,
  29. banned_value=ban['ban'],
  30. user_message=ban['reason_user'],
  31. staff_message=ban['reason_admin'],
  32. expires_on=localise_datetime(ban['expires'])
  33. )
  34. Ban.objects.invalidate_cache()