From fad1c82bef91cff9d63e2511d69251a3221fd5a2 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sat, 11 Feb 2023 12:22:52 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E9=AB=98=E7=BA=A7=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E6=97=B6=E5=90=8D=E7=A7=B0=E4=B8=8D=E5=88=86=E7=BB=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helper/db_helper.py | 67 +++++++-------- web/action.py | 2 +- web/backend/search_torrents.py | 4 +- web/templates/search.html | 148 ++++++++++++++++----------------- 4 files changed, 111 insertions(+), 110 deletions(-) diff --git a/app/helper/db_helper.py b/app/helper/db_helper.py index 6adff56bb..7b6b66cce 100644 --- a/app/helper/db_helper.py +++ b/app/helper/db_helper.py @@ -15,7 +15,7 @@ class DbHelper: _db = MainDb() @DbPersist(_db) - def insert_search_results(self, media_items: list): + def insert_search_results(self, media_items: list, title=None, ident_flag=True): """ 将返回信息插入数据库 """ @@ -29,38 +29,39 @@ def insert_search_results(self, media_items: list): mtype = "MOV" else: mtype = "ANI" - data_list.append(SEARCHRESULTINFO( - TORRENT_NAME=media_item.org_string, - ENCLOSURE=media_item.enclosure, - DESCRIPTION=media_item.description, - TYPE=mtype, - TITLE=media_item.title or media_item.get_name(), - YEAR=media_item.year, - SEASON=media_item.get_season_string(), - EPISODE=media_item.get_episode_string(), - ES_STRING=media_item.get_season_episode_string(), - VOTE=media_item.vote_average or "0", - IMAGE=media_item.get_backdrop_image(default=False), - POSTER=media_item.get_poster_image(), - TMDBID=media_item.tmdb_id, - OVERVIEW=media_item.overview, - RES_TYPE=json.dumps({ - "respix": media_item.resource_pix, - "restype": media_item.resource_type, - "reseffect": media_item.resource_effect, - "video_encode": media_item.video_encode - }), - RES_ORDER=media_item.res_order, - SIZE=StringUtils.str_filesize(int(media_item.size)), - SEEDERS=media_item.seeders, - PEERS=media_item.peers, - SITE=media_item.site, - SITE_ORDER=media_item.site_order, - PAGEURL=media_item.page_url, - OTHERINFO=media_item.resource_team, - UPLOAD_VOLUME_FACTOR=media_item.upload_volume_factor, - DOWNLOAD_VOLUME_FACTOR=media_item.download_volume_factor - )) + data_list.append( + SEARCHRESULTINFO( + TORRENT_NAME=media_item.org_string, + ENCLOSURE=media_item.enclosure, + DESCRIPTION=media_item.description, + TYPE=mtype if ident_flag else '', + TITLE=media_item.title if ident_flag else title, + YEAR=media_item.year if ident_flag else '', + SEASON=media_item.get_season_string() if ident_flag else '', + EPISODE=media_item.get_episode_string() if ident_flag else '', + ES_STRING=media_item.get_season_episode_string() if ident_flag else '', + VOTE=media_item.vote_average or "0", + IMAGE=media_item.get_backdrop_image(default=False), + POSTER=media_item.get_poster_image(), + TMDBID=media_item.tmdb_id, + OVERVIEW=media_item.overview, + RES_TYPE=json.dumps({ + "respix": media_item.resource_pix, + "restype": media_item.resource_type, + "reseffect": media_item.resource_effect, + "video_encode": media_item.video_encode + }), + RES_ORDER=media_item.res_order, + SIZE=StringUtils.str_filesize(int(media_item.size)), + SEEDERS=media_item.seeders, + PEERS=media_item.peers, + SITE=media_item.site, + SITE_ORDER=media_item.site_order, + PAGEURL=media_item.page_url, + OTHERINFO=media_item.resource_team, + UPLOAD_VOLUME_FACTOR=media_item.upload_volume_factor, + DOWNLOAD_VOLUME_FACTOR=media_item.download_volume_factor + )) self._db.insert(data_list) def get_search_result_by_id(self, dl_id): diff --git a/web/action.py b/web/action.py index b4d7cb600..c0d59f1f4 100644 --- a/web/action.py +++ b/web/action.py @@ -3502,7 +3502,7 @@ def get_search_result(self, data=None): title_string = f"{title_string} ({item.YEAR})" # 电视剧季集标识 mtype = item.TYPE or "" - SE_key = item.ES_STRING or "TV" if mtype != "MOV" else "MOV" + SE_key = item.ES_STRING if item.ES_STRING and mtype != "MOV" else "MOV" media_type = {"MOV": "电影", "TV": "电视剧", "ANI": "动漫"}.get(mtype) # 种子信息 torrent_item = { diff --git a/web/backend/search_torrents.py b/web/backend/search_torrents.py index 73e78bccc..6fdfce6c9 100644 --- a/web/backend/search_torrents.py +++ b/web/backend/search_torrents.py @@ -161,7 +161,9 @@ def search_medias_for_web(content, ident_flag=True, filters=None, tmdbid=None, m media_list = sorted(media_list, key=lambda x: "%s%s%s" % (str(x.res_order).rjust(3, '0'), str(x.site_order).rjust(3, '0'), str(x.seeders).rjust(10, '0')), reverse=True) - dbhepler.insert_search_results(media_list) + dbhepler.insert_search_results(media_items=media_list, + ident_flag=ident_flag, + title=content) return 0, "" diff --git a/web/templates/search.html b/web/templates/search.html index d11ac9149..668d9ea40 100644 --- a/web/templates/search.html +++ b/web/templates/search.html @@ -171,92 +171,90 @@

class="accordion-collapse collapse {% if loop.index0 == 0 %}show{% endif %}" data-bs-parent="#search_results_accordion_{{ Item.key }}">
-
-
- - {% for unique_key, unique in group.group_torrents.items() %} - {% for torrent in unique.torrent_list %} -
-
-
- - - {% if SiteDict[torrent.site|hash] %} - {% if SiteDict[torrent.site|hash].public or not SiteDict[torrent.site|hash].builtin %} - {{ torrent.site|first }} - {% endif %} - {% else %} - {{ torrent.site|first }} +
+ + {% for unique_key, unique in group.group_torrents.items() %} + {% for torrent in unique.torrent_list %} +
+
+ +
+ {{ torrent.torrent_name }} +
+ {{ torrent.description or '' }}
-
- {{ torrent.torrent_name }} -
- {{ torrent.description or '' }} -
-
- {{ torrent.site }} - {% if torrent.video_encode %} - {{ torrent.video_encode }} - {% endif %} - {% if torrent.reseffect %} - {{ torrent.reseffect }} - {% endif %} - {% if torrent.size %} - {{ torrent.size }} - {% endif %} - {% if torrent.releasegroup %} - {{ torrent.releasegroup }} - {% endif %} - {% if torrent.uploadvalue != 1.0 %} - {{ (torrent.uploadvalue * 100) | int }}%UL - {% endif %} - {% if torrent.downloadvalue != 1.0 %} - {% if torrent.downloadvalue == 0.0 %} - FREE - {% else %} - {{ (torrent.downloadvalue * 100) | int }}%DL - {% endif %} - {% endif %} - {% if torrent.seeders %} - {{ torrent.seeders }}{{ UPCHAR }} +
+ {{ torrent.site }} + {% if torrent.video_encode %} + {{ torrent.video_encode }} + {% endif %} + {% if torrent.reseffect %} + {{ torrent.reseffect }} + {% endif %} + {% if torrent.size %} + {{ torrent.size }} + {% endif %} + {% if torrent.releasegroup %} + {{ torrent.releasegroup }} + {% endif %} + {% if torrent.uploadvalue != 1.0 %} + {{ (torrent.uploadvalue * 100) | int }}%UL + {% endif %} + {% if torrent.downloadvalue != 1.0 %} + {% if torrent.downloadvalue == 0.0 %} + FREE + {% else %} + {{ (torrent.downloadvalue * 100) | int }}%DL {% endif %} -
+ {% endif %} + {% if torrent.seeders %} + {{ torrent.seeders }}{{ UPCHAR }} + {% endif %}
- + + - {% endfor %} +
{% endfor %} -
+ {% endfor %}
From 3f4b20438f20fda7a94a4004b4e31d06a230cb56 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sat, 11 Feb 2023 12:29:35 +0800 Subject: [PATCH 2/4] fix ui --- web/templates/search.html | 4 ---- 1 file changed, 4 deletions(-) diff --git a/web/templates/search.html b/web/templates/search.html index 668d9ea40..a4a78f5cc 100644 --- a/web/templates/search.html +++ b/web/templates/search.html @@ -99,11 +99,7 @@

- {% if Item.tmdbid and Item.tmdbid != '0' %} {{ Title }} - {% else %} - {{ Title }} - {% endif %}

From c1812a230c12512737e255aba712d23ae9536b49 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sat, 11 Feb 2023 12:43:29 +0800 Subject: [PATCH 3/4] fix ui --- web/templates/search.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/templates/search.html b/web/templates/search.html index a4a78f5cc..93097e3e6 100644 --- a/web/templates/search.html +++ b/web/templates/search.html @@ -2,7 +2,7 @@ {% import 'macro/oops.html' as OOPS %}
-