f995a868e4
rafactor: payment
101 lines
2.6 KiB
Go
101 lines
2.6 KiB
Go
package controller
|
|
|
|
import (
|
|
"strings"
|
|
|
|
"github.com/QuantumNous/new-api/setting"
|
|
"github.com/QuantumNous/new-api/setting/operation_setting"
|
|
)
|
|
|
|
func isStripeTopUpEnabled() bool {
|
|
return strings.TrimSpace(setting.StripeApiSecret) != "" &&
|
|
strings.TrimSpace(setting.StripeWebhookSecret) != "" &&
|
|
strings.TrimSpace(setting.StripePriceId) != ""
|
|
}
|
|
|
|
func isStripeWebhookConfigured() bool {
|
|
return strings.TrimSpace(setting.StripeWebhookSecret) != ""
|
|
}
|
|
|
|
func isStripeWebhookEnabled() bool {
|
|
return isStripeTopUpEnabled()
|
|
}
|
|
|
|
func isCreemTopUpEnabled() bool {
|
|
products := strings.TrimSpace(setting.CreemProducts)
|
|
return strings.TrimSpace(setting.CreemApiKey) != "" &&
|
|
products != "" &&
|
|
products != "[]"
|
|
}
|
|
|
|
func isCreemWebhookConfigured() bool {
|
|
return strings.TrimSpace(setting.CreemWebhookSecret) != ""
|
|
}
|
|
|
|
func isCreemWebhookEnabled() bool {
|
|
return isCreemTopUpEnabled() && isCreemWebhookConfigured()
|
|
}
|
|
|
|
func isWaffoTopUpEnabled() bool {
|
|
if !setting.WaffoEnabled {
|
|
return false
|
|
}
|
|
|
|
return isWaffoWebhookConfigured()
|
|
}
|
|
|
|
func isWaffoWebhookConfigured() bool {
|
|
if setting.WaffoSandbox {
|
|
return strings.TrimSpace(setting.WaffoSandboxApiKey) != "" &&
|
|
strings.TrimSpace(setting.WaffoSandboxPrivateKey) != "" &&
|
|
strings.TrimSpace(setting.WaffoSandboxPublicCert) != ""
|
|
}
|
|
|
|
return strings.TrimSpace(setting.WaffoApiKey) != "" &&
|
|
strings.TrimSpace(setting.WaffoPrivateKey) != "" &&
|
|
strings.TrimSpace(setting.WaffoPublicCert) != ""
|
|
}
|
|
|
|
func isWaffoWebhookEnabled() bool {
|
|
return isWaffoTopUpEnabled()
|
|
}
|
|
|
|
func isWaffoPancakeTopUpEnabled() bool {
|
|
if !setting.WaffoPancakeEnabled {
|
|
return false
|
|
}
|
|
|
|
return isWaffoPancakeWebhookConfigured() &&
|
|
strings.TrimSpace(setting.WaffoPancakeMerchantID) != "" &&
|
|
strings.TrimSpace(setting.WaffoPancakePrivateKey) != "" &&
|
|
strings.TrimSpace(setting.WaffoPancakeStoreID) != "" &&
|
|
strings.TrimSpace(setting.WaffoPancakeProductID) != ""
|
|
}
|
|
|
|
func isWaffoPancakeWebhookConfigured() bool {
|
|
currentWebhookKey := strings.TrimSpace(setting.WaffoPancakeWebhookPublicKey)
|
|
if setting.WaffoPancakeSandbox {
|
|
currentWebhookKey = strings.TrimSpace(setting.WaffoPancakeWebhookTestKey)
|
|
}
|
|
|
|
return currentWebhookKey != ""
|
|
}
|
|
|
|
func isWaffoPancakeWebhookEnabled() bool {
|
|
return isWaffoPancakeTopUpEnabled()
|
|
}
|
|
|
|
func isEpayTopUpEnabled() bool {
|
|
return isEpayWebhookConfigured() && len(operation_setting.PayMethods) > 0
|
|
}
|
|
|
|
func isEpayWebhookConfigured() bool {
|
|
return strings.TrimSpace(operation_setting.PayAddress) != "" &&
|
|
strings.TrimSpace(operation_setting.EpayId) != "" &&
|
|
strings.TrimSpace(operation_setting.EpayKey) != ""
|
|
}
|
|
|
|
func isEpayWebhookEnabled() bool {
|
|
return isEpayTopUpEnabled()
|
|
}
|