1{% import "git.gabrielgio.me/cerrado/pkg/service" %}
2{% import "context" %}
3{% import "strings" %}
4
5{% code
6type GitListPage struct {
7 Respositories []*service.Repository
8 About []byte
9}
10%}
11
12
13{% code func firstLine(text string) string {
14 lines := strings.Split(text, "\n")
15 if len(lines) > 0 {
16 return lines[0]
17 }
18 return ""
19}
20%}
21
22{% func (p *GitListPage) Title(ctx context.Context) %}Git | List{% endfunc %}
23
24{% func (p *GitListPage) Navbar(ctx context.Context) %}{%= Navbar(ctx, Git) %}{% endfunc %}
25
26{% func (p *GitListPage) Content(ctx context.Context) %}
27<div class="row">
28 <div class="col-md-6 order-last order-md-first">
29 <div class="event-list">
30 {% for _, r := range p.Respositories %}
31 <div class="event">
32 <div class="row">
33 <div class="col-md">
34 <a href="/{%s r.Name %}/">{%s r.Name %}</a>
35 </div>
36 <div class="col-md text-md-end">
37 <small>{% if !r.Public %}private{% endif %}</small>
38 </div>
39 </div>
40 </hr>
41 <p>{%s r.Description %}</p>
42 <p style="background: #dadada">
43 <a title="{%s r.LastCommit.Hash.String() %}" href="/{%s r.Name %}/commit/{%s r.LastCommit.Hash.String() %}/">{%s r.LastCommit.Hash.String()[0:8] %}</a> -
44 <a title="{%s r.LastCommit.Author.Email %}">{%s r.LastCommit.Author.Name %}</a> -
45 {%s firstLine(r.LastCommit.Message) %}</p>
46 <p>
47 <a href="/{%s r.Name %}/log/{%s r.Ref %}/">log</a>
48 <a href="/{%s r.Name %}/tree/{%s r.Ref %}/">tree</a>
49 <a href="/{%s r.Name %}/refs/">refs</a>
50 </p>
51 </div>
52 {% endfor %}
53 </div>
54 </div>
55 <div id="about" class="col-md-4 order-first order-md-last">
56 {%z= p.About %}
57 <div class="alert alert-warning text-center" role="alert">
58 This project is under development, things may be broken or incomplete.
59 </div>
60 </div>
61</div>
62{% endfunc %}
63
64{% func (p *GitListPage) Script(ctx context.Context) %}
65{% endfunc %}