diff options
Diffstat (limited to 'web/html')
| -rw-r--r-- | web/html/xui/client_bulk_modal.html | 6 | ||||
| -rw-r--r-- | web/html/xui/form/client.html | 4 | ||||
| -rw-r--r-- | web/html/xui/form/protocol/shadowsocks.html | 4 | ||||
| -rw-r--r-- | web/html/xui/form/protocol/trojan.html | 4 | ||||
| -rw-r--r-- | web/html/xui/form/protocol/vless.html | 4 | ||||
| -rw-r--r-- | web/html/xui/form/protocol/vmess.html | 4 | ||||
| -rw-r--r-- | web/html/xui/inbounds.html | 28 | ||||
| -rw-r--r-- | web/html/xui/settings.html | 18 |
8 files changed, 55 insertions, 17 deletions
diff --git a/web/html/xui/client_bulk_modal.html b/web/html/xui/client_bulk_modal.html index 076579a9..48eb2cbc 100644 --- a/web/html/xui/client_bulk_modal.html +++ b/web/html/xui/client_bulk_modal.html @@ -33,7 +33,7 @@ <span slot="label">{{ i18n "pages.client.clientCount" }}</span> <a-input-number v-model="clientsBulkModal.quantity" :min="1" :max="100"></a-input-number> </a-form-item> - <a-form-item> + <a-form-item v-if="app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -45,7 +45,7 @@ </span> <a-input v-model.trim="clientsBulkModal.subId"></a-input> </a-form-item> - <a-form-item> + <a-form-item v-if="app.tgBotEnable"> <span slot="label"> Telegram ID <a-tooltip> @@ -204,6 +204,7 @@ case Protocols.VMESS: return clientSettings.vmesses; case Protocols.VLESS: return clientSettings.vlesses; case Protocols.TROJAN: return clientSettings.trojans; + case Protocols.SHADOWSOCKS: return clientSettings.shadowsockses; default: return null; } }, @@ -212,6 +213,7 @@ case Protocols.VMESS: return new Inbound.VmessSettings.Vmess(); case Protocols.VLESS: return new Inbound.VLESSSettings.VLESS(); case Protocols.TROJAN: return new Inbound.TrojanSettings.Trojan(); + case Protocols.SHADOWSOCKS: return new Inbound.ShadowsocksSettings.Shadowsocks(); default: return null; } }, diff --git a/web/html/xui/form/client.html b/web/html/xui/form/client.html index 625ff0ca..9494f0ac 100644 --- a/web/html/xui/form/client.html +++ b/web/html/xui/form/client.html @@ -34,7 +34,7 @@ <a-icon @click="client.id = RandomUtil.randomUUID()" type="sync"> </a-icon> <a-input v-model.trim="client.id" style="width: 300px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -47,7 +47,7 @@ <a-icon @click="client.subId = RandomUtil.randomText()" type="sync"> </a-icon> <a-input v-model.trim="client.subId" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.tgBotEnable" > <span slot="label"> Telegram ID <a-tooltip> diff --git a/web/html/xui/form/protocol/shadowsocks.html b/web/html/xui/form/protocol/shadowsocks.html index aa3fde18..45385300 100644 --- a/web/html/xui/form/protocol/shadowsocks.html +++ b/web/html/xui/form/protocol/shadowsocks.html @@ -18,7 +18,7 @@ <a-icon @click="client.password = RandomUtil.randomShadowsocksPassword()" type="sync"> </a-icon> <a-input v-model.trim="client.password" style="width: 250px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -31,7 +31,7 @@ <a-icon @click="client.subId = RandomUtil.randomText()" type="sync"> </a-icon> <a-input v-model.trim="client.subId" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.tgBotEnable"> <span slot="label"> Telegram ID <a-tooltip> diff --git a/web/html/xui/form/protocol/trojan.html b/web/html/xui/form/protocol/trojan.html index b6a57644..caec459a 100644 --- a/web/html/xui/form/protocol/trojan.html +++ b/web/html/xui/form/protocol/trojan.html @@ -18,7 +18,7 @@ <a-icon @click="client.password = RandomUtil.randomSeq(10)" type="sync"> </a-icon> <a-input v-model.trim="client.password" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -31,7 +31,7 @@ <a-icon @click="client.subId = RandomUtil.randomText()" type="sync"> </a-icon> <a-input v-model.trim="client.subId" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.tgBotEnable"> <span slot="label"> Telegram ID <a-tooltip> diff --git a/web/html/xui/form/protocol/vless.html b/web/html/xui/form/protocol/vless.html index f2678065..3155ee28 100644 --- a/web/html/xui/form/protocol/vless.html +++ b/web/html/xui/form/protocol/vless.html @@ -18,7 +18,7 @@ <a-icon @click="client.id = RandomUtil.randomUUID()" type="sync"> </a-icon> <a-input v-model.trim="client.id" style="width: 300px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -31,7 +31,7 @@ <a-icon @click="client.subId = RandomUtil.randomText()" type="sync"> </a-icon> <a-input v-model.trim="client.subId" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.tgBotEnable"> <span slot="label"> Telegram ID <a-tooltip> diff --git a/web/html/xui/form/protocol/vmess.html b/web/html/xui/form/protocol/vmess.html index d46c16f9..469440c6 100644 --- a/web/html/xui/form/protocol/vmess.html +++ b/web/html/xui/form/protocol/vmess.html @@ -23,7 +23,7 @@ <a-icon @click="client.id = RandomUtil.randomUUID()" type="sync"> </a-icon> <a-input v-model.trim="client.id" style="width: 300px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.subSettings.enable"> <span slot="label"> Subscription <a-tooltip> @@ -36,7 +36,7 @@ <a-icon @click="client.subId = RandomUtil.randomText()" type="sync"> </a-icon> <a-input v-model.trim="client.subId" style="width: 150px;"></a-input> </a-form-item> - <a-form-item v-if="client.email"> + <a-form-item v-if="client.email && app.tgBotEnable"> <span slot="label"> Telegram ID <a-tooltip> diff --git a/web/html/xui/inbounds.html b/web/html/xui/inbounds.html index b15798d4..e4d76f7e 100644 --- a/web/html/xui/inbounds.html +++ b/web/html/xui/inbounds.html @@ -343,7 +343,15 @@ clientCount: {}, isRefreshEnabled: localStorage.getItem("isRefreshEnabled") === "true" ? true : false, refreshing: false, - refreshInterval: Number(localStorage.getItem("refreshInterval")) || 5000 + refreshInterval: Number(localStorage.getItem("refreshInterval")) || 5000, + subSettings: { + enable : false, + port: 0, + path: '', + domain: '', + tls: false + }, + tgBotEnable: false }, methods: { loading(spinning = true) { @@ -365,10 +373,20 @@ if (!msg.success) { return; } - this.expireDiff = msg.obj.expireDiff * 86400000; - this.trafficDiff = msg.obj.trafficDiff * 1073741824; - this.defaultCert = msg.obj.defaultCert; - this.defaultKey = msg.obj.defaultKey; + with(msg.obj){ + this.expireDiff = expireDiff * 86400000; + this.trafficDiff = trafficDiff * 1073741824; + this.defaultCert = defaultCert; + this.defaultKey = defaultKey; + this.tgBotEnable = tgBotEnable; + this.subSettings = { + enable : subEnable, + port: subPort, + path: subPath, + domain: subDomain, + tls: subTLS + }; + } }, setInbounds(dbInbounds) { this.inbounds.splice(0); diff --git a/web/html/xui/settings.html b/web/html/xui/settings.html index f5ea4994..b838b17f 100644 --- a/web/html/xui/settings.html +++ b/web/html/xui/settings.html @@ -363,6 +363,24 @@ </a-list-item> </a-list> </a-tab-pane> + <a-tab-pane key="5" tab='{{ i18n "pages.settings.subSettings" }}'> + <a-row :xs="24" :sm="24" :lg="12"> + <h2 style="color: inherit; font-weight: bold; font-size: 18px; padding: 20px 20px; text-align: center;"> + <a-icon type="warning" style="color: inherit; font-size: 24px;"></a-icon> + {{ i18n "pages.settings.infoDesc" }} + </h2> + </a-row> + <a-list item-layout="horizontal" :style="themeSwitcher.textStyle"> + <setting-list-item type="switch" title='{{ i18n "pages.settings.subEnable"}}' desc='{{ i18n "pages.settings.subEnableDesc"}}' v-model="allSetting.subEnable"></setting-list-item> + <setting-list-item type="text" title='{{ i18n "pages.settings.subListen"}}' desc='{{ i18n "pages.settings.subListenDesc"}}' v-model="allSetting.subListen"></setting-list-item> + <setting-list-item type="number" title='{{ i18n "pages.settings.subPort"}}' desc='{{ i18n "pages.settings.subPortDesc"}}' v-model.number="allSetting.subPort"></setting-list-item> + <setting-list-item type="text" title='{{ i18n "pages.settings.subPath"}}' desc='{{ i18n "pages.settings.subPathDesc"}}' v-model="allSetting.subPath"></setting-list-item> + <setting-list-item type="text" title='{{ i18n "pages.settings.subDomain"}}' desc='{{ i18n "pages.settings.subDomainDesc"}}' v-model="allSetting.subDomain"></setting-list-item> + <setting-list-item type="text" title='{{ i18n "pages.settings.subCertPath"}}' desc='{{ i18n "pages.settings.subCertPathDesc"}}' v-model="allSetting.subCertFile"></setting-list-item> + <setting-list-item type="text" title='{{ i18n "pages.settings.subKeyPath"}}' desc='{{ i18n "pages.settings.subKeyPathDesc"}}' v-model="allSetting.subKeyFile"></setting-list-item> + <setting-list-item type="number" title='{{ i18n "pages.settings.subUpdates"}}' desc='{{ i18n "pages.settings.subUpdatesDesc"}}' v-model="allSetting.subUpdates"></setting-list-item> + </a-list> + </a-tab-pane> </a-tabs> </a-space> </a-spin> |
