48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
| // Copyright 2023 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package hcaptcha
 | |
| 
 | |
| const (
 | |
| 	ErrMissingInputSecret           ErrorCode = "missing-input-secret"
 | |
| 	ErrInvalidInputSecret           ErrorCode = "invalid-input-secret"
 | |
| 	ErrMissingInputResponse         ErrorCode = "missing-input-response"
 | |
| 	ErrInvalidInputResponse         ErrorCode = "invalid-input-response"
 | |
| 	ErrBadRequest                   ErrorCode = "bad-request"
 | |
| 	ErrInvalidOrAlreadySeenResponse ErrorCode = "invalid-or-already-seen-response"
 | |
| 	ErrNotUsingDummyPasscode        ErrorCode = "not-using-dummy-passcode"
 | |
| 	ErrSitekeySecretMismatch        ErrorCode = "sitekey-secret-mismatch"
 | |
| )
 | |
| 
 | |
| // ErrorCode is any possible error from hCaptcha
 | |
| type ErrorCode string
 | |
| 
 | |
| // String fulfills the Stringer interface
 | |
| func (err ErrorCode) String() string {
 | |
| 	switch err {
 | |
| 	case ErrMissingInputSecret:
 | |
| 		return "Your secret key is missing."
 | |
| 	case ErrInvalidInputSecret:
 | |
| 		return "Your secret key is invalid or malformed."
 | |
| 	case ErrMissingInputResponse:
 | |
| 		return "The response parameter (verification token) is missing."
 | |
| 	case ErrInvalidInputResponse:
 | |
| 		return "The response parameter (verification token) is invalid or malformed."
 | |
| 	case ErrBadRequest:
 | |
| 		return "The request is invalid or malformed."
 | |
| 	case ErrInvalidOrAlreadySeenResponse:
 | |
| 		return "The response parameter has already been checked, or has another issue."
 | |
| 	case ErrNotUsingDummyPasscode:
 | |
| 		return "You have used a testing sitekey but have not used its matching secret."
 | |
| 	case ErrSitekeySecretMismatch:
 | |
| 		return "The sitekey is not registered with the provided secret."
 | |
| 	default:
 | |
| 		return ""
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // Error fulfills the error interface
 | |
| func (err ErrorCode) Error() string {
 | |
| 	return err.String()
 | |
| }
 |