修改功能

This commit is contained in:
zel
2025-02-08 16:40:55 +08:00
parent 4c8ecf55f7
commit c4bdebd92c
13 changed files with 90 additions and 79 deletions
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
+4 -1
View File
@@ -1,8 +1,11 @@
namespace TightWiki.Models.DataModels using System.ComponentModel.DataAnnotations;
namespace TightWiki.Models.DataModels
{ {
public class Emoji public class Emoji
{ {
public int Id { get; set; } public int Id { get; set; }
[Display(Name ="名称")]
public string Name { get; set; } = string.Empty; public string Name { get; set; } = string.Empty;
public string Shortcut { get; set; } = string.Empty; public string Shortcut { get; set; } = string.Empty;
public int PaginationPageCount { get; set; } public int PaginationPageCount { get; set; }
@@ -5,42 +5,42 @@ namespace TightWiki.Models.ViewModels.Admin
{ {
public partial class AccountProfileAccountViewModel public partial class AccountProfileAccountViewModel
{ {
[Display(Name = "Theme")] [Display(Name = "主题")]
public string? Theme { get; set; } = string.Empty; public string? Theme { get; set; } = string.Empty;
public Guid UserId { get; set; } public Guid UserId { get; set; }
[Display(Name = "Email Address")] [Display(Name = "Email")]
[Required(ErrorMessage = "Email address is required")] [Required(ErrorMessage = "邮箱地址为必填项")]
public string EmailAddress { get; set; } = string.Empty; public string EmailAddress { get; set; } = string.Empty;
[Display(Name = "Account Name")] [Display(Name = "账号")]
[Required(ErrorMessage = "Account name is required")] [Required(ErrorMessage = "账号为必填项")]
public string AccountName { get; set; } = string.Empty; public string AccountName { get; set; } = string.Empty;
public string? Navigation { get; set; } = string.Empty; public string? Navigation { get; set; } = string.Empty;
[Display(Name = "First Name")] [Display(Name = "")]
public string? FirstName { get; set; }
[Display(Name = "Last Name")]
public string? LastName { get; set; } = string.Empty; public string? LastName { get; set; } = string.Empty;
[Display(Name = "Time-Zone")] [Display(Name = "")]
[Required(ErrorMessage = "TimeZone is required")] public string? FirstName { get; set; }
[Display(Name = "时区")]
[Required(ErrorMessage = "时区为必填项")]
public string TimeZone { get; set; } = string.Empty; public string TimeZone { get; set; } = string.Empty;
[Display(Name = "Country")] [Display(Name = "国家")]
[Required(ErrorMessage = "Country is required")] [Required(ErrorMessage = "国家为必填项")]
public string Country { get; set; } = string.Empty; public string Country { get; set; } = string.Empty;
[Display(Name = "Language")] [Display(Name = "语言")]
[Required(ErrorMessage = "Language is required")] [Required(ErrorMessage = "语言为必填项")]
public string Language { get; set; } = string.Empty; public string Language { get; set; } = string.Empty;
[Display(Name = "Biography")] [Display(Name = "个人简介")]
public string? Biography { get; set; } = string.Empty; public string? Biography { get; set; } = string.Empty;
[Display(Name = "Email Confirmed?")] [Display(Name = "邮箱确认?")]
public bool EmailConfirmed { get; set; } public bool EmailConfirmed { get; set; }
public byte[]? Avatar { get; set; } public byte[]? Avatar { get; set; }
@@ -1,10 +1,16 @@
namespace TightWiki.Models.ViewModels.Admin using System.ComponentModel.DataAnnotations;
namespace TightWiki.Models.ViewModels.Admin
{ {
public class AddEmojiViewModel : ViewModelBase public class AddEmojiViewModel : ViewModelBase
{ {
public int Id { get; set; } public int Id { get; set; }
[Display(Name ="名称")]
public string Name { get; set; } = string.Empty; public string Name { get; set; } = string.Empty;
public string? OriginalName { get; set; } public string? OriginalName { get; set; }
[Display(Name = "分类")]
public string Categories { get; set; } = string.Empty; public string Categories { get; set; } = string.Empty;
} }
} }
@@ -1,4 +1,5 @@
using TightWiki.Models.DataModels; using System.ComponentModel.DataAnnotations;
using TightWiki.Models.DataModels;
namespace TightWiki.Models.ViewModels.Admin namespace TightWiki.Models.ViewModels.Admin
{ {
@@ -6,6 +7,7 @@ namespace TightWiki.Models.ViewModels.Admin
{ {
public Emoji Emoji { get; set; } = new(); public Emoji Emoji { get; set; } = new();
public string OriginalName { get; set; } = string.Empty; public string OriginalName { get; set; } = string.Empty;
[Display(Name = "分类")]
public string Categories { get; set; } = string.Empty; public string Categories { get; set; } = string.Empty;
} }
} }
+15 -15
View File
@@ -6,11 +6,11 @@
} }
<h3> <h3>
账号 用户
</h3> </h3>
<p> <p>
设置您的账号<br /><br /> 账号设置<br /><br />
</p> </p>
@@ -34,7 +34,7 @@
@Html.HiddenFor(m => m.AccountProfile.Navigation) @Html.HiddenFor(m => m.AccountProfile.Navigation)
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Avatar" class="col-sm-2 col-form-label"><strong>Avatar</strong></label> <label for="Avatar" class="col-sm-2 col-form-label"><strong>头像</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@if (@Model.AccountProfile.Navigation != "") @if (@Model.AccountProfile.Navigation != "")
{ {
@@ -51,7 +51,7 @@
<div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.EmailAddress)</div> <div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.EmailAddress)</div>
</div> </div>
</div> </div>
<div class="form-group row mb-1"> <div class="form-group row mb-1" style="display:none;">
<label for="EmailConfirmed" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.EmailConfirmed)</strong></label> <label for="EmailConfirmed" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.EmailConfirmed)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@Html.CheckBoxFor(m => m.AccountProfile.EmailConfirmed, new { @class = "input-control" }) @Html.CheckBoxFor(m => m.AccountProfile.EmailConfirmed, new { @class = "input-control" })
@@ -66,14 +66,6 @@
</div> </div>
</div> </div>
<div class="form-group row mb-1">
<label for="FirstName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.FirstName)</strong></label>
<div class="col-sm-10">
@Html.TextBoxFor(m => m.AccountProfile.FirstName, new { @class = "form-control" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.FirstName)</div>
</div>
</div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="LastName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.LastName)</strong></label> <label for="LastName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.LastName)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@@ -82,6 +74,14 @@
</div> </div>
</div> </div>
<div class="form-group row mb-1">
<label for="FirstName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.FirstName)</strong></label>
<div class="col-sm-10">
@Html.TextBoxFor(m => m.AccountProfile.FirstName, new { @class = "form-control" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.FirstName)</div>
</div>
</div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Role" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Role)</strong></label> <label for="Role" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Role)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@@ -134,7 +134,7 @@
<label for="Language" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Language)</strong></label> <label for="Language" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Language)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
<select name="AccountProfile.Language" id="AccountProfile.Language" class="form-control"> <select name="AccountProfile.Language" id="AccountProfile.Language" class="form-control">
<option value="" style="color:#ccc !important;">Select a language</option> <option value="" style="color:#ccc !important;">选择一个语言</option>
@foreach (var item in Model.Languages) @foreach (var item in Model.Languages)
{ {
<option value="@item.Value" selected=@(Model.AccountProfile.Language == item.Value ? "selected" : null)> <option value="@item.Value" selected=@(Model.AccountProfile.Language == item.Value ? "selected" : null)>
@@ -187,7 +187,7 @@
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<div class="col-sm-10 offset-sm-2"> <div class="col-sm-10 offset-sm-2">
<button type="submit" class="btn btn btn-primary rounded-0">Save!</button> <button type="submit" class="btn btn btn-primary rounded-0">保存!</button>
</div> </div>
</div> </div>
</form> </form>
@@ -196,4 +196,4 @@
} }
<br /> <br />
<form action="@GlobalConfiguration.BasePath/Admin/DeleteAccount/@Model.AccountProfile.Navigation"><button type="submit" class="btn btn-danger rounded-0">Delete Account</button></form> <form action="@GlobalConfiguration.BasePath/Admin/DeleteAccount/@Model.AccountProfile.Navigation"><button type="submit" class="btn btn-danger rounded-0">删除账号</button></form>
+13 -13
View File
@@ -7,11 +7,11 @@
} }
<h3> <h3>
Accounts 账号
</h3> </h3>
<p> <p>
Global configuration for user accounts.<br /><br /> <br /><br />
</p> </p>
@@ -24,7 +24,7 @@
<div class="alert alert-success">@Html.Raw(Model.SuccessMessage)</div> <div class="alert alert-success">@Html.Raw(Model.SuccessMessage)</div>
} }
<a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddAccount">Add new account</a> <a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddAccount">新增</a>
<br /> <br />
<br /> <br />
@@ -35,7 +35,7 @@
<div class="flex-grow-1 me-2"> <div class="flex-grow-1 me-2">
@Html.TextBoxFor(x => x.SearchString, new { @class = "form-control" }) @Html.TextBoxFor(x => x.SearchString, new { @class = "form-control" })
</div> </div>
<button type="submit" value="Search" class="btn btn-primary">Search</button> <button type="submit" value="Search" class="btn btn-primary">搜索</button>
</div> </div>
</div> </div>
@@ -44,13 +44,13 @@
<table class="table fixedTable100 table-striped" border="0" cellspacing="0" cellpadding="0"> <table class="table fixedTable100 table-striped" border="0" cellspacing="0" cellpadding="0">
<thead> <thead>
<tr> <tr>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Account")">Account</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Account")">账号</a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "LastName")">Last Name</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "LastName")"></a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "FirstName")">First Name</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "FirstName")"></a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Country")">Country</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Country")">国家</a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "TimeZone")">TimeZone</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "TimeZone")">时区</a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "EmailAddress")">EmailAddress</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "EmailAddress")">Email</a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Created")">CreatedDate</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Created")">创建时间</a></strong></td>
</tr> </tr>
</thead> </thead>
@@ -74,14 +74,14 @@
{ {
<div class="d-flex small text-muted mb-0"> <div class="d-flex small text-muted mb-0">
<strong> <strong>
Either there are no accounts configured or your search criteria returned no results. 暂无数据
</strong> </strong>
</div> </div>
} }
} }
<br /> <br />
<a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddAccount">Add new account</a> <a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddAccount">新增</a>
<script> <script>
window.onload = function () { window.onload = function () {
+12 -12
View File
@@ -6,11 +6,11 @@
} }
<h3> <h3>
新增账号 新增用户
</h3> </h3>
<p> <p>
Create new user account.<br /><br /> <br /><br />
</p> </p>
@if (!string.IsNullOrEmpty(Model.ErrorMessage)) @if (!string.IsNullOrEmpty(Model.ErrorMessage))
@@ -31,7 +31,7 @@
@Html.HiddenFor(m => m.AccountProfile.Navigation) @Html.HiddenFor(m => m.AccountProfile.Navigation)
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Avatar" class="col-sm-2 col-form-label"><strong>Avatar</strong></label> <label for="Avatar" class="col-sm-2 col-form-label"><strong>头像</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
<input type="file" id="Avatar" name="Avatar" class="form-control-file" onchange="fileCheck(this);" /> <input type="file" id="Avatar" name="Avatar" class="form-control-file" onchange="fileCheck(this);" />
</div> </div>
@@ -53,14 +53,6 @@
</div> </div>
</div> </div>
<div class="form-group row mb-1">
<label for="FirstName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.FirstName)</strong></label>
<div class="col-sm-10">
@Html.TextBoxFor(m => m.AccountProfile.FirstName, new { @class = "form-control", placeholder = "not required" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.FirstName)</div>
</div>
</div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="LastName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.LastName)</strong></label> <label for="LastName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.LastName)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@@ -69,6 +61,14 @@
</div> </div>
</div> </div>
<div class="form-group row mb-1">
<label for="FirstName" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.FirstName)</strong></label>
<div class="col-sm-10">
@Html.TextBoxFor(m => m.AccountProfile.FirstName, new { @class = "form-control", placeholder = "not required" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.AccountProfile.FirstName)</div>
</div>
</div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Role" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Role)</strong></label> <label for="Role" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Role)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@@ -89,7 +89,7 @@
<label for="Country" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Country)</strong></label> <label for="Country" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.AccountProfile.Country)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
<select name="AccountProfile.Country" id="AccountProfile.Country" class="form-control"> <select name="AccountProfile.Country" id="AccountProfile.Country" class="form-control">
<option value="" style="color:#ccc !important;">Select a country</option> <option value="" style="color:#ccc !important;">选择一个国家</option>
@foreach (var item in Model.Countries) @foreach (var item in Model.Countries)
{ {
<option value="@item.Value" selected=@(Model.AccountProfile.Country == item.Value ? "selected" : null)> <option value="@item.Value" selected=@(Model.AccountProfile.Country == item.Value ? "selected" : null)>
+6 -8
View File
@@ -21,12 +21,10 @@
</script> </script>
<h3> <h3>
Add Emoji 新增 Emoji
</h3> </h3>
<p> <p><br /><br /></p>
Configuration to add an emoji.<br /><br />
</p>
@if (!string.IsNullOrEmpty(Model.ErrorMessage)) @if (!string.IsNullOrEmpty(Model.ErrorMessage))
{ {
@@ -45,7 +43,7 @@
<div class="container"> <div class="container">
<form> <form>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="ImageData" class="col-sm-2 col-form-label"><strong>Image</strong></label> <label for="ImageData" class="col-sm-2 col-form-label"><strong>图片</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
<input type="file" id="ImageData" name="ImageData" class="form-control-file" onchange="fileCheck(this);" accept="image/png, image/jpeg, image/gif" /> <input type="file" id="ImageData" name="ImageData" class="form-control-file" onchange="fileCheck(this);" accept="image/png, image/jpeg, image/gif" />
</div> </div>
@@ -54,13 +52,13 @@
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Name" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Name)</strong></label> <label for="Name" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Name)</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@Html.TextBoxFor(m => m.Name, new { @class = "form-control", placeholder = "required" }) @Html.TextBoxFor(m => m.Name, new { @class = "form-control", placeholder = "必填项" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.Name)</div> <div class="text-danger">@Html.ValidationMessageFor(m => m.Name)</div>
</div> </div>
</div> </div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Categories" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Categories)</strong> (comma separated)</label> <label for="Categories" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Categories)</strong> (以英文逗号分割)</label>
<div class="col-sm-10"> <div class="col-sm-10">
@Html.TextBoxFor(m => m.Categories, new { @class = "form-control" }) @Html.TextBoxFor(m => m.Categories, new { @class = "form-control" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.Categories)</div> <div class="text-danger">@Html.ValidationMessageFor(m => m.Categories)</div>
@@ -69,7 +67,7 @@
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<div class="col-sm-10 offset-sm-2"> <div class="col-sm-10 offset-sm-2">
<button type="submit" class="btn btn-success rounded-0">Save!</button> <button type="submit" class="btn btn-success rounded-0">保存!</button>
</div> </div>
</div> </div>
</form> </form>
+5 -3
View File
@@ -6,8 +6,10 @@
} }
<h3>Emoji</h3> <h3>Emoji</h3>
<p>
<br /><br />
</p>
<p>Configuration for an emoji.</p>
@if (!string.IsNullOrEmpty(Model.ErrorMessage)) @if (!string.IsNullOrEmpty(Model.ErrorMessage))
{ {
@@ -26,7 +28,7 @@
<div class="container"> <div class="container">
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="ImageData" class="col-sm-2 col-form-label"><strong>Image</strong></label> <label for="ImageData" class="col-sm-2 col-form-label"><strong>图片</strong></label>
<div class="col-sm-10"> <div class="col-sm-10">
@if (@Model.Emoji.Name != "") @if (@Model.Emoji.Name != "")
{ {
@@ -46,7 +48,7 @@
</div> </div>
<div class="form-group row mb-1"> <div class="form-group row mb-1">
<label for="Categories" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Categories)</strong> (comma separated)</label> <label for="Categories" class="col-sm-2 col-form-label"><strong>@Html.LabelFor(m => m.Categories)</strong> (以英文逗号分割)</label>
<div class="col-sm-10"> <div class="col-sm-10">
@Html.TextBoxFor(m => m.Categories, new { @class = "form-control" }) @Html.TextBoxFor(m => m.Categories, new { @class = "form-control" })
<div class="text-danger">@Html.ValidationMessageFor(m => m.Categories)</div> <div class="text-danger">@Html.ValidationMessageFor(m => m.Categories)</div>
+8 -8
View File
@@ -11,7 +11,7 @@
</h3> </h3>
<p> <p>
Global configuration for Emojis.<br /><br /> <br /><br />
</p> </p>
@if (!string.IsNullOrEmpty(Model.ErrorMessage)) @if (!string.IsNullOrEmpty(Model.ErrorMessage))
@@ -23,7 +23,7 @@
<div class="alert alert-success">@Html.Raw(Model.SuccessMessage)</div> <div class="alert alert-success">@Html.Raw(Model.SuccessMessage)</div>
} }
<a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddEmoji">Add new emoji</a> <a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddEmoji">新增</a>
<br /> <br />
<br /> <br />
@@ -34,7 +34,7 @@
<div class="flex-grow-1 me-2"> <div class="flex-grow-1 me-2">
@Html.TextBoxFor(x => x.SearchString, new { @class = "form-control" }) @Html.TextBoxFor(x => x.SearchString, new { @class = "form-control" })
</div> </div>
<button type="submit" class="btn btn-primary">Search</button> <button type="submit" class="btn btn-primary">搜索</button>
</div> </div>
</div> </div>
<br /> <br />
@@ -44,9 +44,9 @@
<table class="table fixedTable100 table-striped" border="0" cellspacing="0" cellpadding="0"> <table class="table fixedTable100 table-striped" border="0" cellspacing="0" cellpadding="0">
<thead> <thead>
<tr> <tr>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Name")">Name</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Name")">名称</a></strong></td>
<td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Shortcut")">Shortcut</a></strong></td> <td><strong><a href="?@QueryStringConverter.OrderHelper(sessionState, "Shortcut")">快捷方式</a></strong></td>
<td><strong>Image</strong></td> <td><strong>图片</strong></td>
</tr> </tr>
</thead> </thead>
@@ -66,14 +66,14 @@
{ {
<div class="d-flex small text-muted mb-0"> <div class="d-flex small text-muted mb-0">
<strong> <strong>
Either there are no emojis configured or your search criteria returned no results. 查询不到emoji
</strong> </strong>
</div> </div>
} }
} }
<br /> <br />
<a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddEmoji">Add new emoji</a> <a class="btn btn-success btn-thin" href="@GlobalConfiguration.BasePath/Admin/AddEmoji">新增</a>
<script> <script>
window.onload = function () { window.onload = function () {