constant

package
v1.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ActEdited    = "edited"
	ActClosed    = "closed"
	ActVotedDown = "voted_down"
	ActVotedUp   = "voted_up"
	ActVoteDown  = "vote_down"
	ActVoteUp    = "vote_up"
	ActUpVote    = "upvote"
	ActDownVote  = "downvote"
	ActFollow    = "follow"
	ActAccepted  = "accepted"
	ActAccept    = "accept"
	ActPin       = "pin"
	ActUnPin     = "unpin"
	ActShow      = "show"
	ActHide      = "hide"
)
View Source
const (
	UserStatusChangedCacheKey                  = "answer:user:status:"
	UserStatusChangedCacheTime                 = 7 * 24 * time.Hour
	UserTokenCacheKey                          = "answer:user:token:"
	UserTokenCacheTime                         = 7 * 24 * time.Hour
	UserVisitTokenCacheKey                     = "answer:user:visit:"
	UserVisitCacheTime                         = 7 * 24 * 60 * 60
	UserVisitCookiesCacheKey                   = "visit"
	AdminTokenCacheKey                         = "answer:admin:token:"
	AdminTokenCacheTime                        = 7 * 24 * time.Hour
	UserTokenMappingCacheKey                   = "answer:user-token:mapping:"
	UserEmailCodeCacheKey                      = "answer:user:email-code:"
	UserEmailCodeCacheTime                     = 10 * time.Minute
	UserLatestEmailCodeCacheKey                = "answer:user-id:email-code:"
	SiteInfoCacheKey                           = "answer:site-info:"
	SiteInfoCacheTime                          = 1 * time.Hour
	ConfigID2KEYCacheKeyPrefix                 = "answer:config:id:"
	ConfigKEY2ContentCacheKeyPrefix            = "answer:config:key:"
	ConfigCacheTime                            = 1 * time.Hour
	ConnectorUserExternalInfoCacheKey          = "answer:connector:"
	ConnectorUserExternalInfoCacheTime         = 10 * time.Minute
	SiteMapQuestionCacheKeyPrefix              = "answer:sitemap:question:%d"
	SiteMapQuestionCacheTime                   = time.Hour
	SitemapMaxSize                             = 50000
	NewQuestionNotificationLimitCacheKeyPrefix = "answer:new-question-notification-limit:"
	NewQuestionNotificationLimitCacheTime      = 7 * 24 * time.Hour
	NewQuestionNotificationLimitMax            = 50
	RateLimitCacheKeyPrefix                    = "answer:rate-limit:"
	RateLimitCacheTime                         = 5 * time.Minute
	RedDotCacheKey                             = "answer:red-dot:%s:%s"
	RedDotCacheTime                            = 30 * 24 * time.Hour
)
View Source
const (
	DefaultPageSize = 20 // Default number of pages
	DefaultBulkUser = 5000
)
View Source
const (
	AcceptLanguageFlag = "Accept-Language"
	ShortIDFlag        = "Short-ID-Enabled"
)
View Source
const (
	EmailTplKeyChangeEmailTitle = "email_tpl.change_email.title"
	EmailTplKeyChangeEmailBody  = "email_tpl.change_email.body"

	EmailTplKeyNewAnswerTitle = "email_tpl.new_answer.title"
	EmailTplKeyNewAnswerBody  = "email_tpl.new_answer.body"

	EmailTplKeyNewCommentTitle = "email_tpl.new_comment.title"
	EmailTplKeyNewCommentBody  = "email_tpl.new_comment.body"

	EmailTplKeyPassResetTitle = "email_tpl.pass_reset.title"
	EmailTplKeyPassResetBody  = "email_tpl.pass_reset.body"

	EmailTplKeyRegisterTitle = "email_tpl.register.title"
	EmailTplKeyRegisterBody  = "email_tpl.register.body"

	EmailTplKeyTestTitle = "email_tpl.test.title"
	EmailTplKeyTestBody  = "email_tpl.test.body"

	EmailTplKeyInvitedAnswerTitle = "email_tpl.invited_you_to_answer.title"
	EmailTplKeyInvitedAnswerBody  = "email_tpl.invited_you_to_answer.body"

	EmailTplKeyNewQuestionTitle = "email_tpl.new_question.title"
	EmailTplKeyNewQuestionBody  = "email_tpl.new_question.body"
)
View Source
const (
	// NotificationUpdateQuestion update question
	NotificationUpdateQuestion = "notification.action.update_question"
	// NotificationAnswerTheQuestion answer the question
	NotificationAnswerTheQuestion = "notification.action.answer_the_question"
	// NotificationUpVotedTheQuestion up voted the question
	NotificationUpVotedTheQuestion = "notification.action.up_voted_question"
	// NotificationDownVotedTheQuestion down voted the question
	NotificationDownVotedTheQuestion = "notification.action.down_voted_question"
	// NotificationUpdateAnswer update answer
	NotificationUpdateAnswer = "notification.action.update_answer"
	// NotificationAcceptAnswer accept answer
	NotificationAcceptAnswer = "notification.action.accept_answer"
	// NotificationUpVotedTheAnswer up voted the answer
	NotificationUpVotedTheAnswer = "notification.action.up_voted_answer"
	// NotificationDownVotedTheAnswer down voted the answer
	NotificationDownVotedTheAnswer = "notification.action.down_voted_answer"
	// NotificationCommentQuestion comment question
	NotificationCommentQuestion = "notification.action.comment_question"
	// NotificationCommentAnswer comment answer
	NotificationCommentAnswer = "notification.action.comment_answer"
	// NotificationUpVotedTheComment up voted the comment
	NotificationUpVotedTheComment = "notification.action.up_voted_comment"
	// NotificationReplyToYou reply to you
	NotificationReplyToYou = "notification.action.reply_to_you"
	// NotificationMentionYou mention you
	NotificationMentionYou = "notification.action.mention_you"
	// NotificationYourQuestionIsClosed your question is closed
	NotificationYourQuestionIsClosed = "notification.action.your_question_is_closed"
	// NotificationYourQuestionWasDeleted your question was deleted
	NotificationYourQuestionWasDeleted = "notification.action.your_question_was_deleted"
	// NotificationYourAnswerWasDeleted your answer was deleted
	NotificationYourAnswerWasDeleted = "notification.action.your_answer_was_deleted"
	// NotificationYourCommentWasDeleted your comment was deleted
	NotificationYourCommentWasDeleted = "notification.action.your_comment_was_deleted"
	// NotificationInvitedYouToAnswer invited you to answer
	NotificationInvitedYouToAnswer = "notification.action.invited_you_to_answer"
	// NotificationEarnedBadge earned badge
	NotificationEarnedBadge = "notification.action.earned_badge"
)
View Source
const (
	NotificationTypeInbox            = "inbox"
	NotificationTypeAchievement      = "achievement"
	NotificationTypeBadgeAchievement = "badge"
)
View Source
const (
	QuestionObjectType   = "question"
	AnswerObjectType     = "answer"
	TagObjectType        = "tag"
	UserObjectType       = "user"
	CollectionObjectType = "collection"
	CommentObjectType    = "comment"
	ReportObjectType     = "report"
	BadgeObjectType      = "badge"
	BadgeAwardObjectType = "badge_award"
)
View Source
const (
	RankQuestionAddKey               = "rank.question.add"
	RankQuestionEditKey              = "rank.question.edit"
	RankQuestionDeleteKey            = "rank.question.delete"
	RankQuestionVoteUpKey            = "rank.question.vote_up"
	RankQuestionVoteDownKey          = "rank.question.vote_down"
	RankAnswerAddKey                 = "rank.answer.add"
	RankAnswerEditKey                = "rank.answer.edit"
	RankAnswerDeleteKey              = "rank.answer.delete"
	RankAnswerAcceptKey              = "rank.answer.accept"
	RankAnswerVoteUpKey              = "rank.answer.vote_up"
	RankAnswerVoteDownKey            = "rank.answer.vote_down"
	RankInviteSomeoneToAnswerKey     = "rank.answer.invite_someone_to_answer"
	RankCommentAddKey                = "rank.comment.add"
	RankCommentEditKey               = "rank.comment.edit"
	RankCommentDeleteKey             = "rank.comment.delete"
	RankReportAddKey                 = "rank.report.add"
	RankTagAddKey                    = "rank.tag.add"
	RankTagEditKey                   = "rank.tag.edit"
	RankTagDeleteKey                 = "rank.tag.delete"
	RankTagSynonymKey                = "rank.tag.synonym"
	RankLinkUrlLimitKey              = "rank.link.url_limit"
	RankVoteDetailKey                = "rank.vote.detail"
	RankCommentVoteUpKey             = "rank.comment.vote_up"
	RankCommentVoteDownKey           = "rank.comment.vote_down"
	RankQuestionEditWithoutReviewKey = "rank.question.edit_without_review"
	RankAnswerEditWithoutReviewKey   = "rank.answer.edit_without_review"
	RankTagEditWithoutReviewKey      = "rank.tag.edit_without_review"
	RankAnswerAuditKey               = "rank.answer.audit"
	RankQuestionAuditKey             = "rank.question.audit"
	RankTagAuditKey                  = "rank.tag.audit"
	RankQuestionCloseKey             = "rank.question.close"
	RankQuestionReopenKey            = "rank.question.reopen"
	RankTagUseReservedTagKey         = "rank.tag.use_reserved_tag"
)
View Source
const (
	DeletedQuestionTitleTrKey = "question.deleted_title"
	QuestionsTitleTrKey       = "question.questions_title"
	TagsListTitleTrKey        = "tag.tags_title"
	TagHasNoDescription       = "tag.no_description"
)
View Source
const (
	ReasonSpam              = "reason.spam"
	ReasonRudeOrAbusive     = "reason.rude_or_abusive"
	ReasonSomething         = "reason.something"
	ReasonADuplicate        = "reason.a_duplicate"
	ReasonNotAAnswer        = "reason.not_a_answer"
	ReasonNoLongerNeeded    = "reason.no_longer_needed"
	ReasonCommunitySpecific = "reason.community_specific"
	ReasonNotClarity        = "reason.not_clarity"
	ReasonNormal            = "reason.normal"
	ReasonNormalUser        = "reason.normal.user"
	ReasonClosed            = "reason.closed"
	ReasonDeleted           = "reason.deleted"
	ReasonDeletedUser       = "reason.deleted.user"
	ReasonSuspended         = "reason.suspended"
	ReasonInactive          = "reason.inactive"
	ReasonLooksOk           = "reason.looks_ok"
	ReasonNeedsEdit         = "reason.needs_edit"
	ReasonNeedsClose        = "reason.needs_close"
	ReasonNeedsDelete       = "reason.needs_delete"
)
View Source
const (
	ReportOperationEditPost     = "edit_post"
	ReportOperationClosePost    = "close_post"
	ReportOperationDeletePost   = "delete_post"
	ReportOperationUnlistPost   = "unlist_post"
	ReportOperationIgnoreReport = "ignore_report"
)
View Source
const (
	ReviewQueuedPostLabel        = "review.queued_post"
	ReviewFlaggedPostLabel       = "review.flagged_post"
	ReviewSuggestedPostEditLabel = "review.suggested_post_edit"
)
View Source
const (
	DefaultGravatarBaseURL = "https://www.gravatar.com/avatar/"
	DefaultAvatar          = "system"
	AvatarTypeDefault      = "default"
	AvatarTypeGravatar     = "gravatar"
	AvatarTypeCustom       = "custom"
)
View Source
const (
	// PermalinkQuestionIDAndTitle /questions/10010000000000001/post-title
	PermalinkQuestionIDAndTitle = iota + 1
	// PermalinkQuestionID /questions/10010000000000001
	PermalinkQuestionID
	// PermalinkQuestionIDAndTitleByShortID /questions/11/post-title
	PermalinkQuestionIDAndTitleByShortID
	// PermalinkQuestionIDByShortID /questions/11
	PermalinkQuestionIDByShortID
)
View Source
const (
	ColorSchemeDefault = "default"
	ColorSchemeLight   = "light"
	ColorSchemeDark    = "dark"
	ColorSchemeSystem  = "system"
)
View Source
const (
	SiteTypeGeneral       = "general"
	SiteTypeInterface     = "interface"
	SiteTypeBranding      = "branding"
	SiteTypeWrite         = "write"
	SiteTypeLegal         = "legal"
	SiteTypeSeo           = "seo"
	SiteTypeLogin         = "login"
	SiteTypeCustomCssHTML = "css-html"
	SiteTypeTheme         = "theme"
	SiteTypePrivileges    = "privileges"
	SiteTypeUsers         = "users"
)
View Source
const (
	UserNormal    = "normal"
	UserSuspended = "suspended"
	UserDeleted   = "deleted"
	UserInactive  = "inactive"
)
View Source
const (
	EmailStatusAvailable    = 1
	EmailStatusToBeVerified = 2
)
View Source
const (
	CommentEditDeadline = time.Minute * 5
)
View Source
const (
	EmailConfigKey = "email.config"
)
View Source
const (
	PluginStatus = "plugin.status"
)
View Source
const (
	ReactionTooltipLabel = "reaction.tooltip"
)

