templates/home.html
4.4 KB
| 1 | {{define "title"}}{{if .Query}}Поиск: {{.Query}}{{else}}Обзор{{end}}{{end}} |
| 2 | {{define "content"}} |
| 3 | <div class="page-heading"> |
| 4 | <h1>{{if .Query}}Результаты поиска{{else}}Обзор{{end}}</h1> |
| 5 | </div> |
| 6 | |
| 7 | {{if .Query}} |
| 8 | <p class="page-description">Публичные репозитории по запросу «{{.Query}}»</p> |
| 9 | {{end}} |
| 10 | |
| 11 | <div class="dashboard-layout"> |
| 12 | <aside class="dashboard-sidebar"> |
| 13 | {{if .UserID}} |
| 14 | <div class="box"> |
| 15 | <div class="box-header"><h2>Ваш аккаунт</h2></div> |
| 16 | <div class="box-body sidebar-user"> |
| 17 | <a href="/profile" class="avatar avatar-md">{{slice .User.Username 0 1}}</a> |
| 18 | <div class="sidebar-user-info"> |
| 19 | <a href="/profile" class="sidebar-user-name">{{.User.Username}}</a> |
| 20 | <div class="text-small muted">{{.User.Email}}</div> |
| 21 | </div> |
| 22 | </div> |
| 23 | <div class="box-body box-body-bordered"> |
| 24 | <a href="/dashboard" class="btn btn-sm btn-block">Перейти в панель</a> |
| 25 | </div> |
| 26 | </div> |
| 27 | {{else}} |
| 28 | <div class="box"> |
| 29 | <div class="box-header"><h2>Clancore Repo</h2></div> |
| 30 | <div class="box-body"> |
| 31 | <p class="text-small muted">Git-хостинг с автоматической сборкой проектов. Публичные репозитории доступны всем.</p> |
| 32 | <a href="/register" class="btn btn-primary btn-block">Создать аккаунт</a> |
| 33 | </div> |
| 34 | </div> |
| 35 | {{end}} |
| 36 | |
| 37 | <div class="box"> |
| 38 | <div class="box-header"><h2>Быстрый старт</h2></div> |
| 39 | <div class="box-body"> |
| 40 | <pre class="mini-code">git clone {{.BaseURL}}/<owner>/<repo>.git</pre> |
| 41 | <p class="text-small muted mt-2">Замените владельца и имя репозитория на нужные.</p> |
| 42 | </div> |
| 43 | </div> |
| 44 | </aside> |
| 45 | |
| 46 | <div class="dashboard-main"> |
| 47 | <div class="box"> |
| 48 | <div class="box-header"> |
| 49 | <h2>Публичные репозитории</h2> |
| 50 | <span class="counter">{{len .PublicRepos}}</span> |
| 51 | </div> |
| 52 | |
| 53 | {{if .PublicRepos}} |
| 54 | <ul class="repo-list"> |
| 55 | {{range .PublicRepos}} |
| 56 | <li class="repo-list-item"> |
| 57 | <div class="repo-list-icon"> |
| 58 | <svg class="octicon" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true"> |
| 59 | <path d="M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 1 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5Zm10.5-1h-8a1 1 0 0 0-1 1v6.708A2.486 2.486 0 0 1 4.5 9h8ZM5 12.25a.25.25 0 0 1 .25-.25h3.5a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.4.2l-1.45-1.087a.249.249 0 0 0-.3 0L5.4 15.7a.25.25 0 0 1-.4-.2Z"/> |
| 60 | </svg> |
| 61 | </div> |
| 62 | <div class="repo-list-body"> |
| 63 | <div class="repo-list-title"> |
| 64 | <a href="/{{.CloneURL}}"><span class="muted">{{.Owner.Username}} /</span> {{.Name}}</a> |
| 65 | {{if .IsPrivate}}<span class="badge">Private</span>{{else}}<span class="badge">Public</span>{{end}} |
| 66 | </div> |
| 67 | {{if .Description}}<p class="repo-list-desc">{{truncate .Description 120}}</p>{{end}} |
| 68 | <div class="repo-list-meta"> |
| 69 | <span>Обновлён {{.UpdatedAt.Format "02.01.2006"}}</span> |
| 70 | </div> |
| 71 | </div> |
| 72 | <div class="repo-list-action"> |
| 73 | <a class="btn btn-sm" href="/{{.CloneURL}}">Открыть</a> |
| 74 | </div> |
| 75 | </li> |
| 76 | {{end}} |
| 77 | </ul> |
| 78 | {{else}} |
| 79 | <div class="empty-state"> |
| 80 | <svg width="24" height="24" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true"> |
| 81 | <path d="M10.68 11.74a6 6 0 0 1-7.922-8.982 6 6 0 0 1 8.982 7.922l3.04 3.04a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM11.5 7a4.499 4.499 0 1 0-8.997 0A4.499 4.499 0 0 0 11.5 7Z"/> |
| 82 | </svg> |
| 83 | <h3>{{if .Query}}Ничего не найдено{{else}}Пока нет публичных репозиториев{{end}}</h3> |
| 84 | <p>{{if .Query}}Попробуйте изменить запрос или вернитесь к обзору.{{else}}Создайте первый репозиторий, чтобы начать.{{end}}</p> |
| 85 | {{if .Query}}<a class="btn" href="/">Сбросить поиск</a>{{else if not .UserID}}<a class="btn btn-primary" href="/register">Создать аккаунт</a>{{end}} |
| 86 | </div> |
| 87 | {{end}} |
| 88 | </div> |
| 89 | </div> |
| 90 | </div> |
| 91 | {{end}} |