easy_thumbnails.signal_handlers: 20 total statements, 0.0% covered

Generated: Wed 2013-03-13 10:33 CET

Source file: /media/Envs/Envs/filer-gallery/lib/python2.7/site-packages/easy_thumbnails/signal_handlers.py

Stats: 0 executed, 15 missed, 5 excluded, 30 ignored

  1. from django.db.models.fields.files import FileField
  2. from easy_thumbnails import signals
  3. from easy_thumbnails.alias import aliases
  4. def find_uncommitted_filefields(sender, instance, **kwargs):
  5. """
  6. A pre_save signal handler which attaches an attribute to the model instance
  7. containing all uncommitted ``FileField``s, which can then be used by the
  8. :func:`signal_committed_filefields` post_save handler.
  9. """
  10. uncommitted = instance._uncommitted_filefields = []
  11. for field in sender._meta.fields:
  12. if isinstance(field, FileField):
  13. if not getattr(instance, field.name)._committed:
  14. uncommitted.append(field.name)
  15. def signal_committed_filefields(sender, instance, **kwargs):
  16. """
  17. A post_save signal handler which sends a signal for each ``FileField`` that
  18. was committed this save.
  19. """
  20. for field_name in getattr(instance, '_uncommitted_filefields', ()):
  21. fieldfile = getattr(instance, field_name)
  22. # Don't send the signal for deleted files.
  23. if fieldfile:
  24. signals.saved_file.send_robust(sender=sender, fieldfile=fieldfile)
  25. def generate_aliases(fieldfile, **kwargs):
  26. """
  27. A saved_file signal handler which generates thumbnails for all field,
  28. model, and app specific aliases matching the saved file's field.
  29. """
  30. # Avoids circular import.
  31. from easy_thumbnails.files import generate_all_aliases
  32. generate_all_aliases(fieldfile, include_global=False)
  33. def generate_aliases_global(fieldfile, **kwargs):
  34. """
  35. A saved_file signal handler which generates thumbnails for all field,
  36. model, and app specific aliases matching the saved file's field, also
  37. generating thumbnails for each project-wide alias.
  38. """
  39. # Avoids circular import.
  40. from easy_thumbnails.files import generate_all_aliases
  41. generate_all_aliases(fieldfile, include_global=True)