|
- package repo
-
- import (
- "encoding/json"
-
- "code.gitea.io/gitea/models"
- "code.gitea.io/gitea/modules/log"
- wiki_service "code.gitea.io/gitea/services/wiki"
- )
-
- func TimeingCountData() {
- //query wiki data
- log.Info("start to time count data")
- wikiMap := make(map[int64]int)
-
- repoList := models.QueryAllRepo()
-
- for _, repoRecord := range repoList {
- wikiPath := models.WikiPath(repoRecord.OwnerName, repoRecord.Name)
- wikiRepo, commit, err := FindWikiRepoCommitByWikiPath(wikiPath)
- if err != nil {
- log.Error("query error.")
- } else {
- entries, err := commit.ListEntries()
- if err != nil {
- if wikiRepo != nil {
- wikiRepo.Close()
- }
- } else {
- pages := make([]PageMeta, 0, len(entries))
- for _, entry := range entries {
- if !entry.IsRegular() {
- continue
- }
- wikiName, err := wiki_service.FilenameToName(entry.Name())
- if err != nil {
- if models.IsErrWikiInvalidFileName(err) {
- continue
- }
- if wikiRepo != nil {
- wikiRepo.Close()
- }
- } else if wikiName == "_Sidebar" || wikiName == "_Footer" {
- continue
- }
-
- jsonObj, err := json.Marshal(entry)
- if err != nil {
- log.Error("convert to json error.")
- } else {
- log.Info("json=" + string(jsonObj))
- }
-
- pages = append(pages, PageMeta{
- Name: wikiName,
- SubURL: wiki_service.NameToSubURL(wikiName),
- })
- }
-
- }
-
- }
- }
-
- models.CountData(wikiMap)
- }
|