添加项目文件。

This commit is contained in:
Zel
2025-01-22 23:31:03 +08:00
parent 1b8ba6771f
commit 2ae76476fb
894 changed files with 774558 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
@model TightWiki.Models.ViewModels.Utility.ConfirmActionViewModel
@{
Layout = "/Views/Shared/_Layout.cshtml";
var sessionState = ViewData["SessionState"] as TightWiki.SessionState ?? throw new Exception("Wiki State Context cannot be null.");
string cardClass = "card mb-3";
string cardHeaderClass = "card-header";
if (string.Equals(Model.Style, "Danger", StringComparison.InvariantCultureIgnoreCase))
{
cardHeaderClass += " bg-danger text-white";
cardClass += " border-danger";
}
if (string.Equals(Model.Style, "Warn", StringComparison.InvariantCultureIgnoreCase))
{
cardHeaderClass += " bg-warning";
cardClass += " border-warning";
}
}
@if (!string.IsNullOrEmpty(Model.ErrorMessage))
{
<div class="alert alert-danger">@Html.Raw(Model.ErrorMessage)</div>
}
@if (!string.IsNullOrEmpty(Model.SuccessMessage))
{
<div class="alert alert-success">@Html.Raw(Model.SuccessMessage)</div>
}
<div class="@cardClass">
<div class="@cardHeaderClass">
<strong>Are you sure?</strong>
</div>
<div class="card-body">
@Html.Raw(@Model.Message)<br /><br />
<form action='@Model.ControllerURL' method="post">
@Html.HiddenFor(m => m.NoRedirectURL)
@Html.HiddenFor(m => m.YesRedirectURL)
@Html.HiddenFor(m => m.Message)
@Html.HiddenFor(m => m.Style)
@if (Model.Style == "Safe")
{
<div class="form-group"><button type="submit" class="btn btn-success rounded-0" name="UserSelection" value="true">Yes</button>&nbsp;&nbsp;<button type="submit" class="btn btn-success rounded-0" name="UserSelection" value="false">No</button></div>
}
else if (Model.Style == "Warn")
{
<div class="form-group"><button type="submit" class="btn btn-warning rounded-0" name="UserSelection" value="true">Yes</button>&nbsp;&nbsp;<button type="submit" class="btn btn-success rounded-0" name="UserSelection" value="false">No</button></div>
}
else
{
<div class="form-group"><button type="submit" class="btn btn-danger rounded-0" name="UserSelection" value="true">Yes</button>&nbsp;&nbsp;<button type="submit" class="btn btn-success rounded-0" name="UserSelection" value="false">No</button></div>
}
</form>
</div>
</div>

View File

@@ -0,0 +1,91 @@
@model TightWiki.Models.ViewModels.Utility.NotifyViewModel
@{
Layout = "/Views/Shared/_Layout.cshtml";
var sessionState = ViewData["SessionState"] as TightWiki.SessionState ?? throw new Exception("Wiki State Context cannot be null.");
bool _isFirst = true;
}
@if (string.IsNullOrEmpty(@Model.RedirectURL) == false && string.IsNullOrEmpty(Model.ErrorMessage) == true && Model.RedirectTimeout > 0)
{
<script>
document.addEventListener("DOMContentLoaded", function () {
var countdownElement = document.getElementById('countdown');
var countdownTime = @(Model.RedirectTimeout - 1);
var interval = setInterval(function () {
countdownElement.textContent = countdownTime;
countdownTime--;
if (countdownTime < 0) {
clearInterval(interval);
window.location.href = "@Model.RedirectURL";
}
}, 1000);
});
</script>
}
@if (!string.IsNullOrEmpty(Model.ErrorMessage))
{
<div class="alert alert-danger">
@{
var errorMessages = @Model.ErrorMessage.Replace("\r\n", "\n").Split("\n");
}
@foreach (var message in errorMessages)
{
if (_isFirst)
{
<strong>@message</strong>
if (errorMessages.Count() > 1)
{
<br />
<hr />
}
_isFirst = false;
}
else
{
@message
<br />
}
}
@if (string.IsNullOrEmpty(@Model.RedirectURL) == false)
{
<br />
<a href="@Model.RedirectURL">Continue</a>
}
</div>
}
@if (!string.IsNullOrEmpty(Model.SuccessMessage))
{
<div class="alert alert-success">
@{
var successMessages = @Model.SuccessMessage.Replace("\r\n", "\n").Split("\n");
}
@foreach (var message in successMessages)
{
if (_isFirst)
{
<strong>@message</strong>
if (successMessages.Count() > 1)
{
<br />
<hr />
}
_isFirst = false;
}
else
{
@message
<br />
}
}
@if (string.IsNullOrEmpty(@Model.RedirectURL) == false && Model.RedirectTimeout > 0)
{
<p>
<a href="@Model.RedirectURL">Continue now</a> or you will be redirected in <span id="countdown">@Model.RedirectTimeout</span> seconds.
</p>
}
</div>
}