/*
SGBlog -- Git-backed CGI/UCSPI blogging/phlogging/gemlogging engine
-Copyright (C) 2020-2022 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2020-2023 Sergey Matveev <stargrave@stargrave.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
"github.com/go-git/go-git/v5"
"github.com/go-git/go-git/v5/plumbing"
"github.com/go-git/go-git/v5/plumbing/object"
+ "github.com/vorlif/spreak"
"go.stargrave.org/sgblog"
)
if err != nil {
log.Fatalln(err)
}
+ initLocalizer(cfg.Lang)
headHash, err := initRepo(cfg)
if err != nil {
}
lines := msgSplit(commit.Message)
entries = append(entries, TableMenuEntry{
- Commit: commit,
- Title: lines[0],
- LinesNum: len(lines) - 2,
+ Commit: commit,
+ Title: lines[0],
+ LinesNum: len(lines) - 2,
+ ImagesNum: len(listImgs(cfg, commit.Hash)),
CommentsNum: len(sgblog.ParseComments(sgblog.GetNote(
repo, commentsTree, commit.Hash,
))),
offsetPrev = 0
}
err = TmplGemMenu.Execute(os.Stdout, struct {
+ T *spreak.Localizer
Cfg *Cfg
Topic string
Offset int
Topics []string
Version string
}{
+ T: localizer,
Cfg: cfg,
Topic: topic,
Offset: offset,
}
title := msgSplit(commit.Message)[0]
err = TmplGemEntry.Execute(os.Stdout, struct {
+ T *spreak.Localizer
Title string
Commit *object.Commit
When string
Cfg *Cfg
Note string
+ Images []Img
Comments []string
Topics []string
Version string
TitleEscaped string
}{
+ T: localizer,
Title: title,
Commit: commit,
When: commit.Author.When.Format(sgblog.WhenFmt),
Cfg: cfg,
Note: string(sgblog.GetNote(repo, notesTree, commit.Hash)),
+ Images: listImgs(cfg, commit.Hash),
Comments: sgblog.ParseComments(sgblog.GetNote(repo, commentsTree, commit.Hash)),
Topics: sgblog.ParseTopics(sgblog.GetNote(repo, topicsTree, commit.Hash)),
Version: sgblog.Version,