|
|
|
@@ -5,7 +5,6 @@ import ( |
|
|
|
"fmt" |
|
|
|
"sort" |
|
|
|
|
|
|
|
"code.gitea.io/gitea/modules/setting" |
|
|
|
"code.gitea.io/gitea/modules/timeutil" |
|
|
|
"xorm.io/builder" |
|
|
|
) |
|
|
|
@@ -60,19 +59,28 @@ func (datasets DatasetList) loadAttributes(e Engine) error { |
|
|
|
datasetIDs := make([]int64, len(datasets)) |
|
|
|
for i := range datasets { |
|
|
|
set[datasets[i].UserID] = struct{}{} |
|
|
|
set[datasets[i].RepoID] = struct{}{} |
|
|
|
datasetIDs[i] = datasets[i].ID |
|
|
|
} |
|
|
|
|
|
|
|
// Load owners. |
|
|
|
users := make(map[int64]*User, len(set)) |
|
|
|
repos := make(map[int64]*Repository, len(set)) |
|
|
|
if err := e. |
|
|
|
Where("id > 0"). |
|
|
|
In("id", keysInt64(set)). |
|
|
|
Find(&users); err != nil { |
|
|
|
return fmt.Errorf("find users: %v", err) |
|
|
|
} |
|
|
|
if err := e. |
|
|
|
Where("id > 0"). |
|
|
|
In("id", keysInt64(set)). |
|
|
|
Find(&repos); err != nil { |
|
|
|
return fmt.Errorf("find repos: %v", err) |
|
|
|
} |
|
|
|
for i := range datasets { |
|
|
|
datasets[i].User = users[datasets[i].UserID] |
|
|
|
datasets[i].Repo = repos[datasets[i].RepoID] |
|
|
|
} |
|
|
|
|
|
|
|
return nil |
|
|
|
@@ -331,10 +339,6 @@ func GetOwnerDatasetByID(id int64, user *User) (*Dataset, error) { |
|
|
|
return nil, errors.New("dataset not fount") |
|
|
|
} |
|
|
|
|
|
|
|
func (dataset *Dataset) Link() string { |
|
|
|
return setting.AppSubURL + "/" + dataset.Repo.FullName() |
|
|
|
} |
|
|
|
|
|
|
|
func IncreaseDownloadCount(datasetID int64) error { |
|
|
|
// Update download count. |
|
|
|
if _, err := x.Exec("UPDATE `dataset` SET download_times=download_times+1 WHERE id=?", datasetID); err != nil { |
|
|
|
|