def game_detail(request, game_id): """ A view to see the Game detail page """ if request.user.is_authenticated: current_membership = get_user_membership(request) current_membership = str(current_membership.membership) if current_membership == 'Professional': membership_active = True else: membership_active = False if not membership_active: messages.error(request, 'Sorry, only Pro Members can View Games.') return redirect(reverse('home')) game = get_object_or_404(Game, pk=game_id) context = { 'game': game, 'current_membership': current_membership, 'membership_active': membership_active, } return render(request, 'games/game_detail.html', context)
def get(self,request): user_membership = get_user_membership(request) user_subscription = get_user_subscription(request) args = { 'user_membership':user_membership, 'user_subscription':user_subscription } return render(request,self.template_name,args)
def post_create(request): form = PostModelForm() if request.POST: form = PostModelForm(request.POST, request.FILES) if form.is_valid(): form.instance.author = get_user_membership(request) form.instance.save() post = get_object_or_404(Post, slug=form.instance.slug) return redirect(post.get_absolute_url()) context = {'form': form} return render(request, "blog/create_post.html", context)
def profile(request): """ Displays the Users Profile """ profile = get_object_or_404(UserProfile, user=request.user) user_membership = get_user_membership(request) user_subscription = get_user_subscription(request) if request.user.is_authenticated: current_membership = get_user_membership(request) current_membership = str(current_membership.membership) else: current_membership = False if request.method == 'POST': form = UserProfileForm(request.POST, instance=profile) if form.is_valid(): form.save() messages.success(request, 'Profile updated successfully') else: messages.error(request, 'Update failed. Please ensure the form is valid.') else: form = UserProfileForm(instance=profile) orders = profile.orders.all() template = 'profiles/profile.html' context = { 'form': form, 'orders': orders, 'on_profile_page': True, 'user_membership': user_membership, 'user_subscription': user_subscription, 'current_membership': current_membership, } return render(request, template, context)
def get(self, request, *args, **kwargs): profile = get_object_or_404(UserProfile, user=request.user) """Displaying user Profile """ user_membership = get_user_membership(request) user_subscription = get_user_subscription(request) sub_discout = settings.SUB_DISCOUNT_PERCENTAGE context = { 'profile': profile, 'user_membership': user_membership, 'user_subscription': user_subscription, 'sub_discout': sub_discout } return render(request, 'profiles/profile_subscriptions.html', context)
def index(request): """ A view to return the index page """ if request.user.is_authenticated: current_membership = get_user_membership(request) current_membership = str(current_membership.membership) else: current_membership = False context = { 'current_membership': current_membership, } return render(request, 'home/index.html', context)
def get_loged_user_discount(request): """Checks to see if the use is authenticated. Looks to get_user_membership function in memberships.views for current membership. If membership is 'Pro' added discount to cart.""" if request.user.is_authenticated: current_membership = get_user_membership(request) current_membership = str(current_membership.membership) else: current_membership = False if current_membership == "Professional": discount = True return discount else: return None
def get(self, request, *args, **kwargs): profile = get_object_or_404(UserProfile, user=request.user) """Displaying user Profile """ user_membership = get_user_membership(request) user_subscription = get_user_subscription(request) orders = profile.Orders.all().order_by('-date') user_blog = Blog.objects.filter( author=request.user).order_by('-publish_date') context = { 'profile': profile, 'user_membership': user_membership, 'user_subscription': user_subscription, 'orders': orders, 'user_blog': user_blog, } return render(request, 'profiles/profile.html', context)
def get(self, request, slug=None, format=None): # slug = self.kwargs.get('slug') obj = get_object_or_404(Post, slug=slug) url_ = obj.get_absolute_url() user = get_user_membership(request) updated = False liked = False if user.user.is_authenticated: if user in obj.likes.all(): liked = False updated = True obj.likes.remove(user) else: liked = True obj.likes.add(user) updated = True data = {"updated": updated, "liked": liked} return Response(data)