def available_for_signup(self, request): plans = self.filter(slug__in=["unlimited1", "unlimited2"]) if ( # Disable free trial for registered users not request.user.is_authenticated() and is_eligible_for_free_trial(request) ): plans |= self.filter(slug="free_trial") return plans
def get_context_data(self, **kwargs): page_id = self.request.GET.get("pageid", "0") if page_id not in self.pages_list: raise Http404() self.page_id = page_id context = {} if self.page_id in ["0", "4", "C1"]: context.update({ "popular_releases": Item.objects.hottest_selling()[:10], }) if self.page_id == "0": context.update({ "free_trial": is_eligible_for_free_trial(self.request), }) if self.page_id == "1": context.update({ "top_rentals": Item.objects.hottest_selling()[:10], }) return context
def get_context_data(self, **kwargs): return { "popular_releases": Item.objects.hottest_selling()[:10], "free_trial": is_eligible_for_free_trial(self.request), }
def balalayka(request): if request.is_ajax(): def img(n): f = settings.STATIC_URL + 'img/banners/balalayka/%s.jpg' return f % (n + '-b'), f % (n + '-s') def g(id): try: return Item.objects.get(id=id).get_absolute_url() except Item.DoesNotExist: return None banners = [ { 'banner_class': 'banner-rent-1', 'links': [('/Rent/SignUp/', 'link-dialog')], 'images': img('rent-1'), }, { 'banner_class': 'banner-rent-2', 'links': [('/Rent/Destination/', None)], 'images': img('rent-2'), }, { 'banner_class': 'banner-freetrial', 'links': [('/Rent/SignUp/', 'link-dialog')], 'images': img('freetrial'), }, { 'banner_class': 'banner-wimgw', 'links': [(g(id), None) for id in [100000325, 10000040, 100000013]], 'images': img('wimgw'), }, { 'banner_class': 'banner-trade', 'links': [('/Trade/', None)], 'images': img('trade'), }, { 'banner_class': 'banner-newsletter', 'links': [(reverse('subscription:signup'), 'link-dialog')], 'images': img('newsletter'), }, { 'banner_class': 'banner-buy', 'links': [('/Buy/', None)], 'images': img('buy'), }, ] if request.user.is_authenticated(): if MemberRentalPlan.get_current_plan(request.user): banner_set = [1, 3, 4, 6] else: banner_set = [0, 3, 4, 6] else: if 'subscription-done' in request.COOKIES: banner_set = [0, 3, 4, 6] else: banner_set = [0, 3, 4, 5, 6] if is_eligible_for_free_trial(request): banner_set[0] = 2 return JsonResponse({ 'banners': [banners[x] for x in banner_set],}) if not settings.DEBUG: return redirect('/')
def free_trial(request): return { "eligible_for_free_trial": is_eligible_for_free_trial(request), }