package v1 import ( "math/rand" "time" "github.com/osuripple/api/common" ) var rn = rand.New(rand.NewSource(time.Now().UnixNano())) var kaomojis = [...]string{ "Σ(ノ°▽°)ノ", "( ƅ°ਉ°)ƅ", "ヽ( ・∀・)ノ", "˭̡̞(◞⁎˃ᆺ˂)◞*✰", "(p^-^)p", "(ノ^∇^)ノ゚", "ヽ(〃・ω・)ノ", "(۶* ‘ꆚ’)۶”", "(。>ω<)。", "(ノ。≧◇≦)ノ", "ヾ(。・ω・)シ", "(ノ・д・)ノ", ".+:。(ノ・ω・)ノ゙", "Σ(*ノ´>ω<。`)ノ", "ヾ(〃^∇^)ノ♪", "\(@ ̄∇ ̄@)/", "\(^▽^@)ノ", "ヾ(@^▽^@)ノ", "(((\(@v@)/)))", "\(*T▽T*)/", "\(^▽^)/", "\(T∇T)/", "ヽ( ★ω★)ノ", "ヽ(;▽;)ノ", "ヾ(。◕ฺ∀◕ฺ)ノ", "ヾ(@† ▽ †@)ノ", "ヾ(@^∇^@)ノ", "ヾ(@^▽^@)ノ", "ヾ(@^▽^@)ノ", "ヾ(@゜▽゜@)ノ", "(.=^・ェ・^=)", "((≡^⚲͜^≡))", "(^・o・^)ノ”", "(^._.^)ノ", "(^人^)", "(=;ェ;=)", "(=`ω´=)", "(=`ェ´=)", "(=´∇`=)", "(=^・^=)", "(=^・ェ・^=)", "(=^‥^=)", "(=TェT=)", "(=xェx=)", "\(=^‥^)/’`", "~(=^‥^)/", "└(=^‥^=)┐", "ヾ(=゚・゚=)ノ", "ヽ(=^・ω・^=)丿", "d(=^・ω・^=)b", "o(^・x・^)o", "V(=^・ω・^=)v", "(⁎˃ᆺ˂)", "(,,^・⋏・^,,)", } var randomSentences = [...]string{ "Proudly sponsored by Kirotuso!", "The brace is on fire!", "deverupa ga daisuki!", "It works!!!!", "Feelin' groovy!", "sudo rm -rf /", "Hi! I'm Flowey! Flowey the flower!", "Ripple devs are actually cats", "Support Howl's fund for buying a power supply for his SSD", } func surpriseMe() string { return randomSentences[rn.Intn(len(randomSentences))] + " " + kaomojis[rn.Intn(len(kaomojis))] } type pingData struct { ID int `json:"user_id"` Privileges int `json:"privileges"` } // PingGET is a message to check with the API that we are logged in, and know what are our privileges. func PingGET(md common.MethodData) (r common.Response) { r.Code = 200 if md.ID() == 0 { r.Message = "You have not given us a token, so we don't know who you are! But you can still login with /api/v1/tokens/new " + kaomojis[rn.Intn(len(kaomojis))] } else { r.Message = surpriseMe() } r.Data = pingData{ ID: md.ID(), Privileges: int(md.User.Privileges), } return } // SurpriseMeGET generates cute cats. // // ... Yes. func SurpriseMeGET(md common.MethodData) (r common.Response) { r.Code = 200 cats := make([]string, 100) for i := 0; i < 100; i++ { cats[i] = surpriseMe() } r.Data = cats return }