Skip to content

Commit 49ff13a

Browse files
fix(subscription): improve URL handling for applications
1 parent 2221db9 commit 49ff13a

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

app/operation/subscription.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from config import SUBSCRIPTION_PAGE_TEMPLATE
1717

1818
from . import BaseOperation
19+
from .user import UserOperation
1920

2021
client_config = {
2122
ConfigFormat.clash_meta: {"config_format": "clash_meta", "media_type": "text/yaml", "as_base64": False},
@@ -145,19 +146,21 @@ async def user_subscription(
145146
if db_user.admin and db_user.admin.sub_template
146147
else SUBSCRIPTION_PAGE_TEMPLATE
147148
)
148-
149+
149150
links = []
150151
if sub_settings.allow_browser_config:
151152
conf, media_type = await self.fetch_config(user, ConfigFormat.links)
152-
links = conf.split("\n")
153+
links = conf.splitlines()
154+
155+
sub_url = await UserOperation.generate_subscription_url(db_user)
153156

154157
return HTMLResponse(
155158
render_template(
156159
template,
157160
{
158161
"user": user,
159162
"links": links,
160-
"apps": self._make_apps_import_urls(request_url, sub_settings.applications),
163+
"apps": self._make_apps_import_urls(sub_url, sub_settings.applications),
161164
},
162165
)
163166
)
@@ -211,11 +214,11 @@ async def user_subscription_apps(self, db: AsyncSession, token: str, request_url
211214
sub_settings: SubSettings = await subscription_settings()
212215
return self._make_apps_import_urls(request_url, sub_settings.applications)
213216

214-
def _make_apps_import_urls(self, request_url: str, applications: list[Application]):
217+
def _make_apps_import_urls(self, sub_url: str, applications: list[Application]):
215218
apps_with_updated_urls = []
216219
for app in applications:
217220
updated_app = app.model_copy()
218-
updated_app.import_url = app.import_url.format(url=request_url)
221+
updated_app.import_url = app.import_url.format(url=sub_url)
219222
apps_with_updated_urls.append(updated_app)
220223

221224
return apps_with_updated_urls

0 commit comments

Comments
 (0)