Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

123456789101112131415161718192021222324252627282930
  1. from oscar.core.loading import get_class, get_classes
  2. OrderReportGenerator = get_class('order.reports', 'OrderReportGenerator')
  3. ProductReportGenerator, UserReportGenerator \
  4. = get_classes('analytics.reports', ['ProductReportGenerator',
  5. 'UserReportGenerator'])
  6. OpenBasketReportGenerator, SubmittedBasketReportGenerator \
  7. = get_classes('basket.reports', ['OpenBasketReportGenerator',
  8. 'SubmittedBasketReportGenerator'])
  9. OfferReportGenerator = get_class('offer.reports', 'OfferReportGenerator')
  10. VoucherReportGenerator = get_class('voucher.reports', 'VoucherReportGenerator')
  11. class GeneratorRepository(object):
  12. generators = [OrderReportGenerator,
  13. ProductReportGenerator,
  14. UserReportGenerator,
  15. OpenBasketReportGenerator,
  16. SubmittedBasketReportGenerator,
  17. VoucherReportGenerator,
  18. OfferReportGenerator]
  19. def get_report_generators(self):
  20. return self.generators
  21. def get_generator(self, code):
  22. for generator in self.generators:
  23. if generator.code == code:
  24. return generator
  25. return None