|
16 | 16 | from config import SUBSCRIPTION_PAGE_TEMPLATE |
17 | 17 |
|
18 | 18 | from . import BaseOperation |
| 19 | +from .user import UserOperation |
19 | 20 |
|
20 | 21 | client_config = { |
21 | 22 | ConfigFormat.clash_meta: {"config_format": "clash_meta", "media_type": "text/yaml", "as_base64": False}, |
@@ -145,19 +146,21 @@ async def user_subscription( |
145 | 146 | if db_user.admin and db_user.admin.sub_template |
146 | 147 | else SUBSCRIPTION_PAGE_TEMPLATE |
147 | 148 | ) |
148 | | - |
| 149 | + |
149 | 150 | links = [] |
150 | 151 | if sub_settings.allow_browser_config: |
151 | 152 | 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) |
153 | 156 |
|
154 | 157 | return HTMLResponse( |
155 | 158 | render_template( |
156 | 159 | template, |
157 | 160 | { |
158 | 161 | "user": user, |
159 | 162 | "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), |
161 | 164 | }, |
162 | 165 | ) |
163 | 166 | ) |
@@ -211,11 +214,11 @@ async def user_subscription_apps(self, db: AsyncSession, token: str, request_url |
211 | 214 | sub_settings: SubSettings = await subscription_settings() |
212 | 215 | return self._make_apps_import_urls(request_url, sub_settings.applications) |
213 | 216 |
|
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]): |
215 | 218 | apps_with_updated_urls = [] |
216 | 219 | for app in applications: |
217 | 220 | 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) |
219 | 222 | apps_with_updated_urls.append(updated_app) |
220 | 223 |
|
221 | 224 | return apps_with_updated_urls |
|
0 commit comments