show in-collection section for entities
This commit is contained in:
parent
447922a336
commit
34ce5b9fa3
14 changed files with 94 additions and 8 deletions
|
@ -312,6 +312,21 @@
|
|||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if collection_list %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
<div class="action-panel__label">{% trans '相关收藏单' %}</div>
|
||||
<div >
|
||||
{% for c in collection_list %}
|
||||
<p>
|
||||
<a href="{% url 'collection:retrieve' c.id %}">{{ c.title }}</a>
|
||||
</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
@ -19,6 +19,7 @@ from .models import *
|
|||
from .forms import *
|
||||
from .forms import BookMarkStatusTranslator
|
||||
from django.conf import settings
|
||||
from collection.models import CollectionItem
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
@ -194,6 +195,7 @@ def retrieve(request, id):
|
|||
review_list_more = True if len(
|
||||
review_list) > REVIEW_NUMBER else False
|
||||
review_list = review_list[:REVIEW_NUMBER]
|
||||
collection_list = filter(lambda c: c.is_visible_to(request.user), map(lambda i: i.collection, CollectionItem.objects.filter(book=book)))
|
||||
|
||||
# def strip_html_tags(text):
|
||||
# import re
|
||||
|
@ -218,6 +220,7 @@ def retrieve(request, id):
|
|||
'review_list_more': review_list_more,
|
||||
'book_tag_list': book_tag_list,
|
||||
'mark_tags': mark_tags,
|
||||
'collection_list': collection_list,
|
||||
}
|
||||
)
|
||||
else:
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
from django import forms
|
||||
from django.contrib.postgres.forms import SimpleArrayField
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from .models import Collection
|
||||
from common.forms import *
|
||||
|
@ -9,8 +8,7 @@ class CollectionForm(forms.ModelForm):
|
|||
# id = forms.IntegerField(required=False, widget=forms.HiddenInput())
|
||||
title = forms.CharField(label=_("标题"))
|
||||
description = MarkdownxFormField(label=_("详细介绍 (Markdown)"))
|
||||
share_to_mastodon = forms.BooleanField(
|
||||
label=_("分享到联邦网络"), initial=True, required=False)
|
||||
# share_to_mastodon = forms.BooleanField(label=_("分享到联邦网络"), initial=True, required=False)
|
||||
visibility = forms.TypedChoiceField(
|
||||
label=_("可见性"),
|
||||
initial=0,
|
||||
|
|
|
@ -41,7 +41,6 @@ class Collection(UserOwnedEntity):
|
|||
return None
|
||||
else:
|
||||
i = CollectionItem(collection=self, position=cl[-1].position + 1 if len(cl) else 1, comment=comment)
|
||||
print(i)
|
||||
i.set_item(item)
|
||||
i.save()
|
||||
return i
|
||||
|
|
|
@ -13,6 +13,9 @@
|
|||
<title>{{ site_name }} - {{ title }}</title>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
|
||||
<link rel="stylesheet" href="{% static 'css/boofilsic.min.css' %}">
|
||||
<style type="text/css">
|
||||
#id_visibility li {display: inline-block !important;}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
{% endif %}
|
||||
<div class="entity-list__entity-title">
|
||||
<a href="{{ item.item.get_absolute_url }}" style="font-size:16px">{{ item.item.title }}</a>
|
||||
<span class="entity-list__entity-category">[{{item.item.verbose_category_name}}]</span>
|
||||
<a href="{{ item.item.source_url }}">
|
||||
<span class="source-label source-label__{{ item.item.source_site }}">{{ item.item.get_source_site_display }}</span>
|
||||
</a>
|
||||
|
|
|
@ -316,6 +316,21 @@
|
|||
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if collection_list %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
<div class="action-panel__label">{% trans '相关收藏单' %}</div>
|
||||
<div >
|
||||
{% for c in collection_list %}
|
||||
<p>
|
||||
<a href="{% url 'collection:retrieve' c.id %}">{{ c.title }}</a>
|
||||
</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -18,6 +18,7 @@ from common.models import SourceSiteEnum
|
|||
from .models import *
|
||||
from .forms import *
|
||||
from django.conf import settings
|
||||
from collection.models import CollectionItem
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
@ -196,6 +197,7 @@ def retrieve(request, id):
|
|||
review_list_more = True if len(
|
||||
review_list) > REVIEW_NUMBER else False
|
||||
review_list = review_list[:REVIEW_NUMBER]
|
||||
collection_list = filter(lambda c: c.is_visible_to(request.user), map(lambda i: i.collection, CollectionItem.objects.filter(movie=movie)))
|
||||
|
||||
# def strip_html_tags(text):
|
||||
# import re
|
||||
|
@ -220,6 +222,7 @@ def retrieve(request, id):
|
|||
'review_list_more': review_list_more,
|
||||
'game_tag_list': game_tag_list,
|
||||
'mark_tags': mark_tags,
|
||||
'collection_list': collection_list,
|
||||
}
|
||||
)
|
||||
else:
|
||||
|
|
|
@ -76,7 +76,6 @@ def post_toot(site, content, visibility, token, local_only=False):
|
|||
}
|
||||
if not local_only:
|
||||
del payload['local_only']
|
||||
print(payload)
|
||||
response = post(url, headers=headers, data=payload)
|
||||
return response
|
||||
|
||||
|
@ -105,7 +104,6 @@ def create_app(domain_name):
|
|||
}
|
||||
|
||||
response = post(url, data=payload, headers={'User-Agent': 'NeoDB/1.0'})
|
||||
print(payload)
|
||||
return response
|
||||
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@
|
|||
<script src="{% static 'js/detail.js' %}"></script>
|
||||
<link rel="stylesheet" href="{% static 'css/boofilsic.css' %}">
|
||||
<link rel="stylesheet" href="{% static 'lib/css/rating-star.css' %}">
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
@ -395,7 +394,7 @@
|
|||
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
|
||||
{% if movie.get_related_movies.count > 0 %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
|
@ -414,6 +413,20 @@
|
|||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if collection_list %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
<div class="action-panel__label">{% trans '相关收藏单' %}</div>
|
||||
<div >
|
||||
{% for c in collection_list %}
|
||||
<p>
|
||||
<a href="{% url 'collection:retrieve' c.id %}">{{ c.title }}</a>
|
||||
</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
|
@ -18,6 +18,7 @@ from common.models import SourceSiteEnum
|
|||
from .models import *
|
||||
from .forms import *
|
||||
from django.conf import settings
|
||||
from collection.models import CollectionItem
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
@ -195,6 +196,7 @@ def retrieve(request, id):
|
|||
review_list_more = True if len(
|
||||
review_list) > REVIEW_NUMBER else False
|
||||
review_list = review_list[:REVIEW_NUMBER]
|
||||
collection_list = filter(lambda c: c.is_visible_to(request.user), map(lambda i: i.collection, CollectionItem.objects.filter(movie=movie)))
|
||||
|
||||
# def strip_html_tags(text):
|
||||
# import re
|
||||
|
@ -219,6 +221,7 @@ def retrieve(request, id):
|
|||
'review_list_more': review_list_more,
|
||||
'movie_tag_list': movie_tag_list,
|
||||
'mark_tags': mark_tags,
|
||||
'collection_list': collection_list,
|
||||
}
|
||||
)
|
||||
else:
|
||||
|
|
|
@ -350,6 +350,21 @@
|
|||
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if collection_list %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
<div class="action-panel__label">{% trans '相关收藏单' %}</div>
|
||||
<div >
|
||||
{% for c in collection_list %}
|
||||
<p>
|
||||
<a href="{% url 'collection:retrieve' c.id %}">{{ c.title }}</a>
|
||||
</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if album.get_embed_link %}
|
||||
<iframe src="{{ album.get_embed_link }}" height="320" frameborder="0" allowtransparency="true" allow="encrypted-media"></iframe>
|
||||
|
|
|
@ -297,6 +297,21 @@
|
|||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if collection_list %}
|
||||
<div class="aside-section-wrapper">
|
||||
<div class="action-panel">
|
||||
<div class="action-panel__label">{% trans '相关收藏单' %}</div>
|
||||
<div >
|
||||
{% for c in collection_list %}
|
||||
<p>
|
||||
<a href="{% url 'collection:retrieve' c.id %}">{{ c.title }}</a>
|
||||
</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if song.source_site == "spotify" %}
|
||||
<iframe src="{{ song.get_embed_link }}" height="80" frameborder="0" allowtransparency="true" allow="encrypted-media"></iframe>
|
||||
{% endif %}
|
||||
|
|
|
@ -18,6 +18,7 @@ from django.contrib.auth.decorators import login_required, permission_required
|
|||
from django.shortcuts import render, get_object_or_404, redirect, reverse
|
||||
import logging
|
||||
from django.shortcuts import render
|
||||
from collection.models import CollectionItem
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
@ -214,6 +215,7 @@ def retrieve_song(request, id):
|
|||
review_list_more = True if len(
|
||||
review_list) > REVIEW_NUMBER else False
|
||||
review_list = review_list[:REVIEW_NUMBER]
|
||||
collection_list = filter(lambda c: c.is_visible_to(request.user), map(lambda i: i.collection, CollectionItem.objects.filter(song=song)))
|
||||
|
||||
# def strip_html_tags(text):
|
||||
# import re
|
||||
|
@ -238,6 +240,7 @@ def retrieve_song(request, id):
|
|||
'review_list_more': review_list_more,
|
||||
'song_tag_list': song_tag_list,
|
||||
'mark_tags': mark_tags,
|
||||
'collection_list': collection_list,
|
||||
}
|
||||
)
|
||||
else:
|
||||
|
@ -787,6 +790,7 @@ def retrieve_album(request, id):
|
|||
review_list_more = True if len(
|
||||
review_list) > REVIEW_NUMBER else False
|
||||
review_list = review_list[:REVIEW_NUMBER]
|
||||
collection_list = filter(lambda c: c.is_visible_to(request.user), map(lambda i: i.collection, CollectionItem.objects.filter(album=album)))
|
||||
|
||||
# def strip_html_tags(text):
|
||||
# import re
|
||||
|
@ -811,6 +815,7 @@ def retrieve_album(request, id):
|
|||
'review_list_more': review_list_more,
|
||||
'album_tag_list': album_tag_list,
|
||||
'mark_tags': mark_tags,
|
||||
'collection_list': collection_list,
|
||||
}
|
||||
)
|
||||
else:
|
||||
|
|
Loading…
Add table
Reference in a new issue