fix: intro form (again)

This commit is contained in:
vas3k 2023-10-23 16:39:42 +02:00
parent 5b00ce731e
commit df3daa5c3f
4 changed files with 7 additions and 7 deletions

View File

@ -112,7 +112,7 @@ class AbstractPostForm(forms.ModelForm):
return new_value
class PostIntroForm(forms.ModelForm):
class IntroForm(forms.ModelForm):
text = forms.CharField(
label="Текст интро",
required=True,
@ -738,7 +738,7 @@ class PostThreadForm(AbstractPostForm):
POST_TYPE_MAP = {
Post.TYPE_INTRO: PostIntroForm,
Post.TYPE_INTRO: IntroForm,
Post.TYPE_POST: PostTextForm,
Post.TYPE_LINK: PostLinkForm,
Post.TYPE_QUESTION: PostQuestionForm,

View File

@ -215,7 +215,7 @@ def create_or_edit(request, post_type, post=None, mode="create"):
# validate form on POST
form = FormClass(request.POST, request.FILES, instance=post)
if form.is_valid():
if not request.me.is_moderator:
if post.type != Post.TYPE_INTRO and not request.me.is_moderator:
if Post.check_duplicate(
user=request.me,
title=form.cleaned_data["title"],

View File

@ -9,7 +9,7 @@ from users.models.user import User
from common.forms import ImageUploadField
class UserIntroForm(ModelForm):
class UserInitialIntroForm(ModelForm):
slug = forms.CharField(
label="Никнейм",
required=True,

View File

@ -4,7 +4,7 @@ from django_q.tasks import async_task
from authn.decorators.auth import require_auth
from notifications.telegram.users import notify_profile_needs_review
from posts.models.post import Post
from users.forms.intro import UserIntroForm
from users.forms.intro import UserInitialIntroForm
from users.models.geo import Geo
from users.models.user import User
@ -15,7 +15,7 @@ def intro(request):
return redirect("profile", request.me.slug)
if request.method == "POST":
form = UserIntroForm(request.POST, request.FILES, instance=request.me)
form = UserInitialIntroForm(request.POST, request.FILES, instance=request.me)
if form.is_valid():
user = form.save(commit=False)
@ -36,7 +36,7 @@ def intro(request):
return redirect("on_review")
else:
existing_intro = Post.get_user_intro(request.me)
form = UserIntroForm(
form = UserInitialIntroForm(
instance=request.me,
initial={"intro": existing_intro.text if existing_intro else ""},
)