1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- package view
- import (
- "fmt"
- arcwar "go-common/app/service/main/archive/api"
- )
- // Goto
- const (
- GotoAv = "av"
- GotoWeb = "web"
- GotoBangumi = "bangumi"
- GotoLive = "live"
- GotoGame = "game"
- GotoArticle = "article"
- GotoSpecial = "special"
- GotoAudio = "audio"
- GotoSong = "song"
- GotoAudioTag = "audio_tag"
- GotoAlbum = "album"
- GotoClip = "clip"
- GotoDaily = "daily"
- )
- // FillURI deal app schema.
- func FillURI(gt, param string, f func(uri string) string) (uri string) {
- if param == "" {
- return
- }
- switch gt {
- case GotoAv, "":
- uri = "bilibili://video/" + param
- case GotoLive:
- uri = "bilibili://live/" + param
- case GotoBangumi:
- uri = "https://www.bilibili.com/bangumi/play/ss" + param
- case GotoArticle:
- uri = "bilibili://article/" + param
- case GotoGame:
- uri = param
- case GotoAudio:
- uri = "bilibili://music/menu/detail/" + param
- case GotoSong:
- uri = "bilibili://music/detail/" + param
- case GotoAudioTag:
- uri = "bilibili://music/categorydetail/" + param
- case GotoDaily:
- uri = "bilibili://pegasus/list/daily/" + param
- case GotoAlbum:
- uri = "bilibili://album/" + param
- case GotoClip:
- uri = "bilibili://clip/" + param
- case GotoWeb:
- uri = param
- }
- if f != nil {
- uri = f(uri)
- }
- return
- }
- // AvHandler logic
- var AvHandler = func(a *arcwar.Arc) func(uri string) string {
- return func(uri string) string {
- if a == nil {
- return uri
- }
- if a.Dimension.Height != 0 || a.Dimension.Width != 0 {
- return fmt.Sprintf("%s?player_width=%d&player_height=%d&player_rotate=%d", uri, a.Dimension.Width, a.Dimension.Height, a.Dimension.Rotate)
- }
- return uri
- }
- }
|