Documentation ¶
Index ¶
- Constants
- Variables
- func BackendURL(ctx echo.Context) string
- func BatchAdd(ctx echo.Context, field string, adder Adder, before func(*string) error, ...) (added []string, err error)
- func CaptchaInfo(hostAlias string, captchaName string, captchaID string, args ...string) echo.H
- func ClearHTML(title string) string
- func ContentEncode(content string, contypes ...string) string
- func CookieConfig() scookie.Config
- func Crypto() codec.Codec
- func Decrypt(secret string, datas ...*string)
- func DecryptedByRandomSecret(ctx echo.Context, sessionKey string, datas ...*string)
- func DeleteRandomSecret(ctx echo.Context, sessionKey string)
- func DirSharding(id uint64) uint64
- func Encrypt(secret string, datas ...*string)
- func Err(ctx echo.Context, err error) (ret interface{})
- func FullURL(domianURL string, myURL string) string
- func GenAndRecordCaptchaID(ctx echo.Context, opt *hdlCaptcha.Options) string
- func GenCaptchaError(ctx echo.Context, hostAlias string, captchaName string, id string, ...) echo.Data
- func GenPassword() (string, error)
- func GenSecret(sizes ...uint) string
- func GetBoolFlag(value string, defaults ...string) string
- func GetCaptchaId(ctx echo.Context, id string) (string, error)
- func GetContype(value string, defaults ...string) string
- func GetEnumValue(enums []string, value string, defaults string) string
- func GetErr(key string) (err error)
- func GetHistoryOrNewCaptchaId(ctx echo.Context) string
- func GetLocalIP() (ipv4 string, err error)
- func GetNextURL(ctx echo.Context, varNames ...string) string
- func GetNowTime(ctx echo.Context) time.Time
- func GetOtherURL(ctx echo.Context, next string) string
- func HPoolGet() echo.H
- func HPoolRelease(m echo.H)
- func HTMLFilter() *bluemonday.Policy
- func IDSharding(id uint64, shardingNum float64) uint64
- func IPv4ToMachineID(ipv4 string) (uint16, error)
- func IsCaptchaErrCode(code stdCode.Code) bool
- func IsCaptchaError(err error) bool
- func IsErr(err error, key string) bool
- func IsError(err interface{}) bool
- func IsFailureCode(code stdCode.Code) bool
- func IsMessage(err interface{}) bool
- func IsOk(err interface{}) bool
- func IsRightUploadFile(ctx echo.Context, src string) error
- func IsUserDisabled(err error) bool
- func IsUserNoPerm(err error) bool
- func IsUserNotFound(err error) bool
- func IsUserNotLoggedIn(err error) bool
- func JSONBytesParseError(err error, jsonBytes []byte) error
- func LogShow(ctx echo.Context, logFile string, extensions ...echo.H) error
- func LookPath(bin string, otherPaths ...string) (string, error)
- func MD5Sharding(str interface{}, length ...int) string
- func MarkdownPickoutCodeblock(content string) (repl []string, newContent string)
- func MarkdownRestorePickout(repl []string, content string) string
- func ModTimeCache(dir string, name string) (time.Time, error)
- func ModifyAsThumbnailName(originName, thumbnailName string) string
- func MonthSharding(ctx echo.Context) string
- func MoveAvatarToUserDir(ctx echo.Context, src string, typ string, id uint64) (string, error)
- func MoveEmbedTemporaryFiles(ctx echo.Context, content string, typ string, id interface{}) (int, string, error)
- func MoveUploadedFileToOwnerDir(ctx echo.Context, src string, typ string, id interface{}) (string, error)
- func MoveUploadedFileToOwnerDirCommon(ctx echo.Context, src string, typ string, id interface{}, isAvatar bool) (string, error)
- func MyCleanTags(value string) string
- func MyCleanText(value string) string
- func MyRemoveXSS(content string) string
- func NewSonyflake(startDate string, machineIDs ...uint16) (*sonyflake.Sonyflake, error)
- func NewStrictPolicy() *bluemonday.Policy
- func NewUGCPolicy() *bluemonday.Policy
- func NextID(machineIDs ...uint16) (uint64, error)
- func NoLink() *bluemonday.Policy
- func OkString(err interface{}) string
- func ParseMysqlConnectionURL(settings *mysql.ConnectionURL)
- func ParseSQL(sqlFile string, isFile bool, installer func(string) error) (err error)
- func ProcessError(ctx echo.Context, err error) error
- func ReadCache(dir string, name string) (content []byte, err error)
- func RegisterErr(key string, err error)
- func RemoveAvatar(ctx echo.Context, typ string, id uint64) error
- func RemoveBytesXSS(content []byte, noLinks ...bool) []byte
- func RemoveCache(dir string, names ...string) (err error)
- func RemoveReaderXSS(reader io.Reader, noLinks ...bool) *bytes.Buffer
- func RemoveUploadedFile(ctx echo.Context, typ string, id interface{}) error
- func RemoveXSS(content string, noLinks ...bool) string
- func ReplaceCharset(sqlStr string, charset string, checkCreateDDL ...bool) string
- func ReplacePrefix(m factory.Model, field string, oldPrefix string, newPrefix string) error
- func Replacex(s string, oldAndNew map[string]string) string
- func ReturnToCurrentURL(ctx echo.Context, varNames ...string) string
- func SQLLineParser(exec func(string) error) func(string) error
- func SQLQuery() *sqlQuery
- func SQLQueryLimit(limit int, linkIDs ...int) *sqlQuery
- func SeekLinesWithoutComments(r io.Reader) (string, error)
- func SelectPageCond(ctx echo.Context, cond *db.Compounds, pkAndLabelFields ...string)
- func SendErr(ctx echo.Context, err error)
- func SendFail(ctx echo.Context, msg string)
- func SendOk(ctx echo.Context, msg string)
- func SetRandomSecret(ctx echo.Context, sessionKey string, storeKey ...string)
- func SetSonyflake(startDate string, machineIDs ...uint16) (sonyFlake *sonyflake.Sonyflake, err error)
- func Setting(group ...string) echo.H
- func SonyflakeInit(machineIDs ...uint16) *sonyflake.Sonyflake
- func StringMapPoolGet() param.StringMap
- func StringMapPoolRelease(m param.StringMap)
- func SystemAPIKey() string
- func Tx(ctx echo.Context) *factory.Transaction
- func URLValuesPoolGet() url.Values
- func URLValuesPoolRelease(m url.Values)
- func UniqueID(machineIDs ...uint16) (string, error)
- func ValidFileOwnerID(id string) error
- func VerifyAndSetCaptcha(ctx echo.Context, hostAlias string, captchaName string, args ...string) echo.Data
- func VerifyCaptcha(ctx echo.Context, hostAlias string, captchaName string, args ...string) echo.Data
- func WithNextURL(ctx echo.Context, urlStr string, varNames ...string) string
- func WithURLParams(urlStr string, key string, value string, args ...string) string
- func WithoutCommentsLineParser(exec func(string) error) func(string) error
- func WriteCache(dir string, name string, content []byte) (err error)
- func YearSharding(ctx echo.Context) string
- type APIKeyGetter
- type Adder
- type ConfigFromDB
- type CookieConfigGetter
- type ErrorTab
- type Errors
- type List
- type Lister
- type Messager
- type NopMessage
- type OffsetListFunc
- type OffsetLister
- type PageListFunc
- type StatusColor
- type Stringify
- type Success
- type Successor
Constants ¶
const DirShardingNum = float64(50000)
DirShardingNum 文件夹分组基数
Variables ¶
var ( MustGetMyContext = defaults.MustGetContext MustGetContext = defaults.MustGetContext NewMockContext = defaults.NewMockContext )
var ( //ErrUserNotLoggedIn 用户未登录 ErrUserNotLoggedIn = echo.NewError(`User not logged in`, code.Unauthenticated) //ErrUserNotFound 用户不存在 ErrUserNotFound = echo.NewError(`User does not exist`, code.UserNotFound) //ErrUserNoPerm 用户无权限 ErrUserNoPerm = echo.NewError(`User has no permission`, code.NonPrivileged) //ErrUserDisabled 用户已被禁用 ErrUserDisabled = echo.NewError(`User has been disabled`, code.UserDisabled) //ErrBalanceNoEnough 余额不足 ErrBalanceNoEnough = echo.NewError(`Balance is not enough`, code.BalanceNoEnough) //ErrCaptcha 验证码错误 ErrCaptcha = echo.NewError(`Captcha is incorrect`, code.CaptchaError) //ErrCaptchaIdMissing 缺少captchaId ErrCaptchaIdMissing = echo.NewError(`Missing captchaId`, code.CaptchaIdMissing).SetZone(`captchaId`) //ErrInvalidAppID App ID 无效 ErrInvalidAppID = echo.NewError(`Invalid app id`, code.InvalidAppID) //ErrInvalidSign 无效签名 ErrInvalidSign = echo.NewError(`Invalid sign`, code.InvalidSignature) //ErrInvalidToken 令牌无效 ErrInvalidToken = echo.NewError(`Invalid token`, code.InvalidToken) //ErrRepeatOperation 重复操作 ErrRepeatOperation = echo.NewError(`Repeat operation`, code.RepeatOperation) //ErrUnsupported 不支持 ErrUnsupported = echo.NewError(`Unsupported`, code.Unsupported) //ErrOperationTimeout 操作超时 ErrOperationTimeout = echo.NewError(`Operation timeout`, code.OperationTimeout) //ErrOperationFail 操作失败 ErrOperationFail = echo.NewError(`Operation fail`, code.Failure) //ErrResponseFormatError 响应格式错误 ErrResponseFormatError = echo.NewError(`Response format error`, code.AbnormalResponse) //ErrRequestTimeout 提交超时 ErrRequestTimeout = echo.NewError(`Request timeout`, code.RequestTimeout) //ErrRequestFail 提交失败 ErrRequestFail = echo.NewError(`Request fail`, code.RequestFailure) // ErrIgnoreConfigChange 忽略配置文件更改 ErrIgnoreConfigChange = errors.New(`Ignore configuration file changes`) // ErrNext 需要继续向下检查 ErrNext = errors.New("Next") ErrConcurrentLock = errors.New("Concurrent lock has been triggered") ErrContextCanceled = errors.New("Context canceled") )
var ( // Sorts 获取数据查询时的排序方式 Sorts = clientPagination.Sorts Paging = dbPagination.Paging PagingWithPagination = dbPagination.PagingWithPagination PagingWithLister = dbPagination.PagingWithLister PagingWithListerCond = dbPagination.PagingWithListerCond PagingWithSelectList = dbPagination.PagingWithSelectList NewLister = dbPagination.NewLister NewListParam = dbPagination.NewListParam NewOffsetLister = dbPagination.NewOffsetLister )
var ( SonyflakeStartDate = `2018-09-01 08:08:08` ErrInvalidIPAddress = errors.New("Invalid IP address") )
var DefaultNextURLVarName = `next`
var ( // ErrIncorrectFileOwnerID . ErrIncorrectFileOwnerID = errors.New("Incorrect File Owner ID") )
var ErrorProcessors = []render.ErrorProcessor{ func(ctx echo.Context, err error) (processed bool, newErr error) { if errors.Is(err, db.ErrNoMoreRows) { return true, echo.NewError(ctx.T(`数据不存在`), stdCode.DataNotFound) } return false, err }, }
var LogParsers = map[string]func(line *tail.Line) (interface{}, error){}
LogParsers 日志格式解析器
var OnRemoveOwnerFile = func(ctx echo.Context, typ string, id interface{}, ownerDir string) error { return nil }
OnRemoveOwnerFile 当删除文件时的通用操作
var OnUpdateOwnerFilePath = func(ctx echo.Context, src string, typ string, id interface{}, newSavePath string, newViewURL string) error { return nil }
OnUpdateOwnerFilePath 当更新文件路径时的通用操作
Functions ¶
func BackendURL ¶
func BatchAdd ¶
func BatchAdd(ctx echo.Context, field string, adder Adder, before func(*string) error, seperators ...string) (added []string, err error)
BatchAdd 批量添加(常用于批量添加分类) BatchAdd(ctx, `ident,>name`, adder, before, `=`) 可以通过在字段名称前面添加“>”前缀来指定表单字段名称,如果不指定则默认使用第一个作为表单字段名
func CaptchaInfo ¶
CaptchaInfo 新验证码信息
func ContentEncode ¶
func CookieConfig ¶
func DecryptedByRandomSecret ¶
DecryptedByRandomSecret 用上次设置的随机密码解密
func DeleteRandomSecret ¶
DeleteRandomSecret 删除随机密码
func GenAndRecordCaptchaID ¶
func GenAndRecordCaptchaID(ctx echo.Context, opt *hdlCaptcha.Options) string
func GenCaptchaError ¶
func GenPassword ¶
func GetBoolFlag ¶
func GetContype ¶
func HPoolRelease ¶ added in v3.6.4
func IPv4ToMachineID ¶
func IsFailureCode ¶
func IsRightUploadFile ¶
IsRightUploadFile 是否是正确的上传文件
func JSONBytesParseError ¶ added in v3.6.2
func MarkdownRestorePickout ¶
func ModTimeCache ¶
ModTimeCache 缓存文件修改时间
func ModifyAsThumbnailName ¶
ModifyAsThumbnailName 将指向临时文件夹的缩略图路径改为新位置上的缩略图路径 originName 为新位置上的原始图路径 thumbnailName 为临时位置上的缩略图路径
func MoveAvatarToUserDir ¶
MoveAvatarToUserDir 移动临时文件夹中的头像到用户目录
func MoveEmbedTemporaryFiles ¶
func MoveEmbedTemporaryFiles(ctx echo.Context, content string, typ string, id interface{}) (int, string, error)
MoveEmbedTemporaryFiles 转移被嵌入到文本内容中临时文件
func MoveUploadedFileToOwnerDir ¶
func MoveUploadedFileToOwnerDir(ctx echo.Context, src string, typ string, id interface{}) (string, error)
MoveUploadedFileToOwnerDir 移动上传的文件到所有者目录
func MoveUploadedFileToOwnerDirCommon ¶
func MoveUploadedFileToOwnerDirCommon(ctx echo.Context, src string, typ string, id interface{}, isAvatar bool) (string, error)
MoveUploadedFileToOwnerDirCommon 移动上传的文件到所有者目录
func MyCleanTags ¶
func MyCleanText ¶
func MyRemoveXSS ¶
func NewSonyflake ¶
NewSonyflake 19位
func NewStrictPolicy ¶
func NewStrictPolicy() *bluemonday.Policy
func NewUGCPolicy ¶
func NewUGCPolicy() *bluemonday.Policy
func NoLink ¶
func NoLink() *bluemonday.Policy
func ParseMysqlConnectionURL ¶
func ParseMysqlConnectionURL(settings *mysql.ConnectionURL)
func RegisterErr ¶ added in v3.6.3
func RemoveAvatar ¶
RemoveAvatar 删除头像
func RemoveBytesXSS ¶
func RemoveUploadedFile ¶
RemoveUploadedFile 删除被上传的文件
func ReplaceCharset ¶
ReplaceCharset 替换DDL语句中的字符集
func ReplacePrefix ¶
ReplacePrefix 替换前缀数据
func SQLQueryLimit ¶
func SelectPageCond ¶
func SetRandomSecret ¶
SetRandomSecret 设置随机密码
func SetSonyflake ¶
func SonyflakeInit ¶
func StringMapPoolGet ¶ added in v3.6.4
func StringMapPoolRelease ¶ added in v3.6.4
func SystemAPIKey ¶
func SystemAPIKey() string
func URLValuesPoolGet ¶ added in v3.6.4
func URLValuesPoolRelease ¶ added in v3.6.4
func VerifyAndSetCaptcha ¶
func VerifyAndSetCaptcha(ctx echo.Context, hostAlias string, captchaName string, args ...string) echo.Data
VerifyAndSetCaptcha 验证码验证并设置新验证码信息
func VerifyCaptcha ¶
func VerifyCaptcha(ctx echo.Context, hostAlias string, captchaName string, args ...string) echo.Data
VerifyCaptcha 验证码验证
func WithURLParams ¶
func WriteCache ¶
WriteCache 写缓存文件
Types ¶
type Adder ¶
type Adder interface { Set(interface{}, ...interface{}) Add() (interface{}, error) }
Adder interface
type ConfigFromDB ¶
type CookieConfigGetter ¶
type List ¶
type List = dbPagination.List
type Lister ¶
type Lister = dbPagination.Lister
type Messager ¶
Messager 信息接口
var DefaultNopMessage Messager = &NopMessage{}
DefaultNopMessage 默认空消息
type OffsetListFunc ¶
type OffsetListFunc = dbPagination.OffsetListFunc
type OffsetLister ¶
type OffsetLister = dbPagination.OffsetLister
type PageListFunc ¶
type PageListFunc = dbPagination.PageListFunc
type StatusColor ¶
type StatusColor string
StatusColor 状态色
func (StatusColor) Bootstrap ¶
func (s StatusColor) Bootstrap() string
Bootstrap 前端框架 bootstrap css 状态样式
func (StatusColor) String ¶
func (s StatusColor) String() string
func (StatusColor) Terminal ¶
func (s StatusColor) Terminal() func(string, ...interface{})
Terminal 控制台样式