| 1 | {@ include(common/header) @} |
| 2 | {@ include(gitler/repohead) @} |
| 3 | <div class="gl-issuebar"> |
| 4 | <span class="gl-states"> |
| 5 | <a href="{{ $openUrl }}" class="{{ $f['state'] === 'open' ? 'active' : '' }}"><span class="gl-state-open">●</span> 開いている({{ $counts['open'] }})</a> |
| 6 | <a href="{{ $closedUrl }}" class="{{ $f['state'] === 'closed' ? 'active' : '' }}"><span class="gl-state-closed">✓</span> 閉じた({{ $counts['closed'] }})</a> |
| 7 | </span> |
| 8 | <span class="gl-links"> |
| 9 | <a href="{{ $repoUrl }}/labels">ラベル</a> |
| 10 | <a href="{{ $repoUrl }}/milestones">マイルストーン</a> |
| 11 | {@ if ($canIssue) @} |
| 12 | <a href="{{ $newUrl }}" class="gl-button">+{{ $isPull ? '新しいプルリクエスト' : '新しいイシュー' }}</a> |
| 13 | {@ endif @} |
| 14 | </span> |
| 15 | </div> |
| 16 | <form method="get" action="{{ $listUrl }}" class="gl-row gl-filter"> |
| 17 | <input type="hidden" name="state" value="{{ $f['state'] }}" /> |
| 18 | <input type="text" name="q" value="{{ $f['q'] }}" placeholder="題名・番号" /> |
| 19 | <select name="label"> |
| 20 | <option value="">ラベル:全部</option> |
| 21 | {@ foreach ($labels as $l) @} |
| 22 | <option value="{{ $l['id'] }}"{{{ (string)$l['id'] === (string)$f['label'] ? ' selected="selected"' : '' }}}>{{ $l['name'] }}</option> |
| 23 | {@ endforeach @} |
| 24 | </select> |
| 25 | <select name="milestone"> |
| 26 | <option value="">マイルストーン:全部</option> |
| 27 | {@ foreach ($milestones as $id => $m) @} |
| 28 | <option value="{{ $id }}"{{{ (string)$id === (string)$f['milestone'] ? ' selected="selected"' : '' }}}>{{ $m['title'] }}</option> |
| 29 | {@ endforeach @} |
| 30 | </select> |
| 31 | <select name="assignee"> |
| 32 | <option value="">担当者:全部</option> |
| 33 | {@ foreach ($people as $p) @} |
| 34 | <option value="{{ $p }}"{{{ $p === $f['assignee'] ? ' selected="selected"' : '' }}}>{{ $p }}</option> |
| 35 | {@ endforeach @} |
| 36 | </select> |
| 37 | <select name="sort"> |
| 38 | <option value="created"{{{ $f['sort'] === 'created' ? ' selected="selected"' : '' }}}>新しい順</option> |
| 39 | <option value="updated"{{{ $f['sort'] === 'updated' ? ' selected="selected"' : '' }}}>更新順</option> |
| 40 | <option value="comments"{{{ $f['sort'] === 'comments' ? ' selected="selected"' : '' }}}>コメントの数</option> |
| 41 | </select> |
| 42 | <button>絞り込む</button> |
| 43 | </form> |
| 44 | {@ if (empty($list)) @} |
| 45 | <p class="paragraph">{{ $isPull ? 'プルリクエスト' : 'イシュー' }}は有りません。</p> |
| 46 | {@ endif @} |
| 47 | <ul class="gl-issues"> |
| 48 | {@ foreach ($list as $i) @} |
| 49 | <li> |
| 50 | <span class="gl-state-{{ $i['state'] }}">{{ $i['state'] === 'open' ? '●' : ($i['state'] === 'merged' ? '⛙' : '✓') }}</span> |
| 51 | <a href="{{ $i['url'] }}"><b>{{ $i['title'] }}</b></a> |
| 52 | {@ foreach ($i['labels'] as $l) @} |
| 53 | <a href="{{ $listUrl }}?label={{ $l['id'] }}" class="gl-label" style="background-color: {{ $l['color'] }}; color: {{ $l['fg'] }};" title="{{ $l['description'] }}">{{ $l['name'] }}</a> |
| 54 | {@ endforeach @} |
| 55 | {@ if ($i['comments'] > 0) @} |
| 56 | <span class="gl-count">💬 {{ $i['comments'] }}</span> |
| 57 | {@ endif @} |
| 58 | <small>#{{ $i['number'] }} {{ $i['author'] }}が{{ $i['date'] }}に作成{{ $i['closedDate'] !== '' ? '、'.$i['closedDate'].($i['state'] === 'merged' ? 'にマージ' : 'に閉じた') : '' }}{{ $i['milestone'] !== '' ? ' 🏁 '.$i['milestone'] : '' }}{{ !empty($i['assignees']) ? ' 担当:'.implode('、', $i['assignees']) : '' }}</small> |
| 59 | </li> |
| 60 | {@ endforeach @} |
| 61 | </ul> |
| 62 | {@ if ($agitHelp !== '') @} |
| 63 | <p class="gl-muted gl-fedi">フォークしないでプルリクエストを作る(AGit):<code>{{ $agitHelp }}</code>。同じトピックにもう一度プッシュすると更新します。</p> |
| 64 | {@ endif @} |
| 65 | <p class="gl-pager"> |
| 66 | {@ if ($prevUrl !== '') @} |
| 67 | <a href="{{ $prevUrl }}">← 前</a> |
| 68 | {@ endif @} |
| 69 | {@ if ($nextUrl !== '') @} |
| 70 | <a href="{{ $nextUrl }}">次 →</a> |
| 71 | {@ endif @} |
| 72 | </p> |
| 73 | {@ include(common/footer) @} |