Browse Source

拒绝页bug修正

懒得勤快 4 years ago
parent
commit
063849ea48

+ 20 - 9
src/Masuit.MyBlogs.Core/Controllers/MiscController.cs

@@ -51,9 +51,15 @@ namespace Masuit.MyBlogs.Core.Controllers
         [Route("donate")]
         public async Task<ActionResult> Donate()
         {
-            ViewBag.Ads = AdsService.GetsByWeightedPrice(2, AdvertiseType.InPage, Request.Location());
-            var text = await System.IO.File.ReadAllTextAsync(Path.Combine(HostEnvironment.WebRootPath, "template", "donate.html"));
-            return CurrentUser.IsAdmin ? View("Donate_Admin", text) : View(model: text);
+            var ads = AdsService.GetsByWeightedPrice(2, AdvertiseType.InPage, Request.Location());
+            if (bool.Parse(CommonHelper.SystemSettings.GetOrAdd("EnableDonate", "true")))
+            {
+                ViewBag.Ads = ads;
+                var text = await System.IO.File.ReadAllTextAsync(Path.Combine(HostEnvironment.WebRootPath, "template", "donate.html"));
+                return CurrentUser.IsAdmin ? View("Donate_Admin", text) : View(model: text);
+            }
+
+            return Redirect(ads.FirstOrDefault()?.Url ?? "/");
         }
 
         /// <summary>
@@ -66,17 +72,22 @@ namespace Masuit.MyBlogs.Core.Controllers
         [Route("donatelist")]
         public async Task<ActionResult> DonateList([FromServices] IDonateService donateService, int page = 1, int size = 10)
         {
-            var list = await donateService.GetPagesFromCacheAsync<DateTime, DonateDto>(page, size, d => true, d => d.DonateTime, false);
-            if (!CurrentUser.IsAdmin)
+            if (bool.Parse(CommonHelper.SystemSettings.GetOrAdd("EnableDonate", "true")))
             {
-                foreach (var item in list.Data.Where(item => !(item.QQorWechat + item.Email).Contains("匿名")))
+                var list = await donateService.GetPagesFromCacheAsync<DateTime, DonateDto>(page, size, d => true, d => d.DonateTime, false);
+                if (!CurrentUser.IsAdmin)
                 {
-                    item.QQorWechat = item.QQorWechat?.Mask();
-                    item.Email = item.Email?.MaskEmail();
+                    foreach (var item in list.Data.Where(item => !(item.QQorWechat + item.Email).Contains("匿名")))
+                    {
+                        item.QQorWechat = item.QQorWechat?.Mask();
+                        item.Email = item.Email?.MaskEmail();
+                    }
                 }
+
+                return Ok(list);
             }
 
-            return Ok(list);
+            return Ok();
         }
 
         /// <summary>

+ 2 - 2
src/Masuit.MyBlogs.Core/Infrastructure/Repository/BaseRepository.cs

@@ -886,8 +886,8 @@ namespace Masuit.MyBlogs.Core.Infrastructure.Repository
 
         public override void Dispose(bool disposing)
         {
-            DataContext?.Dispose();
-            DataContext = null;
+            //DataContext?.Dispose();
+            //DataContext = null;
         }
 
         public T this[int id] => GetById(id);

+ 13 - 8
src/Masuit.MyBlogs.Core/Views/Error/AccessDeny.cshtml

@@ -20,6 +20,7 @@
             background-size: cover;
             background-position: 50% 0;
             margin: 0;
+            min-height: 100vh;
         }
 
             body:before {
@@ -27,15 +28,20 @@
                 display: inline-block;
                 vertical-align: middle;
             }
+        .hidden {
+            display:none !important;
+        }
     </style>
-    <meta property="qc:admins" content="153016004160513163145" />
     <meta charset="utf-8">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <link href="https://cdn.staticfile.org/normalize/8.0.1/normalize.min.css" rel="stylesheet">
     <link href="https://cdn.staticfile.org/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet" />
+    <link href="https://cdn.staticfile.org/limonte-sweetalert2/6.11.5/sweetalert2.min.css" rel="stylesheet" async defer>
     <script src="https://cdn.staticfile.org/jquery/3.4.1/jquery.min.js"></script>
     <script src="https://cdn.staticfile.org/jquery.ripples/0.5.3/jquery.ripples.min.js"></script>
-    <script src="https://cdn.staticfile.org/limonte-sweetalert2/8.11.8/sweetalert2.min.js"></script>
+    <script src="https://cdn.staticfile.org/phaser/3.24.1/phaser.min.js"></script>
+    <script src="https://cdn.staticfile.org/limonte-sweetalert2/6.6.10/sweetalert2.min.js"></script>
 </head>
 <body>
     <div class="container">
@@ -58,7 +64,7 @@
                         <button type="button" class="btn btn-info getcode">获取通行证</button>
                     </span>
                 </div>
