mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2025-07-01 12:32:09 +00:00
Display 'terminated' in title when service is terminated (#839)
This commit is contained in:
parent
dd0217b46b
commit
c213fb6216
1 changed files with 37 additions and 4 deletions
|
@ -144,8 +144,15 @@ func (s *SubService) genVmessLink(inbound *model.Inbound, email string, expiryTi
|
||||||
|
|
||||||
remainedTraffic := s.getRemainedTraffic(email)
|
remainedTraffic := s.getRemainedTraffic(email)
|
||||||
expiryTimeString := getExpiryTime(expiryTime)
|
expiryTimeString := getExpiryTime(expiryTime)
|
||||||
|
remark := ""
|
||||||
|
isTerminated := strings.Contains(expiryTimeString, "Terminated") || strings.Contains(remainedTraffic, "Terminated")
|
||||||
|
|
||||||
|
if isTerminated {
|
||||||
|
remark = fmt.Sprintf("%s: %s⛔️", email, "Terminated")
|
||||||
|
} else {
|
||||||
|
remark = fmt.Sprintf("%s: %s - %s", email, remainedTraffic, expiryTimeString)
|
||||||
|
}
|
||||||
|
|
||||||
remark := fmt.Sprintf("%s: %s- %s", email, remainedTraffic, expiryTimeString)
|
|
||||||
obj := map[string]interface{}{
|
obj := map[string]interface{}{
|
||||||
"v": "2",
|
"v": "2",
|
||||||
"ps": remark,
|
"ps": remark,
|
||||||
|
@ -457,8 +464,14 @@ func (s *SubService) genVlessLink(inbound *model.Inbound, email string, expiryTi
|
||||||
|
|
||||||
remainedTraffic := s.getRemainedTraffic(email)
|
remainedTraffic := s.getRemainedTraffic(email)
|
||||||
expiryTimeString := getExpiryTime(expiryTime)
|
expiryTimeString := getExpiryTime(expiryTime)
|
||||||
|
remark := ""
|
||||||
|
isTerminated := strings.Contains(expiryTimeString, "Terminated") || strings.Contains(remainedTraffic, "Terminated")
|
||||||
|
|
||||||
remark := fmt.Sprintf("%s: %s- %s", email, remainedTraffic, expiryTimeString)
|
if isTerminated {
|
||||||
|
remark = fmt.Sprintf("%s: %s⛔️", email, "Terminated")
|
||||||
|
} else {
|
||||||
|
remark = fmt.Sprintf("%s: %s - %s", email, remainedTraffic, expiryTimeString)
|
||||||
|
}
|
||||||
|
|
||||||
if len(domains) > 0 {
|
if len(domains) > 0 {
|
||||||
links := ""
|
links := ""
|
||||||
|
@ -669,8 +682,14 @@ func (s *SubService) genTrojanLink(inbound *model.Inbound, email string, expiryT
|
||||||
|
|
||||||
remainedTraffic := s.getRemainedTraffic(email)
|
remainedTraffic := s.getRemainedTraffic(email)
|
||||||
expiryTimeString := getExpiryTime(expiryTime)
|
expiryTimeString := getExpiryTime(expiryTime)
|
||||||
|
remark := ""
|
||||||
|
isTerminated := strings.Contains(expiryTimeString, "Terminated") || strings.Contains(remainedTraffic, "Terminated")
|
||||||
|
|
||||||
remark := fmt.Sprintf("%s: %s- %s", email, remainedTraffic, expiryTimeString)
|
if isTerminated {
|
||||||
|
remark = fmt.Sprintf("%s: %s⛔️", email, "Terminated")
|
||||||
|
} else {
|
||||||
|
remark = fmt.Sprintf("%s: %s - %s", email, remainedTraffic, expiryTimeString)
|
||||||
|
}
|
||||||
|
|
||||||
if len(domains) > 0 {
|
if len(domains) > 0 {
|
||||||
links := ""
|
links := ""
|
||||||
|
@ -772,8 +791,15 @@ func (s *SubService) genShadowsocksLink(inbound *model.Inbound, email string, ex
|
||||||
|
|
||||||
remainedTraffic := s.getRemainedTraffic(email)
|
remainedTraffic := s.getRemainedTraffic(email)
|
||||||
expiryTimeString := getExpiryTime(expiryTime)
|
expiryTimeString := getExpiryTime(expiryTime)
|
||||||
|
remark := ""
|
||||||
|
isTerminated := strings.Contains(expiryTimeString, "Terminated") || strings.Contains(remainedTraffic, "Terminated")
|
||||||
|
|
||||||
|
if isTerminated {
|
||||||
|
remark = fmt.Sprintf("%s: %s⛔️", clients[clientIndex].Email, "Terminated")
|
||||||
|
} else {
|
||||||
|
remark = fmt.Sprintf("%s: %s - %s", clients[clientIndex].Email, remainedTraffic, expiryTimeString)
|
||||||
|
}
|
||||||
|
|
||||||
remark := fmt.Sprintf("%s: %s- %s", clients[clientIndex].Email, remainedTraffic, expiryTimeString)
|
|
||||||
url.Fragment = remark
|
url.Fragment = remark
|
||||||
return url.String()
|
return url.String()
|
||||||
}
|
}
|
||||||
|
@ -825,6 +851,7 @@ func getExpiryTime(expiryTime int64) string {
|
||||||
expiryString := ""
|
expiryString := ""
|
||||||
|
|
||||||
timeDifference := expiryTime/1000 - now
|
timeDifference := expiryTime/1000 - now
|
||||||
|
isTerminated := timeDifference/3600 <= 0
|
||||||
|
|
||||||
if expiryTime == 0 {
|
if expiryTime == 0 {
|
||||||
expiryString = "♾ ⏳"
|
expiryString = "♾ ⏳"
|
||||||
|
@ -832,6 +859,8 @@ func getExpiryTime(expiryTime int64) string {
|
||||||
expiryString = fmt.Sprintf("%d %s⏳", timeDifference/86400, "Days")
|
expiryString = fmt.Sprintf("%d %s⏳", timeDifference/86400, "Days")
|
||||||
} else if expiryTime < 0 {
|
} else if expiryTime < 0 {
|
||||||
expiryString = fmt.Sprintf("%d %s⏳", expiryTime/-86400000, "Days")
|
expiryString = fmt.Sprintf("%d %s⏳", expiryTime/-86400000, "Days")
|
||||||
|
} else if isTerminated {
|
||||||
|
expiryString = fmt.Sprintf("%s⛔️", "Terminated")
|
||||||
} else {
|
} else {
|
||||||
expiryString = fmt.Sprintf("%d %s⏳", timeDifference/3600, "Hours")
|
expiryString = fmt.Sprintf("%d %s⏳", timeDifference/3600, "Hours")
|
||||||
}
|
}
|
||||||
|
@ -846,8 +875,12 @@ func (s *SubService) getRemainedTraffic(email string) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
remainedTraffic := ""
|
remainedTraffic := ""
|
||||||
|
isTerminated := traffic.Total-(traffic.Up+traffic.Down) < 0
|
||||||
|
|
||||||
if traffic.Total == 0 {
|
if traffic.Total == 0 {
|
||||||
remainedTraffic = "♾ 📊"
|
remainedTraffic = "♾ 📊"
|
||||||
|
} else if isTerminated {
|
||||||
|
remainedTraffic = fmt.Sprintf("%s⛔️", "Terminated")
|
||||||
} else {
|
} else {
|
||||||
remainedTraffic = fmt.Sprintf("%s%s", common.FormatTraffic(traffic.Total-(traffic.Up+traffic.Down)), "📊")
|
remainedTraffic = fmt.Sprintf("%s%s", common.FormatTraffic(traffic.Total-(traffic.Up+traffic.Down)), "📊")
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue