Add Cap Captcha support (#2511)
* Add Cap Captcha support - Add CaptchaCap type constant in types.go - Add Cap struct with InstanceURL, KeyID, and KeySecret fields - Add CapCaptcha method in provider.go to return Cap settings - Add default settings for Cap captcha in setting.go - Implement Cap captcha verification logic in middleware - Expose Cap captcha settings in site API This adds support for Cap captcha service as an alternative captcha option alongside existing reCAPTCHA, Turnstile and built-in captcha options. * update cap json tags
This commit is contained in:
@@ -28,6 +28,8 @@ type SiteConfig struct {
|
||||
ReCaptchaKey string `json:"captcha_ReCaptchaKey,omitempty"`
|
||||
CaptchaType setting.CaptchaType `json:"captcha_type,omitempty"`
|
||||
TurnstileSiteID string `json:"turnstile_site_id,omitempty"`
|
||||
CapInstanceURL string `json:"captcha_cap_instance_url,omitempty"`
|
||||
CapKeyID string `json:"captcha_cap_key_id,omitempty"`
|
||||
RegisterEnabled bool `json:"register_enabled,omitempty"`
|
||||
TosUrl string `json:"tos_url,omitempty"`
|
||||
PrivacyPolicyUrl string `json:"privacy_policy_url,omitempty"`
|
||||
@@ -119,6 +121,7 @@ func (s *GetSettingService) GetSiteConfig(c *gin.Context) (*SiteConfig, error) {
|
||||
userRes := user.BuildUser(u, dep.HashIDEncoder())
|
||||
logo := settings.Logo(c)
|
||||
reCaptcha := settings.ReCaptcha(c)
|
||||
capCaptcha := settings.CapCaptcha(c)
|
||||
appSetting := settings.AppSetting(c)
|
||||
|
||||
return &SiteConfig{
|
||||
@@ -132,6 +135,8 @@ func (s *GetSettingService) GetSiteConfig(c *gin.Context) (*SiteConfig, error) {
|
||||
CaptchaType: settings.CaptchaType(c),
|
||||
TurnstileSiteID: settings.TurnstileCaptcha(c).Key,
|
||||
ReCaptchaKey: reCaptcha.Key,
|
||||
CapInstanceURL: capCaptcha.InstanceURL,
|
||||
CapKeyID: capCaptcha.KeyID,
|
||||
AppPromotion: appSetting.Promotion,
|
||||
}, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user