Exemple #1
0
 def get(self, request, username):
     user = get_object_or_404(User, username=username)
     if user != request.user:
         raise Http404('Page not found')
     context = {
         'form': self.form(instance=user),
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #2
0
 def get(self, request, slug):
     question = get_object_or_404(Question, slug=slug)
     if request.user != question.user:
         raise Http404('Page Not Found')
     context = {
         'form': self.form(instance=question),
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #3
0
 def get(self, request, slug):
     blog = get_object_or_404(Blog, slug=slug)
     if blog.author != request.user:
         raise Http404('Page not found')
     context = {
         'blog': blog,
         'form': self.form(instance=blog),
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #4
0
 def get(self, request, slug):
     question = get_object_or_404(Question, slug=slug)
     question.views += 1
     question.save()
     answers = Answer.objects.filter(
         question=question).select_related('user').order_by('-smiles')
     context = {
         'question': question,
         'answers': answers,
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #5
0
 def post(self, request, slug):
     question = get_object_or_404(Question, slug=slug)
     if request.user != question.user:
         raise Http404('Page Not Found')
     form = self.form(request.POST, instance=question)
     if form.is_valid():
         form.save()
         messages.success(request, 'Your question is updated!')
         return redirect('question_details', slug=slug)
     else:
         context = {
             'form': form,
             'categories': get_categories(),
         }
         return render(request, self.template_name, context)
Exemple #6
0
 def post(self, request):
     form = self.form(request.POST)
     if form.is_valid():
         question = form.save(commit=False)
         question.user = request.user
         question.slug = slugify(question.title)
         question.save()
         messages.success(request, 'Your question is published!')
         return redirect('profile', username=request.user.username)
     else:
         context = {
             'form': form,
             'categories': get_categories(),
         }
         return render(request, self.template_name, context)
Exemple #7
0
 def post(self, request, username):
     user = get_object_or_404(User, username=username)
     if user != request.user:
         raise Http404('Page not found')
     form = self.form(request.POST, request.FILES, instance=user)
     if form.is_valid():
         form.save()
         messages.success(request, 'Your profile is updated!')
         return redirect('profile', username=user.username)
     else:
         context = {
             'form': form,
             'categories': get_categories(),
         }
         return render(request, self.template_name, context)
Exemple #8
0
 def post(self, request):
     form = self.form(request.POST, request.FILES)
     if form.is_valid():
         name = form.cleaned_data['name']
         password = form.cleaned_data['password']
         user = form.save(commit=False)
         user.set_password(password)
         user.username = generate_unique_username(name)
         user.save()
         messages.success(request, 'Your account is created please login!')
         return redirect('user_login')
     context = {
         'form': form,
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #9
0
 def post(self, request, slug):
     blog = get_object_or_404(Blog, slug=slug)
     if blog.author != request.user:
         raise Http404('Page not found')
     form = self.form(request.POST, request.FILES, instance=blog)
     if form.is_valid():
         form.save()
         messages.success(request, 'Your blog is updated!')
         return redirect('single_blog', slug=slug)
     else:
         context = {
             'blog': blog,
             'form': form,
             'categories': get_categories(),
         }
         return render(request, self.template_name, context)
Exemple #10
0
 def post(self, request):
     form = self.form(request.POST, request.FILES)
     if form.is_valid():
         blog = form.save(commit=False)
         blog.author = request.user
         blog.slug = slugify(blog.title)
         blog.save()
         form.save_m2m()
         messages.success(request, 'Your blog is published!')
         return redirect('profile', username=request.user.username)
     else:
         context = {
             'form': form,
             'categories': get_categories(),
         }
         return render(request, self.template_name, context)
Exemple #11
0
    def get(self, request, slug):
        tag = get_object_or_404(Tag, slug=slug)
        objects = tag.blog_set.select_related('author').order_by(
            '-views', '-created_on')
        page = request.GET.get('page', 1)
        paginator = Paginator(objects, 9)

        try:
            blogs = paginator.page(page)
        except PageNotAnInteger:
            blogs = paginator.page(1)
        except EmptyPage:
            blogs = paginator.page(paginator.num_pages)
        context = {
            'blogs': blogs,
            'tag': tag,
            'categories': get_categories(),
            'tags': get_tags(),
        }
        return render(request, self.template_name, context)
Exemple #12
0
 def get(self, request, username):
     user_object = get_object_or_404(User, username=username)
     blogs = Blog.objects.filter(author=user_object).select_related(
         'author').order_by('-created_on')
     liked_blogs = Blog.objects.filter(likes=user_object).exclude(
         author=user_object).select_related('author')
     questions = Question.objects.filter(
         user=user_object).select_related('user').order_by('-timestamp')
     is_you_follow = False
     exists = user_object.followers.filter(id=request.user.id).exists()
     if exists:
         is_you_follow = True
     context = {
         'user_object': user_object,
         'blogs': blogs,
         'liked_blogs': liked_blogs,
         'questions': questions,
         'is_you_follow': is_you_follow,
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #13
0
 def post(self, request):
     form = self.form(request.POST)
     if form.is_valid():
         email = form.cleaned_data['email']
         password = form.cleaned_data['password']
         user_objects = User.objects.filter(email=email)
         if user_objects.exists():
             username = user_objects[0].username
             user = authenticate(username=username, password=password)
             if user and user.is_active:
                 login(request, user)
                 next_url = request.GET.get('next', '')
                 if next_url:
                     return redirect(next_url)
                 return redirect('profile', username=user.username)
     context = {
         'form': form,
         'error': True,
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #14
0
 def get(self, request, slug):
     blog = get_object_or_404(Blog, slug=slug)
     blog.views += 1
     blog.save()
     related_blogs = Blog.objects.filter(author=blog.author).exclude(
         id=blog.id).select_related('author').order_by(
             '-views', '-created_on')
     is_you_like = True if blog.likes.filter(
         id=request.user.id).exists() else False
     comments = BlogComment.objects.filter(
         blog=blog).select_related('user').order_by('-created_on')
     blog_tags = blog.tags.all().order_by('name').values('name', 'slug')
     context = {
         'blog': blog,
         'blog_tags': blog_tags,
         'comments': comments,
         'related_blogs': related_blogs,
         'is_you_like': is_you_like,
         'categories': get_categories(),
         'tags': get_tags(),
     }
     return render(request, self.template_name, context)
Exemple #15
0
 def get(self, request):
     context = {
         'form': self.form(),
         'categories': get_categories(),
     }
     return render(request, self.template_name, context)
Exemple #16
0
 def get_context_data(self, **kwargs):
     data = super().get_context_data(**kwargs)
     data['categories'] = get_categories()
     return data