diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index f13462eb..67329344 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -124,4 +124,3 @@ jobs:
file: x-ui-linux-${{ matrix.platform }}.tar.gz
asset_name: x-ui-linux-${{ matrix.platform }}.tar.gz
prerelease: true
- draft: true
diff --git a/web/assets/css/custom.css b/web/assets/css/custom.css
index f4a13b51..53c1168a 100644
--- a/web/assets/css/custom.css
+++ b/web/assets/css/custom.css
@@ -1171,3 +1171,7 @@ b, strong {
background-color: var(--dark-color-btn-danger-hover);
border-color: var(--dark-color-btn-danger-hover);
}
+
+.dark .ant-alert-close-icon .anticon-close:hover {
+ color: rgb(255 255 255);
+}
\ No newline at end of file
diff --git a/web/html/xui/inbounds.html b/web/html/xui/inbounds.html
index a2365cde..117cbffb 100644
--- a/web/html/xui/inbounds.html
+++ b/web/html/xui/inbounds.html
@@ -186,7 +186,7 @@
- Port
[[ r ]] |
+
+ Balancer Tag |
+ [[ rule.balancerTag ]] |
+
diff --git a/web/html/xui/xray_balancer_modal.html b/web/html/xui/xray_balancer_modal.html
index 627aecf6..78b15fda 100644
--- a/web/html/xui/xray_balancer_modal.html
+++ b/web/html/xui/xray_balancer_modal.html
@@ -23,7 +23,8 @@
Round Robin
-
+
[[ tag ]]
@@ -74,17 +75,18 @@
this.balancerTags = balancerTags.filter((tag) => tag != balancer.tag);
this.outboundTags = app.templateSettings.outbounds.filter((o) => !ObjectUtil.isEmpty(o.tag)).map(obj => obj.tag);
this.isEdit = isEdit;
- this.check()
+ this.check();
+ this.checkSelector();
},
close() {
- balancerModal.visible = false;
- balancerModal.loading(false);
+ this.visible = false;
+ this.loading(false);
},
loading(loading=true) {
- balancerModal.confirmLoading = loading;
+ this.confirmLoading = loading;
},
check() {
- if (balancerModal.balancer.tag == '' || balancerModal.balancerTags.includes(balancerModal.balancer.tag)) {
+ if (this.balancer.tag == '' || this.balancerTags.includes(this.balancer.tag)) {
this.duplicateTag = true;
this.isValid = false;
} else {
@@ -93,7 +95,7 @@
}
},
checkSelector() {
- balancerModal.emptySelector = balancerModal.balancer.selector.length == 0;
+ this.emptySelector = this.balancer.selector.length == 0;
}
};
diff --git a/web/service/inbound.go b/web/service/inbound.go
index 6a3dac5d..f637c0b2 100644
--- a/web/service/inbound.go
+++ b/web/service/inbound.go
@@ -1900,6 +1900,13 @@ func (s *InboundService) MigrationRequirements() {
newStream, _ := json.MarshalIndent(stream, " ", " ")
tx.Model(model.Inbound{}).Where("id = ?", ep.Id).Update("stream_settings", newStream)
}
+
+ err = tx.Raw(`UPDATE inbounds
+ SET tag = REPLACE(tag, '0.0.0.0:', '')
+ WHERE INSTR(tag, '0.0.0.0:') > 0;`).Error
+ if err != nil {
+ return
+ }
}
func (s *InboundService) MigrateDB() {