Variables

View Source
var (
	Version   = ""
	Revision  = ""
	GoVersion = ""
)
View Source
var (
	RankAllPrivileges = []*Privilege{
		{Label: reason.RankQuestionAddLabel, Key: RankQuestionAddKey},
		{Label: reason.RankAnswerAddLabel, Key: RankAnswerAddKey},
		{Label: reason.RankCommentAddLabel, Key: RankCommentAddKey},
		{Label: reason.RankReportAddLabel, Key: RankReportAddKey},
		{Label: reason.RankCommentVoteUpLabel, Key: RankCommentVoteUpKey},
		{Label: reason.RankLinkUrlLimitLabel, Key: RankLinkUrlLimitKey},
		{Label: reason.RankQuestionVoteUpLabel, Key: RankQuestionVoteUpKey},
		{Label: reason.RankAnswerVoteUpLabel, Key: RankAnswerVoteUpKey},
		{Label: reason.RankQuestionVoteDownLabel, Key: RankQuestionVoteDownKey},
		{Label: reason.RankAnswerVoteDownLabel, Key: RankAnswerVoteDownKey},
		{Label: reason.RankInviteSomeoneToAnswerLabel, Key: RankInviteSomeoneToAnswerKey},
		{Label: reason.RankTagAddLabel, Key: RankTagAddKey},
		{Label: reason.RankTagEditLabel, Key: RankTagEditKey},
		{Label: reason.RankQuestionEditLabel, Key: RankQuestionEditKey},
		{Label: reason.RankAnswerEditLabel, Key: RankAnswerEditKey},
		{Label: reason.RankQuestionEditWithoutReviewLabel, Key: RankQuestionEditWithoutReviewKey},
		{Label: reason.RankAnswerEditWithoutReviewLabel, Key: RankAnswerEditWithoutReviewKey},
		{Label: reason.RankQuestionAuditLabel, Key: RankQuestionAuditKey},
		{Label: reason.RankAnswerAuditLabel, Key: RankAnswerAuditKey},
		{Label: reason.RankTagAuditLabel, Key: RankTagAuditKey},
		{Label: reason.RankTagEditWithoutReviewLabel, Key: RankTagEditWithoutReviewKey},
		{Label: reason.RankTagSynonymLabel, Key: RankTagSynonymKey},
	}
)

Functions

func ConvertUserStatus

func ConvertUserStatus(status, mailStatus int) string

Types

type ActivityTypeKey

type ActivityTypeKey string
const (
	ActQuestionAsked     ActivityTypeKey = "question.asked"
	ActQuestionClosed    ActivityTypeKey = "question.closed"
	ActQuestionReopened  ActivityTypeKey = "question.reopened"
	ActQuestionAnswered  ActivityTypeKey = "question.answered"
	ActQuestionCommented ActivityTypeKey = "question.commented"
	ActQuestionAccept    ActivityTypeKey = "question.accept"
	ActQuestionUpvote    ActivityTypeKey = "question.upvote"
	ActQuestionDownVote  ActivityTypeKey = "question.downvote"
	ActQuestionEdited    ActivityTypeKey = "question.edited"
	ActQuestionRollback  ActivityTypeKey = "question.rollback"
	ActQuestionDeleted   ActivityTypeKey = "question.deleted"
	ActQuestionUndeleted ActivityTypeKey = "question.undeleted"
	ActQuestionPin       ActivityTypeKey = "question.pin"
	ActQuestionUnPin     ActivityTypeKey = "question.unpin"
	ActQuestionHide      ActivityTypeKey = "question.hide"
	ActQuestionShow      ActivityTypeKey = "question.show"
)
const (
	ActAnswerAnswered  ActivityTypeKey = "answer.answered"
	ActAnswerCommented ActivityTypeKey = "answer.commented"
	ActAnswerAccept    ActivityTypeKey = "answer.accept"
	ActAnswerUpvote    ActivityTypeKey = "answer.upvote"
	ActAnswerDownVote  ActivityTypeKey = "answer.downvote"
	ActAnswerEdited    ActivityTypeKey = "answer.edited"
	ActAnswerRollback  ActivityTypeKey = "answer.rollback"
	ActAnswerDeleted   ActivityTypeKey = "answer.deleted"
	ActAnswerUndeleted ActivityTypeKey = "answer.undeleted"
)
const (
	ActTagCreated   ActivityTypeKey = "tag.created"
	ActTagEdited    ActivityTypeKey = "tag.edited"
	ActTagRollback  ActivityTypeKey = "tag.rollback"
	ActTagDeleted   ActivityTypeKey = "tag.deleted"
	ActTagUndeleted ActivityTypeKey = "tag.undeleted"
)

type EventType added in v1.4.0

type EventType string

EventType event type. It is used to define the type of event. Such as object.action

const (
	EventUserUpdate EventType = eventUser + "." + eventUpdate
	EventUserShare  EventType = eventUser + "." + eventShare
)
const (
	EventQuestionCreate EventType = eventQuestion + "." + eventCreate
	EventQuestionUpdate EventType = eventQuestion + "." + eventUpdate
	EventQuestionDelete EventType = eventQuestion + "." + eventDelete
	EventQuestionVote   EventType = eventQuestion + "." + eventVote
	EventQuestionAccept EventType = eventQuestion + "." + eventAccept
	EventQuestionFlag   EventType = eventQuestion + "." + eventFlag
	EventQuestionReact  EventType = eventQuestion + "." + eventReact
)
const (
	EventAnswerCreate EventType = eventAnswer + "." + eventCreate
	EventAnswerUpdate EventType = eventAnswer + "." + eventUpdate
	EventAnswerDelete EventType = eventAnswer + "." + eventDelete
	EventAnswerVote   EventType = eventAnswer + "." + eventVote
	EventAnswerFlag   EventType = eventAnswer + "." + eventFlag
	EventAnswerReact  EventType = eventAnswer + "." + eventReact
)
const (
	EventCommentCreate EventType = eventComment + "." + eventCreate
	EventCommentUpdate EventType = eventComment + "." + eventUpdate
	EventCommentDelete EventType = eventComment + "." + eventDelete
	EventCommentVote   EventType = eventComment + "." + eventVote
	EventCommentFlag   EventType = eventComment + "." + eventFlag
)

type NotificationChannelKey

type NotificationChannelKey string
const (
	EmailChannel NotificationChannelKey = "email"
)

type NotificationSource

type NotificationSource string
const (
	InboxSource                          NotificationSource = "inbox"
	AllNewQuestionSource                 NotificationSource = "all_new_question"
	AllNewQuestionForFollowingTagsSource NotificationSource = "all_new_question_for_following_tags"
)

type Privilege

type Privilege struct {
	Key   string `json:"key"`
	Label string `json:"label"`
	Value int    `validate:"gte=1" json:"value"`
}

type ReviewingType added in v1.3.0

type ReviewingType string
const (
	QueuedPost        ReviewingType = "queued_post"
	QueuedUser        ReviewingType = "queued_user"
	FlaggedPost       ReviewingType = "flagged_post"
	FlaggedUser       ReviewingType = "flagged_user"
	SuggestedPostEdit ReviewingType = "suggested_post_edit"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL