From b8dca18ea40d096238f01af7c3d04d31ae70da8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E7=94=B7?= Date: Fri, 1 May 2026 08:17:31 +0800 Subject: [PATCH] fix: support org_id from URL query param in course-package-store Co-Authored-By: Claude Opus 4.7 --- src/components/course-package-store.vue | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/components/course-package-store.vue b/src/components/course-package-store.vue index a3b0b59..7e923af 100644 --- a/src/components/course-package-store.vue +++ b/src/components/course-package-store.vue @@ -67,6 +67,13 @@ export default defineComponent({ const router = useRouter(); const { store, queryPublicPackages, queryOrgPackages } = useCoursePackage(); + const resolvedOrgId = computed(() => { + if (props.orgId) return props.orgId; + // Fallback to URL query param `org_id` (e.g. for shared store links) + const params = new URLSearchParams(window.location.search); + return params.get('org_id') || ''; + }); + const state = reactive({ loading: false, error: false, @@ -81,16 +88,11 @@ export default defineComponent({ state.loading = true; state.error = false; let ok: boolean; - if (props.orgId) { - ok = await queryPublicPackages(props.orgId); + const orgId = resolvedOrgId.value; + if (orgId) { + ok = await queryPublicPackages(orgId); } else { - // Fallback: use auth'd API if logged in, otherwise skip ok = isLoggedIn() ? await queryOrgPackages() : false; - if (!ok && !isLoggedIn()) { - state.loading = false; - state.error = false; - return; - } } state.error = !ok; state.loading = false;