47 lines
738 B
Go
47 lines
738 B
Go
package main
|
|
|
|
import (
|
|
"net/http"
|
|
"strings"
|
|
)
|
|
|
|
func getOriginalHost(r *http.Request) string {
|
|
proxyHost := r.Header.Get("X-Forwarded-Host")
|
|
if proxyHost != "" {
|
|
return proxyHost
|
|
}
|
|
return r.Host
|
|
}
|
|
|
|
func getClientIp(r *http.Request) string {
|
|
ip := r.Header.Get("X-Forwarded-For")
|
|
if ip == "" {
|
|
ip = r.RemoteAddr
|
|
}
|
|
return ip
|
|
}
|
|
|
|
func getCurrency(country string) string {
|
|
if country == "no" {
|
|
return "NOK"
|
|
}
|
|
return "SEK"
|
|
}
|
|
|
|
func getLocale(country string) string {
|
|
if country == "no" {
|
|
return "nb-no"
|
|
}
|
|
return "sv-se"
|
|
}
|
|
|
|
func getCountryFromHost(host string) string {
|
|
if strings.Contains(strings.ToLower(host), "-no") {
|
|
return "no"
|
|
}
|
|
if strings.Contains(strings.ToLower(host), "-se") {
|
|
return "se"
|
|
}
|
|
return ""
|
|
}
|