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

1234567891011121314151617181920212223242526272829303132333435
  1. from django.http import HttpResponseRedirect, Http404
  2. from django.shortcuts import get_object_or_404, render
  3. from oscar.core.loading import import_module
  4. promotions_models = import_module('promotions.models', ['PagePromotion', 'KeywordPromotion'])
  5. class HomeView(object):
  6. u"""
  7. View for the homepage.
  8. """
  9. template_file = 'oscar/home.html'
  10. def __call__(self, request, *args, **kwargs):
  11. return render(request, self.template_file)
  12. def page_promotion_click(request, page_promotion_id):
  13. u"""Records a click-through on a promotion"""
  14. page_prom = get_object_or_404(promotions_models.PagePromotion, id=page_promotion_id)
  15. if page_prom.promotion.has_link:
  16. page_prom.record_click()
  17. return HttpResponseRedirect(page_prom.promotion.link_url)
  18. return Http404()
  19. def keyword_promotion_click(request, keyword_promotion_id):
  20. u"""Records a click-through on a promotion"""
  21. keyword_prom = get_object_or_404(promotions_models.KeywordPromotion, id=keyword_promotion_id)
  22. if keyword_prom.promotion.has_link:
  23. keyword_prom.record_click()
  24. return HttpResponseRedirect(keyword_prom.promotion.link_url)
  25. return Http404()