fix sharing error for email only users
This commit is contained in:
parent
a2523fae1c
commit
35fc702728
3 changed files with 32 additions and 44 deletions
|
@ -313,7 +313,7 @@ class Review(Content):
|
|||
review, created = cls.objects.update_or_create(
|
||||
item=item, owner=user, defaults=defaults
|
||||
)
|
||||
if share_to_mastodon:
|
||||
if share_to_mastodon and user.mastodon_username:
|
||||
share_review(review)
|
||||
return review
|
||||
|
||||
|
@ -1162,6 +1162,7 @@ class Mark:
|
|||
# silence=False means update is logged.
|
||||
share = (
|
||||
share_to_mastodon
|
||||
and self.owner.mastodon_username
|
||||
and shelf_type is not None
|
||||
and (
|
||||
shelf_type != self.shelf_type
|
||||
|
|
|
@ -1,34 +1,34 @@
|
|||
import logging
|
||||
from django.shortcuts import render, get_object_or_404, redirect
|
||||
from django.urls import reverse
|
||||
from datetime import datetime
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.decorators import login_required
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.http import Http404, HttpResponse
|
||||
from django.core.exceptions import BadRequest, ObjectDoesNotExist, PermissionDenied
|
||||
from django.core.paginator import Paginator
|
||||
from django.db.models import Count
|
||||
from django.http import Http404, HttpResponse, HttpResponseRedirect
|
||||
from django.shortcuts import get_object_or_404, redirect, render
|
||||
from django.urls import reverse
|
||||
from django.utils import timezone
|
||||
from django.utils.dateparse import parse_datetime
|
||||
from django.core.paginator import Paginator
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from user_messages import api as msg
|
||||
|
||||
from common.utils import PageLinksGenerator, get_uuid_or_404
|
||||
from journal.renderers import convert_leading_space_in_md
|
||||
from .models import *
|
||||
from django.conf import settings
|
||||
from django.http import HttpResponseRedirect
|
||||
from management.models import Announcement
|
||||
from .forms import *
|
||||
from mastodon.api import (
|
||||
get_spoiler_text,
|
||||
share_review,
|
||||
share_collection,
|
||||
get_status_id_by_url,
|
||||
post_toot,
|
||||
get_visibility,
|
||||
post_toot,
|
||||
share_collection,
|
||||
share_review,
|
||||
)
|
||||
from users.models import User
|
||||
from users.views import render_user_blocked, render_user_not_found
|
||||
from users.models import User, Report, Preference
|
||||
from common.utils import PageLinksGenerator, get_uuid_or_404
|
||||
from user_messages import api as msg
|
||||
from datetime import datetime
|
||||
|
||||
from .forms import *
|
||||
from .models import *
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
PAGE_SIZE = 10
|
||||
|
@ -215,7 +215,7 @@ def mark(request, item_uuid):
|
|||
raise BadRequest()
|
||||
|
||||
|
||||
def post_comment(user, item, text, visibility, shared_link=None, position=None):
|
||||
def share_comment(user, item, text, visibility, shared_link=None, position=None):
|
||||
post_error = False
|
||||
status_id = get_status_id_by_url(shared_link)
|
||||
link = (
|
||||
|
@ -245,21 +245,6 @@ def post_comment(user, item, text, visibility, shared_link=None, position=None):
|
|||
return post_error, shared_link
|
||||
|
||||
|
||||
@login_required
|
||||
def comment_select_episode(request, item_uuid):
|
||||
item = get_object_or_404(Item, uid=get_uuid_or_404(item_uuid))
|
||||
if request.method == "GET":
|
||||
return render(
|
||||
request,
|
||||
"comment_select_episode.html",
|
||||
{
|
||||
"item": item,
|
||||
"comment": comment,
|
||||
},
|
||||
)
|
||||
raise BadRequest()
|
||||
|
||||
|
||||
@login_required
|
||||
def mark_log(request, item_uuid, log_id):
|
||||
"""
|
||||
|
@ -321,8 +306,8 @@ def comment(request, item_uuid):
|
|||
share_to_mastodon = bool(request.POST.get("share_to_mastodon", default=False))
|
||||
shared_link = comment.metadata.get("shared_link") if comment else None
|
||||
post_error = False
|
||||
if share_to_mastodon:
|
||||
post_error, shared_link = post_comment(
|
||||
if share_to_mastodon and request.user.mastodon_username:
|
||||
post_error, shared_link = share_comment(
|
||||
request.user, item, text, visibility, shared_link, position
|
||||
)
|
||||
Comment.objects.update_or_create(
|
||||
|
|
|
@ -1,16 +1,18 @@
|
|||
import requests
|
||||
import string
|
||||
import random
|
||||
import functools
|
||||
import logging
|
||||
from django.conf import settings
|
||||
from django.urls import reverse
|
||||
from urllib.parse import quote
|
||||
from .models import MastodonApplication
|
||||
from mastodon.utils import rating_to_emoji
|
||||
import random
|
||||
import re
|
||||
import string
|
||||
from urllib.parse import quote
|
||||
|
||||
import requests
|
||||
from django.conf import settings
|
||||
from loguru import logger
|
||||
|
||||
from mastodon.utils import rating_to_emoji
|
||||
|
||||
from .models import MastodonApplication
|
||||
|
||||
# See https://docs.joinmastodon.org/methods/accounts/
|
||||
|
||||
# returns user info
|
||||
|
|
Loading…
Add table
Reference in a new issue