{{template "base/head" .}}
{{template "base/navbar" .}}
<div id="body" class="container" data-page="admin">
    {{template "admin/nav" .}}
    <div id="admin-container" class="col-md-10">
        {{template "base/alert" .}}
        <div class="panel panel-default">
            <div class="panel-heading">
                Statistic
            </div>

            <div class="panel-body">
                Gogs database has <b>{{.Stats.Counter.User}}</b> users, <b>{{.Stats.Counter.PublicKey}}</b> SSH keys, <b>{{.Stats.Counter.Repo}}</b> repositories, <b>{{.Stats.Counter.Watch}}</b> watches, <b>{{.Stats.Counter.Action}}</b> actions, <b>{{.Stats.Counter.Access}}</b> accesses, <b>{{.Stats.Counter.Issue}}</b> issues, <b>{{.Stats.Counter.Comment}}</b> comments, <b>{{.Stats.Counter.Mirror}}</b> mirrors, <b>{{.Stats.Counter.Oauth}}</b> oauthes, <b>{{.Stats.Counter.Release}}</b> releases, <b>{{.Stats.Counter.LoginSource}}</b> login sources, <b>{{.Stats.Counter.Webhook}}</b> webhooks, <b>{{.Stats.Counter.Milestone}}</b> milestones.
            </div>
        </div>

        <div class="panel panel-default">
            <div class="panel-heading">
                Operations
            </div>

            <div class="panel-body">
                <table class="table">
                    <thead>
                        <tr>
                            <th>Name</th>
                            <th>Op.</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>Clean unbind OAuthes</td>
                            <td><i class="fa fa-caret-square-o-right"></i> <a href="/admin?op=1">Run</a></td>
                        </tr>
                        <tr>
                            <td>Delete inactivate accounts</td>
                            <td><i class="fa fa-caret-square-o-right"></i> <a href="/admin?op=2">Run</a></td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </div>

        <div class="panel panel-default">
            <div class="panel-heading">
                System Monitor Status
            </div>

            <div class="panel-body">
                <dl class="dl-horizontal admin-dl-horizontal">
                    <dt>Server Uptime</dt>
                    <dd>{{.SysStatus.Uptime}}</dd>

                    <dt>Current Goroutines</dt>
                    <dd>{{.SysStatus.NumGoroutine}}</dd>

                    <hr/>
                    <dt>Current Memory Usage</dt>
                    <dd>{{.SysStatus.MemAllocated}}</dd>

                    <dt>Total Memory Allocated</dt>
                    <dd>{{.SysStatus.MemTotal}}</dd>

                    <dt>Memory Obtained</dt>
                    <dd>{{.SysStatus.MemSys}}</dd>

                    <dt>Pointer Lookup Times</dt>
                    <dd>{{.SysStatus.Lookups}}</dd>

                    <dt>Memory Allocate Times</dt>
                    <dd>{{.SysStatus.MemMallocs}}</dd>

                    <dt>Memory Free Times</dt>
                    <dd>{{.SysStatus.MemFrees}}</dd>

                    <hr/>
                    <dt>Current Heap Usage</dt>
                    <dd>{{.SysStatus.HeapAlloc}}</dd>

                    <dt>Heap Memory Obtained</dt>
                    <dd>{{.SysStatus.HeapSys}}</dd>

                    <dt>Heap Memory Idle</dt>
                    <dd>{{.SysStatus.HeapIdle}}</dd>

                    <dt>Heap Memory In Use</dt>
                    <dd>{{.SysStatus.HeapInuse}}</dd>

                    <dt>Heap Memory Released</dt>
                    <dd>{{.SysStatus.HeapReleased}}</dd>

                    <dt>Heap Objects</dt>
                    <dd>{{.SysStatus.HeapObjects}}</dd>

                    <hr/>
                    <dt>Bootstrap Stack Usage</dt>
                    <dd>{{.SysStatus.StackInuse}}</dd>

                    <dt>Stack Memory Obtained</dt>
                    <dd>{{.SysStatus.StackSys}}</dd>

                    <dt>MSpan Structures Usage</dt>
                    <dd>{{.SysStatus.MSpanInuse}}</dd>

                    <dt>MSpan Structures Obtained</dt>
                    <dd>{{.SysStatus.HeapSys}}</dd>

                    <dt>MCache Structures Usage</dt>
                    <dd>{{.SysStatus.MCacheInuse}}</dd>

                    <dt>MCache Structures Obtained</dt>
                    <dd>{{.SysStatus.MCacheSys}}</dd>

                    <dt>Profiling Bucket Hash Table Obtained</dt>
                    <dd>{{.SysStatus.BuckHashSys}}</dd>

                    <dt>GC Metadada Obtained</dt>
                    <dd>{{.SysStatus.GCSys}}</dd>

                    <dt>Other System Allocation Obtained</dt>
                    <dd>{{.SysStatus.OtherSys}}</dd>

                    <hr/>
                    <dt>Next GC Recycle</dt>
                    <dd>{{.SysStatus.NextGC}}</dd>

                    <dt>Last GC Time</dt>
                    <dd>{{.SysStatus.LastGC}} ago</dd>

                    <dt>Total GC Pause</dt>
                    <dd>{{.SysStatus.PauseTotalNs}}</dd>

                    <dt>Last GC Pause</dt>
                    <dd>{{.SysStatus.PauseNs}}</dd>

                    <dt>GC Times</dt>
                    <dd>{{.SysStatus.NumGC}}</dd>
                </dl>
            </div>
        </div>
    </div>
</div>
{{template "base/footer" .}}