diff --git a/books/views.py b/books/views.py index 5dda8e0c..df608148 100644 --- a/books/views.py +++ b/books/views.py @@ -277,7 +277,7 @@ def create_update_mark(request): form = BookMarkForm(request.POST) if form.is_valid(): - if form.instance.status == MarkStatusEnum.WISH.value: + if form.instance.status == MarkStatusEnum.WISH.value or form.instance.rating == 0: form.instance.rating = None form.cleaned_data['rating'] = None form.instance.owner = request.user @@ -325,7 +325,7 @@ def create_update_mark(request): mastodon_logger.error(f"CODE:{response.status_code} {response.text}") return HttpResponseServerError("publishing mastodon status failed") else: - return HttpResponseBadRequest("invalid form data") + return HttpResponseBadRequest(f"invalid form data {form.errors}") return redirect(reverse("books:retrieve", args=[form.instance.book.id])) else: diff --git a/common/forms.py b/common/forms.py index d010b583..b503f350 100644 --- a/common/forms.py +++ b/common/forms.py @@ -88,7 +88,7 @@ class RatingValidator: _('%(value)s is not an integer'), params={'value': value}, ) - if not str(value) in [str(i) for i in range(1, 11)]: + if not str(value) in [str(i) for i in range(0, 11)]: raise ValidationError( _('%(value)s is not an integer in range 1-10'), params={'value': value}, diff --git a/games/views.py b/games/views.py index 0fecf12a..200106bd 100644 --- a/games/views.py +++ b/games/views.py @@ -279,7 +279,7 @@ def create_update_mark(request): form = GameMarkForm(request.POST) if form.is_valid(): - if form.instance.status == MarkStatusEnum.WISH.value: + if form.instance.status == MarkStatusEnum.WISH.value or form.instance.rating == 0: form.instance.rating = None form.cleaned_data['rating'] = None form.instance.owner = request.user @@ -328,7 +328,7 @@ def create_update_mark(request): f"CODE:{response.status_code} {response.text}") return HttpResponseServerError("publishing mastodon status failed") else: - return HttpResponseBadRequest("invalid form data") + return HttpResponseBadRequest(f"invalid form data {form.errors}") return redirect(reverse("games:retrieve", args=[form.instance.game.id])) else: diff --git a/movies/views.py b/movies/views.py index 007ab1b6..9f6c0390 100644 --- a/movies/views.py +++ b/movies/views.py @@ -278,7 +278,7 @@ def create_update_mark(request): form = MovieMarkForm(request.POST) if form.is_valid(): - if form.instance.status == MarkStatusEnum.WISH.value: + if form.instance.status == MarkStatusEnum.WISH.value or form.instance.rating == 0: form.instance.rating = None form.cleaned_data['rating'] = None form.instance.owner = request.user @@ -327,7 +327,7 @@ def create_update_mark(request): f"CODE:{response.status_code} {response.text}") return HttpResponseServerError("publishing mastodon status failed") else: - return HttpResponseBadRequest("invalid form data") + return HttpResponseBadRequest(f"invalid form data {form.errors}") return redirect(reverse("movies:retrieve", args=[form.instance.movie.id])) else: diff --git a/music/views.py b/music/views.py index ee7d68f1..36976ada 100644 --- a/music/views.py +++ b/music/views.py @@ -297,7 +297,7 @@ def create_update_song_mark(request): form = SongMarkForm(request.POST) if form.is_valid(): - if form.instance.status == MarkStatusEnum.WISH.value: + if form.instance.status == MarkStatusEnum.WISH.value or form.instance.rating == 0: form.instance.rating = None form.cleaned_data['rating'] = None form.instance.owner = request.user @@ -346,7 +346,7 @@ def create_update_song_mark(request): f"CODE:{response.status_code} {response.text}") return HttpResponseServerError("publishing mastodon status failed") else: - return HttpResponseBadRequest("invalid form data") + return HttpResponseBadRequest(f"invalid form data {form.errors}") return redirect(reverse("music:retrieve_song", args=[form.instance.song.id])) else: @@ -868,7 +868,7 @@ def create_update_album_mark(request): form = AlbumMarkForm(request.POST) if form.is_valid(): - if form.instance.status == MarkStatusEnum.WISH.value: + if form.instance.status == MarkStatusEnum.WISH.value or form.instance.rating == 0: form.instance.rating = None form.cleaned_data['rating'] = None form.instance.owner = request.user @@ -917,7 +917,7 @@ def create_update_album_mark(request): f"CODE:{response.status_code} {response.text}") return HttpResponseServerError("publishing mastodon status failed") else: - return HttpResponseBadRequest("invalid form data") + return HttpResponseBadRequest(f"invalid form data {form.errors}") return redirect(reverse("music:retrieve_album", args=[form.instance.album.id])) else: