base

package
v1.9.2 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2019 License: MIT Imports: 30 Imported by: 898

Documentation

Index

Constants

View Source
const (
	Minute = 60
	Hour   = 60 * Minute
	Day    = 24 * Hour
	Week   = 7 * Day
	Month  = 30 * Day
	Year   = 12 * Month
)

Seconds-based time units

View Source
const (
	Byte  = 1
	KByte = Byte * 1024
	MByte = KByte * 1024
	GByte = MByte * 1024
	TByte = GByte * 1024
	PByte = TByte * 1024
	EByte = PByte * 1024
)

Storage space size types

View Source
const DefaultAvatarSize = -1

DefaultAvatarSize is a sentinel value for the default avatar size, as determined by the avatar-hosting service.

View Source
const TimeLimitCodeLength = 12 + 6 + 40

TimeLimitCodeLength default value for time limit code

Variables

View Source
var UTF8BOM = []byte{'\xef', '\xbb', '\xbf'}

UTF8BOM is the utf-8 byte-order marker

Functions

func AvatarLink(email string) string

AvatarLink returns relative avatar link to the site domain by given email, which includes app sub-url as prefix. However, it is possible to return full URL if user enables Gravatar-like service.

func BasicAuthDecode

func BasicAuthDecode(encoded string) (string, string, error)

BasicAuthDecode decode basic auth string

func BasicAuthEncode

func BasicAuthEncode(username, password string) string

BasicAuthEncode encode basic auth string

func CreateTimeLimitCode

func CreateTimeLimitCode(data string, minutes int, startInf interface{}) string

CreateTimeLimitCode create a time limit code code format: 12 length date time string + 6 minutes string + 40 sha1 encoded string

func DefaultAvatarLink() string

DefaultAvatarLink the default avatar link

func DetectEncoding

func DetectEncoding(content []byte) (string, error)

DetectEncoding detect the encoding of content

func EllipsisString

func EllipsisString(str string, length int) string

EllipsisString returns a truncated short string, it appends '...' in the end of the length of string is too large.

func EncodeMD5

func EncodeMD5(str string) string

EncodeMD5 encodes string to md5 hex value.

func EncodeSha1

func EncodeSha1(str string) string

EncodeSha1 string to sha1 hex value.

func EncodeSha256 added in v1.9.0

func EncodeSha256(str string) string

EncodeSha256 string to sha1 hex value.

func EntryIcon added in v1.5.0

func EntryIcon(entry *git.TreeEntry) string

EntryIcon returns the octicon class for displaying files/directories

func FileSize

func FileSize(s int64) string

FileSize calculates the file size and generate user-friendly string.

func GetRandomBytesAsBase64 added in v1.1.0

func GetRandomBytesAsBase64(n int) string

GetRandomBytesAsBase64 generates a random base64 string from n bytes

func HashEmail

func HashEmail(email string) string

HashEmail hashes email address to MD5 string. https://en.gravatar.com/site/implement/hash/

func Int64sContains added in v1.3.0

func Int64sContains(intsSlice []int64, a int64) bool

Int64sContains returns if a int64 in a slice of int64

func Int64sToMap

func Int64sToMap(ints []int64) map[int64]bool

Int64sToMap converts a slice of int64 to a int64 map.

func Int64sToStrings

func Int64sToStrings(ints []int64) []string

Int64sToStrings converts a slice of int64 to a slice of string.

func IsAudioFile added in v1.7.0

func IsAudioFile(data []byte) bool

IsAudioFile detects if data is an video format

func IsImageFile

func IsImageFile(data []byte) bool

IsImageFile detects if data is an image format

func IsLetter

func IsLetter(ch rune) bool

IsLetter reports whether the rune is a letter (category L). https://github.com/golang/go/blob/master/src/go/scanner/scanner.go#L257

func IsPDFFile

func IsPDFFile(data []byte) bool

IsPDFFile detects if data is a pdf format

func IsTextFile

func IsTextFile(data []byte) bool

IsTextFile returns true if file content format is plain text or empty.

func IsVideoFile added in v1.0.0

func IsVideoFile(data []byte) bool

IsVideoFile detects if data is an video format

func MinutesToFriendly added in v1.2.0

func MinutesToFriendly(minutes int, lang string) string

MinutesToFriendly returns a user friendly string with number of minutes converted to hours and minutes.

func NaturalSortLess added in v1.3.0

func NaturalSortLess(s1, s2 string) bool

NaturalSortLess compares two strings so that they could be sorted in natural order

func RawTimeSince

func RawTimeSince(t time.Time, lang string) string

RawTimeSince retrieves i18n key of time since t

func RemoveBOMIfPresent added in v1.8.1

func RemoveBOMIfPresent(content []byte) []byte

RemoveBOMIfPresent removes a UTF-8 BOM from a []byte

func SetupGiteaRoot added in v1.9.0

func SetupGiteaRoot() string

SetupGiteaRoot Sets GITEA_ROOT if it is not already set and returns the value

func ShortSha

func ShortSha(sha1 string) string

ShortSha is basically just truncating. It is DEPRECATED and will be removed in the future.

func SizedAvatarLink(email string, size int) string

SizedAvatarLink returns a sized link to the avatar for the given email address.

func StringsToInt64s

func StringsToInt64s(strs []string) ([]int64, error)

StringsToInt64s converts a slice of string to a slice of int64.

func Subtract

func Subtract(left interface{}, right interface{}) interface{}

Subtract deals with subtraction of all types of number.

func TimeSince

func TimeSince(then time.Time, lang string) template.HTML

TimeSince calculates the time interval and generate user-friendly string.

func TimeSincePro

func TimeSincePro(then time.Time, lang string) string

TimeSincePro calculates the time interval and generate full user-friendly string.

func TimeSinceUnix added in v1.4.0

func TimeSinceUnix(then util.TimeStamp, lang string) template.HTML

TimeSinceUnix calculates the time interval and generate user-friendly string.

func TruncateString

func TruncateString(str string, limit int) string

TruncateString returns a truncated string with given limit, it returns input string if length is not reached limit.

func VerifyTimeLimitCode

func VerifyTimeLimitCode(data string, minutes int, code string) bool

VerifyTimeLimitCode verify time limit code

Types

type TplName

type TplName string

TplName template relative path type

Jump to

Keyboard shortcuts

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