添加项目文件。
This commit is contained in:
59
TightWiki/Views/Utility/ConfirmAction.cshtml
Normal file
59
TightWiki/Views/Utility/ConfirmAction.cshtml
Normal 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> <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> <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> <button type="submit" class="btn btn-success rounded-0" name="UserSelection" value="false">No</button></div>
|
||||
}
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
91
TightWiki/Views/Utility/Notify.cshtml
Normal file
91
TightWiki/Views/Utility/Notify.cshtml
Normal 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>
|
||||
}
|
||||
Reference in New Issue
Block a user