mirror of
https://github.com/mickael-kerjean/filestash.git
synced 2026-10-20 00:15:40 +00:00
57 lines
1.1 KiB
Go
57 lines
1.1 KiB
Go
package plg_authenticate_wordpress
|
|
|
|
import (
|
|
"strings"
|
|
)
|
|
|
|
func extractXMLValue(xml, key string) string {
|
|
start := strings.Index(xml, "<name>"+key+"</name>")
|
|
if start == -1 {
|
|
return ""
|
|
}
|
|
start = strings.Index(xml[start:], "<string>")
|
|
if start == -1 {
|
|
return ""
|
|
}
|
|
start += len("<string>")
|
|
end := strings.Index(xml[start:], "</string>")
|
|
if end == -1 {
|
|
return ""
|
|
}
|
|
return xml[start : start+end]
|
|
}
|
|
|
|
func extractXMLArray(xml, key string) []string {
|
|
start := strings.Index(xml, "<name>"+key+"</name>")
|
|
if start == -1 {
|
|
return []string{}
|
|
}
|
|
start = strings.Index(xml[start:], "<array>")
|
|
if start == -1 {
|
|
return []string{}
|
|
}
|
|
end := strings.Index(xml[start:], "</array>")
|
|
if end == -1 {
|
|
return []string{}
|
|
}
|
|
|
|
arrayXML := xml[start : start+end]
|
|
var values []string
|
|
|
|
for {
|
|
valStart := strings.Index(arrayXML, "<string>")
|
|
if valStart == -1 {
|
|
break
|
|
}
|
|
valStart += len("<string>")
|
|
valEnd := strings.Index(arrayXML[valStart:], "</string>")
|
|
if valEnd == -1 {
|
|
break
|
|
}
|
|
values = append(values, arrayXML[valStart:valStart+valEnd])
|
|
arrayXML = arrayXML[valStart+valEnd:]
|
|
}
|
|
|
|
return values
|
|
}
|