-                <div class="input-group">
+                <div class="input-group vcode hidden">
                     <span class="input-group-addon">验证码:</span>
                     <input type="text" name="token" id="token" class="form-control" />
                     <span class="input-group-btn">
@@ -83,15 +89,13 @@
             $('.error').show().text(e);
         }
     });
-</script>
-<script>
     $("#code-token").on("submit", function (e) {
         e.preventDefault();
         $.post("/error/CheckViewToken", $(this).serialize(), function (data) {
             if (data.Success) {
                 window.location.href = "/";
             } else {
-                Swal.fire({
+                swal({
                     type: 'error',
                     title: data.Message,
                     showConfirmButton: false,
@@ -108,7 +112,7 @@
                 email: $("#email3").val()
             }, function (data) {
                 if (data.Success) {
-                    Swal.fire({
+                    swal({
                         type: 'success',
                         title: "验证码发送成功,请注意查收邮件,若未收到,请检查你的邮箱地址或邮件垃圾箱!",
                         showConfirmButton: false,
@@ -126,8 +130,9 @@
                             $(".getcode").text('重新发送');
                         }
                     }, 1000);
+                    $(".vcode").removeClass("hidden");
                 } else {
-                    Swal.fire({
+                    swal({
                         type: 'error',
                         title: data.Message,
                         showConfirmButton: true,

+ 1 - 1
src/Masuit.MyBlogs.Core/Views/Shared/_Aside.cshtml

@@ -44,7 +44,7 @@
                         if (cat.PendedPostCount > 0)
                         {
                             <li class="list-group-item">
-                                <a asp-controller="Home" asp-action="Category" asp-route-id="@cat.Id">@cat.Name (@cat.PendedPostCount)</a>
+                                <a asp-controller="Home" asp-action="Category" asp-route-id="@cat.Id">@cat.Name</a>
                                 <a class="pull-right" asp-controller="Subscribe" asp-action="CategoryRss" asp-route-id="@cat.Id" target="_blank">
                                     <i class="icon-rss4"></i>
                                 </a>

+ 8 - 0
src/Masuit.MyBlogs.Core/wwwroot/ng-views/controllers/system.js

@@ -141,6 +141,14 @@ myApp.controller("system", ["$scope", "$http", function($scope, $http) {
 		}
 	}
 
+	$scope.EnableDonate= function() {
+		if($scope.Settings.EnableDonate=="true") {
+			$scope.Settings.EnableDonate="false";
+		} else {
+			$scope.Settings.EnableDonate="true";
+		}
+	}
+
 	$scope.CloseSite= function() {
 		if($scope.Settings.CloseSite=="true") {
 			$scope.Settings.CloseSite="false";

+ 23 - 14
src/Masuit.MyBlogs.Core/wwwroot/ng-views/views/system/home.html

@@ -38,22 +38,31 @@
         <div class="input-group">
             <span class="input-group-addon">上传图片水印:</span>
             <div class="fg-line">
-                <input type="text" class="form-control" ng-model="Settings.Watermark" placeholder="留空则上传图片时不添加水印"/>
+                <input type="text" class="form-control" ng-model="Settings.Watermark" placeholder="留空则上传图片时不添加水印" />
             </div>
         </div>
-        <div class="input-group">
-            <span class="input-group-addon el-switch" style="text-align: left">
-                <span>闭站保护:</span>
-                <input type="checkbox" name="switch" ng-checked="Settings.CloseSite=='true'">
-                <span class="el-switch-style" ng-click="CloseSite()"></span>
-            </span>
-        </div>
-        <div class="input-group">
-            <span class="input-group-addon el-switch" style="text-align: left">
-                <span>数据写保护:</span>
-                <input type="checkbox" name="switch" ng-checked="Settings.DataReadonly=='true'">
-                <span class="el-switch-style" ng-click="DataReadonly()"></span>
-            </span>
+        <div class="form-inline">
+            <div class="input-group">
+                <span class="input-group-addon el-switch" style="text-align: left">
+                    <span>闭站保护:</span>
+                    <input type="checkbox" name="switch" ng-checked="Settings.CloseSite=='true'">
+                    <span class="el-switch-style" ng-click="CloseSite()"></span>
+                </span>
+            </div>
+            <div class="input-group">
+                <span class="input-group-addon el-switch" style="text-align: left">
+                    <span>数据写保护:</span>
+                    <input type="checkbox" name="switch" ng-checked="Settings.DataReadonly=='true'">
+                    <span class="el-switch-style" ng-click="DataReadonly()"></span>
+                </span>
+            </div>
+            <div class="input-group">
+                <span class="input-group-addon el-switch" style="text-align: left">
+                    <span>启用网站打赏功能:</span>
+                    <input type="checkbox" name="switch" ng-checked="Settings.EnableDonate=='true'">
+                    <span class="el-switch-style" ng-click="EnableDonate()"></span>
+                </span>
+            </div>
         </div>
         <div class="input-group">
             <span class="input-group-addon">资源管理器根目录:</span>