bans.py 1.1 KB

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