🐛 fix: Update getUserSubscribe function to accept short and token parameters for improved URL generation

This commit is contained in:
web@ppanel 2025-12-30 06:10:44 +00:00
parent 1c93df8172
commit 39ebd09f09
4 changed files with 16 additions and 14 deletions

View File

@ -251,7 +251,7 @@ function RowMoreActions({
onSelect={async (e) => {
e.preventDefault();
await navigator.clipboard.writeText(
getUserSubscribeUrls(token)[0] || ""
getUserSubscribeUrls(row.short, token)[0] || ""
);
toast.success(t("copySuccess", "Copied successfully"));
}}

View File

@ -8,7 +8,7 @@ export interface GlobalStore {
setCommon: (common: Partial<API.GetGlobalConfigResponse>) => void;
setUser: (user?: API.User) => void;
getUserInfo: () => Promise<void>;
getUserSubscribe: (uuid: string, type?: string) => string[];
getUserSubscribe: (short: string, token: string, type?: string) => string[];
getAppSubLink: (url: string, schema?: string) => string;
}
@ -120,7 +120,7 @@ export const useGlobalStore = create<GlobalStore>((set, get) => ({
console.error("Failed to refresh user:", error);
}
},
getUserSubscribe: (uuid: string, type?: string) => {
getUserSubscribe: (short: string, token: string, type?: string) => {
const { pan_domain, subscribe_domain, subscribe_path } =
get().common.subscribe || {};
const domains = subscribe_domain
@ -129,12 +129,13 @@ export const useGlobalStore = create<GlobalStore>((set, get) => ({
return domains.map((domain) => {
if (pan_domain) {
if (type) return `https://${uuid}.${type}.${domain}`;
return `https://${uuid}.${domain}`;
if (type)
return `https://${short}.${type}.${domain}${subscribe_path}?token=${token}&type=${type}`;
return `https://${short}.${domain}${subscribe_path}?token=${token}`;
}
if (type)
return `https://${domain}${subscribe_path}?token=${uuid}&type=${type}`;
return `https://${domain}${subscribe_path}?token=${uuid}`;
return `https://${domain}${subscribe_path}?token=${token}&type=${type}`;
return `https://${domain}${subscribe_path}?token=${token}`;
});
},
getAppSubLink: (url: string, schema?: string) => {

View File

@ -394,7 +394,7 @@ export default function Content() {
defaultValue="0"
type="single"
>
{getUserSubscribe(item.token, protocol)?.map(
{getUserSubscribe(item.short, item.token, protocol)?.map(
(url, index) => (
<AccordionItem key={url} value={String(index)}>
<AccordionTrigger className="hover:no-underline">

View File

@ -8,7 +8,7 @@ export interface GlobalStore {
setCommon: (common: Partial<API.GetGlobalConfigResponse>) => void;
setUser: (user?: API.User) => void;
getUserInfo: () => Promise<void>;
getUserSubscribe: (uuid: string, type?: string) => string[];
getUserSubscribe: (short: string, token: string, type?: string) => string[];
getAppSubLink: (url: string, schema?: string) => string;
}
@ -120,7 +120,7 @@ export const useGlobalStore = create<GlobalStore>((set, get) => ({
console.error("Failed to refresh user:", error);
}
},
getUserSubscribe: (uuid: string, type?: string) => {
getUserSubscribe: (short: string, token: string, type?: string) => {
const { pan_domain, subscribe_domain, subscribe_path } =
get().common.subscribe || {};
const domains = subscribe_domain
@ -129,12 +129,13 @@ export const useGlobalStore = create<GlobalStore>((set, get) => ({
return domains.map((domain) => {
if (pan_domain) {
if (type) return `https://${uuid}.${type}.${domain}`;
return `https://${uuid}.${domain}`;
if (type)
return `https://${short}.${type}.${domain}${subscribe_path}?token=${token}&type=${type}`;
return `https://${short}.${domain}${subscribe_path}?token=${token}`;
}
if (type)
return `https://${domain}${subscribe_path}?token=${uuid}&type=${type}`;
return `https://${domain}${subscribe_path}?token=${uuid}`;
return `https://${domain}${subscribe_path}?token=${token}&type=${type}`;
return `https://${domain}${subscribe_path}?token=${token}`;
});
},
getAppSubLink: (url: string, schema?: string) => {