Files
tamabox/templates/question/success.html
T
2026-10-19 00:30:46 +08:00

56 lines
2.6 KiB
HTML

{{template "base/header" .}}
<div class="uk-card uk-card-default uk-card-body">
<div class="uk-text-center uk-margin-bottom">
<span uk-icon="icon: check; ratio: 2" class="uk-text-success"></span>
<h3 class="uk-margin-remove">{{t .LangCode "success.title"}}</h3>
</div>
<p class="uk-text-small uk-text-muted">{{t .LangCode "success.yourQuestion"}}</p>
<div class="md-body uk-text-break">{{MarkdownFormat .Question.Content}}</div>
{{ if .HasReceiveEmail }}
<div class="uk-alert-success" uk-alert>
<p>{{t .LangCode "success.emailSent"}}</p>
</div>
{{ else }}
<div class="uk-alert-danger" uk-alert>
<p>{{t .LangCode "success.saveLink" | safe}}</p>
</div>
{{ end }}
<div class="uk-margin">
<label class="uk-form-label uk-text-small">{{t .LangCode "success.privateLink"}}</label>
<div class="uk-flex uk-flex-middle">
<input id="private-url-input" class="uk-input uk-form-small uk-width-expand" type="text" value="{{.PrivateAbsURL}}" readonly>
<button id="copy-btn" class="uk-button uk-button-primary uk-button-small uk-margin-small-left uk-flex-none" type="button">{{t .LangCode "success.copy"}}</button>
</div>
<p class="uk-text-small uk-text-muted">{{t .LangCode "success.token" .Question.Token}}</p>
</div>
<!-- 两个按钮等宽:用 flex 均分而不是靠 margin,文字长短不一(各语言差异更大)时也能对齐 -->
<div class="uk-flex uk-flex-center uk-flex-wrap uk-margin-top" style="gap: 8px;">
<a class="uk-button uk-button-default uk-button-small" style="flex: 1 1 160px; max-width: 220px;" href="{{.PrivateURL}}">{{t .LangCode "success.viewQuestion"}}</a>
<a class="uk-button uk-button-default uk-button-small" style="flex: 1 1 160px; max-width: 220px;" href="/_/{{.PageUser.Domain}}">{{t .LangCode "success.backToBox" .PageUser.Name}}</a>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
var input = document.getElementById('private-url-input');
var btn = document.getElementById('copy-btn');
if (!input || !btn) return;
btn.addEventListener('click', function () {
input.select();
input.setSelectionRange(0, 99999);
var ok = false;
try { ok = document.execCommand('copy'); } catch (e) {}
if (navigator.clipboard && navigator.clipboard.writeText) {
navigator.clipboard.writeText(input.value).then(function () { ok = true; }, function () {});
}
btn.textContent = ok ? '{{t .LangCode "success.copied"}}' : '{{t .LangCode "success.copyFailed"}}';
setTimeout(function () { btn.textContent = '{{t .LangCode "success.copy"}}'; }, 2000);
});
});
</script>
{{template "base/footer" .}}