Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
alist-org
GitHub Repository: alist-org/alist
Path: blob/main/drivers/baidu_photo/help.go
1988 views
1
package baiduphoto
2
3
import (
4
"fmt"
5
"math"
6
"math/rand"
7
"strings"
8
"time"
9
10
"github.com/alist-org/alist/v3/pkg/utils"
11
)
12
13
// Tid生成
14
func getTid() string {
15
return fmt.Sprintf("3%d%.0f", time.Now().Unix(), math.Floor(9000000*rand.Float64()+1000000))
16
}
17
18
func toTime(t int64) *time.Time {
19
tm := time.Unix(t, 0)
20
return &tm
21
}
22
23
func fsidsFormatNotUk(ids ...int64) string {
24
buf := utils.MustSliceConvert(ids, func(id int64) string {
25
return fmt.Sprintf(`{"fsid":%d}`, id)
26
})
27
return fmt.Sprintf("[%s]", strings.Join(buf, ","))
28
}
29
30
func getFileName(path string) string {
31
return path[strings.LastIndex(path, "/")+1:]
32
}
33
34
func MustString(str string, err error) string {
35
return str
36
}
37
38
/*
39
* 处理文件变化
40
* 最大程度利用重复数据
41
**/
42
func copyFile(file *AlbumFile, cf *CopyFile) *File {
43
return &File{
44
Fsid: cf.Fsid,
45
Path: cf.Path,
46
Ctime: cf.Ctime,
47
Mtime: cf.Ctime,
48
Size: file.Size,
49
Thumburl: file.Thumburl,
50
}
51
}
52
53
func moveFileToAlbumFile(file *File, album *Album, uk int64) *AlbumFile {
54
return &AlbumFile{
55
File: *file,
56
AlbumID: album.AlbumID,
57
Tid: album.Tid,
58
Uk: uk,
59
}
60
}
61
62
func renameAlbum(album *Album, newName string) *Album {
63
return &Album{
64
AlbumID: album.AlbumID,
65
Tid: album.Tid,
66
JoinTime: album.JoinTime,
67
CreationTime: album.CreationTime,
68
Title: newName,
69
Mtime: time.Now().Unix(),
70
}
71
}
72
73
func BoolToIntStr(b bool) string {
74
if b {
75
return "1"
76
}
77
return "0"
78
}
79
80