Refactor subscription handling by removing SubConfig model, updating BuildSub function to use ConvertConfig, and enhancing Base64 decoding across parsers. Update routes and frontend to support new configuration format.

This commit is contained in:
2025-07-22 04:09:00 +00:00
parent 83a728a415
commit 80d91efca4
15 changed files with 329 additions and 424 deletions

31
utils/base64.go Normal file
View File

@@ -0,0 +1,31 @@
package utils
import (
"encoding/base64"
"strings"
)
func DecodeBase64(s string, urlSafe bool) (string, error) {
s = strings.TrimSpace(s)
if len(s)%4 != 0 {
s += strings.Repeat("=", 4-len(s)%4)
}
var decodeStr []byte
var err error
if urlSafe {
decodeStr, err = base64.URLEncoding.DecodeString(s)
} else {
decodeStr, err = base64.StdEncoding.DecodeString(s)
}
if err != nil {
return "", err
}
return string(decodeStr), nil
}
func EncodeBase64(s string, urlSafe bool) string {
if urlSafe {
return base64.URLEncoding.EncodeToString([]byte(s))
}
return base64.StdEncoding.EncodeToString([]byte(s))
}