diff --git a/src/components/cards/MediaCard.vue b/src/components/cards/MediaCard.vue index 5bfdb879..37e8f295 100644 --- a/src/components/cards/MediaCard.vue +++ b/src/components/cards/MediaCard.vue @@ -157,7 +157,7 @@ async function addSubscribe(season = 0) { // 弹出订阅编辑弹窗 if (result.success && seasonsSelected.value.length <= 1) { - const show_edit_dialog = await querySubscribeRules() + const show_edit_dialog = await queryDefaultSubscribeConfig() if (show_edit_dialog) { subscribeId.value = result.data.id subscribeEditDialog.value = true @@ -313,11 +313,16 @@ async function getMediaSeasons() { } // 查询订阅弹窗规则 -async function querySubscribeRules() { +async function queryDefaultSubscribeConfig() { try { - const result: { [key: string]: any } = await api.get( - 'system/setting/DefaultFilterRules', - ) + let subscribe_config_url = '' + if (props.media?.type === '电影') + subscribe_config_url = 'system/setting/DefaultMovieSubscribeConfig' + else + subscribe_config_url = 'system/setting/DefaultTvSubscribeConfig' + + const result: { [key: string]: any } = await api.get(subscribe_config_url) + if (result.data?.value) return result.data.value.show_edit_dialog } diff --git a/src/components/dialog/SubscribeEditDialog.vue b/src/components/dialog/SubscribeEditDialog.vue index d0708c16..db089076 100644 --- a/src/components/dialog/SubscribeEditDialog.vue +++ b/src/components/dialog/SubscribeEditDialog.vue @@ -43,7 +43,8 @@ const subscribeForm = ref({ username: '', current_priority: 0, save_path: '', - date: '' + date: '', + show_edit_dialog: false }) // 提示框 @@ -413,6 +414,16 @@ onMounted(() => { hint="开启后将使用 ImdbID 搜索资源,搜索结果更精确,但不是所有站点都支持" /> + + + diff --git a/src/views/discover/MediaDetailView.vue b/src/views/discover/MediaDetailView.vue index 0d0c013b..d817a011 100644 --- a/src/views/discover/MediaDetailView.vue +++ b/src/views/discover/MediaDetailView.vue @@ -46,11 +46,6 @@ const seasonsSubscribed = ref<{ [key: number]: boolean }>({}) // 订阅编号 const subscribeId = ref() -// 订阅规则 -const subscribeRules = ref({ - show_edit_dialog: false, -}) - // 获得mediaid function getMediaId() { return mediaDetail.value?.tmdb_id @@ -230,9 +225,12 @@ async function addSubscribe(season = 0) { ) // 显示编辑弹窗 - if (result.success && subscribeRules.value.show_edit_dialog) { - subscribeId.value = result.data.id - subscribeEditDialog.value = true + if (result.success) { + const show_edit_dialog = await queryDefaultSubscribeConfig() + if (show_edit_dialog) { + subscribeId.value = result.data.id + subscribeEditDialog.value = true + } } } catch (error) { @@ -290,20 +288,6 @@ async function removeSubscribe(season: number) { doneNProgress() } -// 查询订阅弹窗规则 -async function querySubscribeRules() { - try { - const result: { [key: string]: any } = await api.get( - 'system/setting/DefaultFilterRules', - ) - if (result.data?.value) - subscribeRules.value = result.data?.value - } - catch (error) { - console.log(error) - } -} - // 订阅按钮响应 function handleSubscribe(season = 0) { if (isSubscribed.value) @@ -450,9 +434,27 @@ async function handlePlay() { } } +async function queryDefaultSubscribeConfig() { + try { + let subscribe_config_url = '' + if (mediaProps.type === '电影') + subscribe_config_url = 'system/setting/DefaultMovieSubscribeConfig' + else + subscribe_config_url = 'system/setting/DefaultTvSubscribeConfig' + + const result: { [key: string]: any } = await api.get(subscribe_config_url) + + if (result.data?.value) + return result.data.value.show_edit_dialog + } + catch (error) { + console.log(error) + } + return false +} + onBeforeMount(() => { getMediaDetail() - querySubscribeRules() }) diff --git a/src/views/setting/AccountSettingSubscribe.vue b/src/views/setting/AccountSettingSubscribe.vue index f242ed33..1dca788e 100644 --- a/src/views/setting/AccountSettingSubscribe.vue +++ b/src/views/setting/AccountSettingSubscribe.vue @@ -41,8 +41,7 @@ const defaultFilterRules = ref({ exclude: '', movie_size: '', tv_size: '', - min_seeders: 0, - show_edit_dialog: false, + min_seeders: 0 }) // 订阅模式选择项 @@ -622,13 +621,6 @@ onMounted(() => { hint="小于该值的资源将被过滤掉,0表示不过滤" /> - - -