{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin monitor")}}
<div class="admin-setting-content">

	<div class="tw-flex tw-items-center">
		<div class="tw-flex-1">
			<div class="ui compact small menu">
				<a class="{{if eq .ShowGoroutineList "process"}}active {{end}}item" href="?show=process">{{ctx.Locale.Tr "admin.monitor.process"}}</a>
				<a class="{{if eq .ShowGoroutineList "stacktrace"}}active {{end}}item" href="?show=stacktrace">{{ctx.Locale.Tr "admin.monitor.stacktrace"}}</a>
			</div>
		</div>
		<form target="_blank" action="{{AppSubUrl}}/admin/monitor/diagnosis" class="ui form tw-flex tw-gap-3">
			<label class="tw-flex tw-gap-2 tw-items-center tw-whitespace-nowrap">
				{{ctx.Locale.Tr "admin.monitor.duration"}}
				<input type="number" name="seconds" max="300" min="0" value="10">
			</label>
			<button class="ui primary small button">{{ctx.Locale.Tr "admin.monitor.download_diagnosis_report"}}</button>
		</form>
	</div>

	<div class="divider"></div>

	<h4 class="ui top attached header">
		{{printf "%d Goroutines" .GoroutineCount}}{{/* Goroutine is non-translatable*/}}
		{{- if .ProcessCount -}}, {{ctx.Locale.Tr "admin.monitor.processes_count" .ProcessCount}}{{- end -}}
	</h4>

	{{if .ProcessStacks}}
	<div class="ui attached segment">
		<div class="ui relaxed divided list">
			{{range .ProcessStacks}}
				{{template "admin/stacktrace-row" dict "Process" . "root" $}}
			{{end}}
		</div>
	</div>
	{{end}}
</div>

<div class="ui g-modal-confirm delete modal">
	<div class="header">
		{{ctx.Locale.Tr "admin.monitor.process.cancel"}}
	</div>
	<div class="content">
		<p>{{ctx.Locale.Tr "admin.monitor.process.cancel_notices" (`<span class="name"></span>`|SafeHTML)}}</p>
		<p>{{ctx.Locale.Tr "admin.monitor.process.cancel_desc"}}</p>
	</div>
	{{template "base/modal_actions_confirm" .}}
</div>

{{template "admin/layout_footer" .}}
