Exemple #1
0
def modifyPost(request, slug):

    post = Post.objects.get(slug=slug)
    if request.user.username is not post.author:
        return redirect(f"/post/{{post.slug}}")

    if request.POST:
        form = PostForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            body = form.cleaned_data['body']
            post.title = title
            post.body = body
            post.save()
            return redirect(f'/post/{post.slug}')

    form = PostForm({'title': post.title, 'body': post.body})
    return render(request, 'editor.html', {'form': form})
Exemple #2
0
def newPost(request):
	if request.method == "POST":
		form = PostForm(request.POST)
		if form.is_valid():
			new_save = form.save(commit=False)
			new_save.member_organization = request.user.profile.member_organization
			if len(new_save.body) > 200:
				new_save.excerpt = new_save.body[:197] + '...'
			else:
				new_save.excerpt = new_save.body
			new_save.created_by = request.user
			new_save.save()
			return HttpResponseRedirect(reverse('posts:detailpost', args=(new_save.id,)))
		else:
			return render(request, 'posts/new_post.html', {'form':form, 'error':'Your Member Organization Form Was Not Valid'})
	else:
		form = PostForm()
		return render(request, 'posts/new_post.html', {'form':form})
Exemple #3
0
def editor(request):
    if request.POST:
        form = PostForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            author = request.user.username
            slug = ''.join(random.choice(string.ascii_letters + \
                           string.digits) for x in range(10))
            body = form.cleaned_data['body']
            pub_date = timezone.now()

            post = Post.objects.create(title=title,
                                       author=author,
                                       slug=slug,
                                       body=body,
                                       pub_date=pub_date)
            return redirect(f'/post/{slug}')

    form = PostForm()
    return render(request, 'editor.html', locals())
Exemple #4
0
def editPost(request, post_id):
	post = get_object_or_404(Post, pk=post_id)
	if post != request.user.profile.member_organization and not request.user.has_perm('posts.uniauth'):
		return HttpResponseRedirect(reverse('posts:post', args=(post.id,)))
	if request.method == "POST":
		form = PostForm(request.POST)
		if form.is_valid():
			new_save = form.save(commit=False)
			new_save.id = post_id
			new_save.datetime = post.datetime
			new_save.member_organization = request.user.profile.member_organization
			if len(new_save.body) > 200:
				new_save.excerpt = new_save.body[:197] + '...'
			else:
				new_save.excerpt = new_save.body
			new_save.created_by = request.user
			new_save.save()
			return HttpResponseRedirect(reverse('posts:index'))
		else:
			return render(request, 'posts/edit_post.html', {'form':form, 'post':post, 'error':'form needs some work', 'editmode':True})
	form = PostForm(instance = post)

	return render(request, 'posts/edit_post.html', {'form':form, 'post':post, 'editmode':True})