Browse Source

1.一些体验上的优化;
2.不用畅言了,有广告,艹!
3.防火墙bug修复

懒得勤快 6 years ago
parent
commit
0de0affcf4
44 changed files with 86 additions and 462 deletions
  1. 2 2
      src/Masuit.MyBlogs.Core/Common/CommonHelper.cs
  2. 2 1
      src/Masuit.MyBlogs.Core/Controllers/HomeController.cs
  3. 5 2
      src/Masuit.MyBlogs.Core/Controllers/PostController.cs
  4. 1 1
      src/Masuit.MyBlogs.Core/Controllers/SearchController.cs
  5. 5 2
      src/Masuit.MyBlogs.Core/Controllers/SystemController.cs
  6. 1 1
      src/Masuit.MyBlogs.Core/Extensions/FirewallMiddleware.cs
  7. 1 2
      src/Masuit.MyBlogs.Core/Extensions/Hangfire/HangfireBackJob.cs
  8. 1 2
      src/Masuit.MyBlogs.Core/Infrastructure/DataContext.cs
  9. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Repository/BaseRepository.cs
  10. 1 2
      src/Masuit.MyBlogs.Core/Infrastructure/Repository/PostRepository.cs
  11. 1 2
      src/Masuit.MyBlogs.Core/Infrastructure/Repository/Repositories.cs
  12. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/BaseService.cs
  13. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/CategoryService.cs
  14. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/CommentService.cs
  15. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/LeaveMessageService.cs
  16. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/MenuService.cs
  17. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/PostService.cs
  18. 0 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/Services.cs
  19. 1 1
      src/Masuit.MyBlogs.Core/Infrastructure/Services/UserInfoService.cs
  20. 6 1
      src/Masuit.MyBlogs.Core/Masuit.MyBlogs.Core.xml
  21. 4 2
      src/Masuit.MyBlogs.Core/Migrations/20190303120416_Init.Designer.cs
  22. 2 1
      src/Masuit.MyBlogs.Core/Migrations/20190303120416_Init.cs
  23. 3 1
      src/Masuit.MyBlogs.Core/Migrations/DataContextModelSnapshot.cs
  24. 6 0
      src/Masuit.MyBlogs.Core/Models/Entity/Post.cs
  25. 1 1
      src/Masuit.MyBlogs.Core/Startup.cs
  26. 2 0
      src/Masuit.MyBlogs.Core/Views/Home/Index.cshtml
  27. 0 42
      src/Masuit.MyBlogs.Core/Views/Misc/About.cshtml
  28. 0 42
      src/Masuit.MyBlogs.Core/Views/Misc/Disclaimer.cshtml
  29. 0 42
      src/Masuit.MyBlogs.Core/Views/Misc/Donate.cshtml
  30. 0 42
      src/Masuit.MyBlogs.Core/Views/Misc/Donate_Admin.cshtml
  31. 0 42
      src/Masuit.MyBlogs.Core/Views/Misc/Index.cshtml
  32. 2 2
      src/Masuit.MyBlogs.Core/Views/Msg/Index_Admin.cshtml
  33. 0 42
      src/Masuit.MyBlogs.Core/Views/Notice/Details.cshtml
  34. 0 42
      src/Masuit.MyBlogs.Core/Views/Post/CompareVersion.cshtml
  35. 4 4
      src/Masuit.MyBlogs.Core/Views/Post/Details_Admin.cshtml
  36. 0 42
      src/Masuit.MyBlogs.Core/Views/Post/HistoryVersion.cshtml
  37. 20 61
      src/Masuit.MyBlogs.Core/Views/Post/HistoryVersion_Admin.cshtml
  38. 0 3
      src/Masuit.MyBlogs.Core/Views/Shared/_Layout.cshtml
  39. 6 0
      src/Masuit.MyBlogs.Core/bundleconfig.json
  40. 0 16
      src/Masuit.MyBlogs.Core/wwwroot/Content/common/app.css
  41. 2 1
      src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/article.js
  42. 0 0
      src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/article.min.js
  43. 6 6
      src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/scripts.js
  44. 1 1
      src/Masuit.MyBlogs.Core/wwwroot/ng-views/app/app.config.min.js

+ 2 - 2
src/Masuit.MyBlogs.Core/Common/CommonHelper.cs

@@ -47,7 +47,7 @@ namespace Common
                 }
             }
 
-            IPWhiteList = File.ReadAllText(Path.Combine(AppContext.BaseDirectory + "App_Data", "whitelist.txt")).Split(',', ',');
+            IPWhiteList = File.ReadAllText(Path.Combine(AppContext.BaseDirectory + "App_Data", "whitelist.txt")).Split(',', ',').ToList();
         }
 
         /// <summary>
@@ -73,7 +73,7 @@ namespace Common
         /// <summary>
         /// ip白名单
         /// </summary>
-        public static IEnumerable<string> IPWhiteList { get; set; }
+        public static List<string> IPWhiteList { get; set; }
 
         /// <summary>
         /// 每IP错误的次数统计

+ 2 - 1
src/Masuit.MyBlogs.Core/Controllers/HomeController.cs

@@ -79,7 +79,7 @@ namespace Masuit.MyBlogs.Core.Controllers
         [ResponseCache(Duration = 600, VaryByQueryKeys = new[] { "orderBy" }, VaryByHeader = HeaderNames.Cookie)]
         public ActionResult Index(OrderBy orderBy = OrderBy.ModifyDate)
         {
-            ViewBag.Total = 0;
+            //ViewBag.Total = 0;
             UserInfoOutputDto user = HttpContext.Session.GetByRedis<UserInfoOutputDto>(SessionKey.UserInfo) ?? new UserInfoOutputDto();
             var tops = PostService.LoadEntitiesFromL2CacheNoTracking(t => t.Status == Status.Pended && t.IsBanner, p => p.ModifyDate, false).Select(p => new
             {
@@ -214,6 +214,7 @@ namespace Masuit.MyBlogs.Core.Controllers
         private IndexPageViewModel GetIndexPageViewModel(int page, int size, OrderBy orderBy, UserInfoOutputDto user)
         {
             IQueryable<PostOutputDto> postList = PostService.LoadEntities<PostOutputDto>(p => (p.Status == Status.Pended || user.IsAdmin)); //准备文章的查询
+            ViewBag.Total = postList.Count();
             var notices = NoticeService.LoadPageEntitiesFromL2Cache<DateTime, NoticeOutputDto>(1, 5, out int _, n => (n.Status == Status.Display || user.IsAdmin), n => n.ModifyDate, false).ToList(); //加载前5条公告
             var cats = CategoryService.LoadEntitiesFromL2Cache<string, CategoryOutputDto>(c => c.Status == Status.Available, c => c.Name).ToList(); //加载分类目录
             var start = DateTime.Today.AddDays(-7);

+ 5 - 2
src/Masuit.MyBlogs.Core/Controllers/PostController.cs

@@ -7,7 +7,7 @@ using Masuit.MyBlogs.Core.Common;
 using Masuit.MyBlogs.Core.Configs;
 using Masuit.MyBlogs.Core.Extensions;
 using Masuit.MyBlogs.Core.Extensions.Hangfire;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.DTO;
 using Masuit.MyBlogs.Core.Models.Entity;
@@ -19,6 +19,7 @@ using Masuit.Tools.Html;
 using Masuit.Tools.Security;
 using Masuit.Tools.Systems;
 using Microsoft.AspNetCore.Hosting;
+using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.AspNetCore.Mvc.Rendering;
 using Microsoft.Net.Http.Headers;
@@ -27,7 +28,6 @@ using System.Collections.Generic;
 using System.IO;
 using System.Linq;
 using System.Text.RegularExpressions;
-using Microsoft.AspNetCore.Http;
 
 namespace Masuit.MyBlogs.Core.Controllers
 {
@@ -319,6 +319,7 @@ namespace Masuit.MyBlogs.Core.Controllers
 
             ViewBag.CategoryId = new SelectList(CategoryService.LoadEntitiesNoTracking(c => c.Status == Status.Available), "Id", "Name", post.CategoryId);
             Post p = post.Mapper<Post>();
+            p.IP = HttpContext.Connection.RemoteIpAddress.MapToIPv4().ToString();
             p.PostAccessRecord.Add(new PostAccessRecord()
             {
                 AccessTime = DateTime.Today,
@@ -805,6 +806,7 @@ namespace Masuit.MyBlogs.Core.Controllers
                 p.PostHistoryVersion.Add(history);
             }
 
+            p.IP = HttpContext.Connection.RemoteIpAddress.MapToIPv4().ToString();
             Mapper.Map(post, p);
             if (!string.IsNullOrEmpty(post.Seminars))
             {
@@ -902,6 +904,7 @@ namespace Masuit.MyBlogs.Core.Controllers
             post.PostDate = DateTime.Now;
             post.ModifyDate = DateTime.Now;
             Post p = post.Mapper<Post>();
+            p.IP = HttpContext.Connection.RemoteIpAddress.MapToIPv4().ToString();
             if (!string.IsNullOrEmpty(post.Seminars))
             {
                 var tmp = post.Seminars.Split(',').Distinct();

+ 1 - 1
src/Masuit.MyBlogs.Core/Controllers/SearchController.cs

@@ -1,7 +1,7 @@
 using Common;
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
 using Masuit.MyBlogs.Core.Extensions;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.DTO;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 5 - 2
src/Masuit.MyBlogs.Core/Controllers/SystemController.cs

@@ -363,7 +363,7 @@ namespace Masuit.MyBlogs.Core.Controllers
         public ActionResult SetIpWhiteList(string content)
         {
             System.IO.File.WriteAllText(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data", "whitelist.txt"), content, Encoding.UTF8);
-            CommonHelper.IPWhiteList = content.Split(',', ',');
+            CommonHelper.IPWhiteList.Add(content);
             return ResultData(null);
         }
 
@@ -404,6 +404,7 @@ namespace Masuit.MyBlogs.Core.Controllers
                 List<string> list = ips.Split(',').Where(s => !string.IsNullOrEmpty(s)).ToList();
                 list.Add(ip);
                 System.IO.File.WriteAllText(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data", "whitelist.txt"), string.Join(",", list.Distinct()), Encoding.UTF8);
+                CommonHelper.IPWhiteList = list;
                 foreach (var kv in CommonHelper.DenyAreaIP)
                 {
                     foreach (string item in list)
@@ -418,7 +419,7 @@ namespace Masuit.MyBlogs.Core.Controllers
         }
 
         /// <summary>
-        /// 将IP添加到名单
+        /// 将IP添加到名单
         /// </summary>
         /// <param name="ip"></param>
         /// <returns></returns>
@@ -428,6 +429,8 @@ namespace Masuit.MyBlogs.Core.Controllers
             {
                 CommonHelper.DenyIP += "," + ip;
                 System.IO.File.WriteAllText(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data", "denyip.txt"), CommonHelper.DenyIP, Encoding.UTF8);
+                CommonHelper.IPWhiteList.Remove(ip);
+                System.IO.File.WriteAllText(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data", "whitelist.txt"), string.Join(",", CommonHelper.IPWhiteList.Distinct()), Encoding.UTF8);
                 return ResultData(null);
             }
             return ResultData(null, false);

+ 1 - 1
src/Masuit.MyBlogs.Core/Extensions/FirewallMiddleware.cs

@@ -40,7 +40,7 @@ namespace Masuit.MyBlogs.Core.Extensions
 
             if (context.Request.IsRobot())
             {
-                //await _next.Invoke(context);
+                await _next.Invoke(context);
                 return;
             }
 

+ 1 - 2
src/Masuit.MyBlogs.Core/Extensions/Hangfire/HangfireBackJob.cs

@@ -1,7 +1,6 @@
 using Common;
-using Masuit.LuceneEFCore.SearchEngine;
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.DTO;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 1 - 2
src/Masuit.MyBlogs.Core/Infrastructure/Application/DataContext.cs → src/Masuit.MyBlogs.Core/Infrastructure/DataContext.cs

@@ -5,13 +5,12 @@ using Microsoft.EntityFrameworkCore;
 using Microsoft.EntityFrameworkCore.Design;
 using Microsoft.EntityFrameworkCore.Infrastructure;
 
-namespace Masuit.MyBlogs.Core.Infrastructure.Application
+namespace Masuit.MyBlogs.Core.Infrastructure
 {
     public class DataContext : DbContext
     {
         public DataContext(DbContextOptions<DataContext> options) : base(options)
         {
-
         }
 
         protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)

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

@@ -1,7 +1,6 @@
 using AutoMapper.QueryableExtensions;
 using Dapper;
 using EFSecondLevelCache.Core;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.Tools.Systems;
 using Microsoft.EntityFrameworkCore;

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

@@ -1,5 +1,4 @@
-using Masuit.MyBlogs.Core.Infrastructure.Application;
-using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
+using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;
 using System.Data;
 

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

@@ -1,5 +1,4 @@
-using Masuit.MyBlogs.Core.Infrastructure.Application;
-using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
+using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;
 using System.Data;
 

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/BaseService.cs

@@ -1,6 +1,5 @@
 using EFSecondLevelCache.Core;
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using System;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/CategoryService.cs

@@ -1,5 +1,4 @@
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/CommentService.cs

@@ -1,5 +1,4 @@
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/LeaveMessageService.cs

@@ -1,5 +1,4 @@
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/MenuService.cs

@@ -1,5 +1,4 @@
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/PostService.cs

@@ -1,7 +1,6 @@
 using Common;
 using Masuit.LuceneEFCore.SearchEngine;
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.DTO;

+ 0 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/Services.cs

@@ -1,5 +1,4 @@
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;
 using Masuit.MyBlogs.Core.Models.Entity;

+ 1 - 1
src/Masuit.MyBlogs.Core/Infrastructure/Services/UserInfoService.cs

@@ -1,6 +1,6 @@
 using Common;
 using Masuit.LuceneEFCore.SearchEngine.Interfaces;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Masuit.MyBlogs.Core.Infrastructure.Repository.Interface;
 using Masuit.MyBlogs.Core.Infrastructure.Services;
 using Masuit.MyBlogs.Core.Infrastructure.Services.Interface;

+ 6 - 1
src/Masuit.MyBlogs.Core/Masuit.MyBlogs.Core.xml

@@ -1947,7 +1947,7 @@
         </member>
         <member name="M:Masuit.MyBlogs.Core.Controllers.SystemController.AddToBlackList(System.String)">
             <summary>
-            将IP添加到名单
+            将IP添加到名单
             </summary>
             <param name="ip"></param>
             <returns></returns>
@@ -6482,6 +6482,11 @@
             总访问量
             </summary>
         </member>
+        <member name="P:Masuit.MyBlogs.Core.Models.Entity.Post.IP">
+            <summary>
+            提交人IP地址
+            </summary>
+        </member>
         <member name="P:Masuit.MyBlogs.Core.Models.Entity.Post.Category">
             <summary>
             分类

+ 4 - 2
src/Masuit.MyBlogs.Core/Migrations/20190303082558_Init.Designer.cs → src/Masuit.MyBlogs.Core/Migrations/20190303120416_Init.Designer.cs

@@ -1,5 +1,5 @@
 // <auto-generated />
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Microsoft.EntityFrameworkCore;
 using Microsoft.EntityFrameworkCore.Infrastructure;
 using Microsoft.EntityFrameworkCore.Metadata;
@@ -9,7 +9,7 @@ using System;
 namespace Masuit.MyBlogs.Core.Migrations
 {
     [DbContext(typeof(DataContext))]
-    [Migration("20190303082558_Init")]
+    [Migration("20190303120416_Init")]
     partial class Init
     {
         protected override void BuildTargetModel(ModelBuilder modelBuilder)
@@ -365,6 +365,8 @@ namespace Masuit.MyBlogs.Core.Migrations
                         .IsRequired()
                         .IsUnicode(true);
 
+                    b.Property<string>("IP");
+
                     b.Property<string>("ImageUrl")
                         .HasMaxLength(255);
 

+ 2 - 1
src/Masuit.MyBlogs.Core/Migrations/20190303082558_Init.cs → src/Masuit.MyBlogs.Core/Migrations/20190303120416_Init.cs

@@ -225,7 +225,8 @@ namespace Masuit.MyBlogs.Core.Migrations
                 Description = table.Column<string>(maxLength: 255, nullable: true),
                 ImageUrl = table.Column<string>(maxLength: 255, nullable: true),
                 AverageViewCount = table.Column<double>(nullable: false),
-                TotalViewCount = table.Column<int>(nullable: false)
+                TotalViewCount = table.Column<int>(nullable: false),
+                IP = table.Column<string>(nullable: true)
             }, constraints: table =>
             {
                 table.PrimaryKey("PK_Post", x => x.Id);

+ 3 - 1
src/Masuit.MyBlogs.Core/Migrations/DataContextModelSnapshot.cs

@@ -1,6 +1,6 @@
 // <auto-generated />
 
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Microsoft.EntityFrameworkCore;
 using Microsoft.EntityFrameworkCore.Infrastructure;
 using Microsoft.EntityFrameworkCore.Metadata;
@@ -310,6 +310,8 @@ namespace Masuit.MyBlogs.Core.Migrations
 
                 b.Property<string>("Email").IsRequired().IsUnicode(true);
 
+                b.Property<string>("IP");
+
                 b.Property<string>("ImageUrl").HasMaxLength(255);
 
                 b.Property<bool>("IsBanner");

+ 6 - 0
src/Masuit.MyBlogs.Core/Models/Entity/Post.cs

@@ -140,6 +140,12 @@ namespace Masuit.MyBlogs.Core.Models.Entity
         /// </summary>
         public int TotalViewCount { get; set; }
 
+        /// <summary>
+        /// Ìá½»ÈËIPµØÖ·
+        /// </summary>
+        public string IP { get; set; }
+
+
         /// <summary>
         /// ·ÖÀà
         /// </summary>

+ 1 - 1
src/Masuit.MyBlogs.Core/Startup.cs

@@ -14,7 +14,7 @@ using Masuit.MyBlogs.Core.Controllers;
 using Masuit.MyBlogs.Core.Extensions;
 using Masuit.MyBlogs.Core.Extensions.Hangfire;
 using Masuit.MyBlogs.Core.Hubs;
-using Masuit.MyBlogs.Core.Infrastructure.Application;
+using Masuit.MyBlogs.Core.Infrastructure;
 using Masuit.MyBlogs.Core.Infrastructure.Repository;
 using Masuit.MyBlogs.Core.Infrastructure.Services;
 using Masuit.MyBlogs.Core.Models.DTO;

+ 2 - 0
src/Masuit.MyBlogs.Core/Views/Home/Index.cshtml

@@ -4,11 +4,13 @@
 @using Masuit.MyBlogs.Core.Models.ViewModel
 @using Masuit.MyBlogs.Core.Extensions
 @using Masuit.Tools.Win32
+@using Microsoft.AspNetCore.Http
 @model Masuit.MyBlogs.Core.Models.ViewModel.IndexPageViewModel
 @{
     ViewBag.Title = "首页";
     Layout = "~/Views/Shared/_Layout.cshtml";
     List<FastShare> shares = ViewBag.FastShare;
+    Context.Request.Path = new PathString("/p");
 }
 <style>
     marquee p, marquee br, marquee div, marquee h1, marquee h2, marquee h3, marquee h4 {

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Misc/About.cshtml

@@ -205,46 +205,4 @@
             <a class="btn btn-info" href="https://t.me/ldqk0" target="_blank">Telegram</a>
         </div>
     </div>
-    <!--PC和WAP自适应版-->
-    <div id="SOHUCS" sid="about"></div>
-    <script type="text/javascript">
-        (function () {
-            var appid = 'cytsT3QgK';
-            var conf = 'prod_0358240040a6c9611add9de991099d42';
-            var width = window.innerWidth || document.documentElement.clientWidth;
-            if (width < 960) {
-                window.document.write(
-                    '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                    appid + '&conf=' + conf + '"><\/script>');
-            } else {
-                var loadJs = function (d, a) {
-                    var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                    var b = document.createElement("script");
-                    b.setAttribute("type", "text/javascript");
-                    b.setAttribute("charset", "UTF-8");
-                    b.setAttribute("src", d);
-                    if (typeof a === "function") {
-                        if (window.attachEvent) {
-                            b.onreadystatechange = function () {
-                                var e = b.readyState;
-                                if (e === "loaded" || e === "complete") {
-                                    b.onreadystatechange = null;
-                                    a()
-                                }
-                            }
-                        } else {
-                            b.onload = a
-                        }
-                    }
-                    c.appendChild(b)
-                };
-                loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                    window.changyan.api.config({
-                        appid: appid,
-                        conf: conf
-                    })
-                });
-            }
-        })();
-    </script>
 </div>

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Misc/Disclaimer.cshtml

@@ -105,46 +105,4 @@
             所以最后还是希望有钱的老板大哥些,能够<a href="/donate">赏几个小钱</a>花花。
         </p>
     </article>
-    <!--PC和WAP自适应版-->
-    <div id="SOHUCS" sid="disclaimer"></div>
-    <script type="text/javascript">
-        (function () {
-            var appid = 'cytsT3QgK';
-            var conf = 'prod_0358240040a6c9611add9de991099d42';
-            var width = window.innerWidth || document.documentElement.clientWidth;
-            if (width < 960) {
-                window.document.write(
-                    '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                    appid + '&conf=' + conf + '"><\/script>');
-            } else {
-                var loadJs = function (d, a) {
-                    var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                    var b = document.createElement("script");
-                    b.setAttribute("type", "text/javascript");
-                    b.setAttribute("charset", "UTF-8");
-                    b.setAttribute("src", d);
-                    if (typeof a === "function") {
-                        if (window.attachEvent) {
-                            b.onreadystatechange = function () {
-                                var e = b.readyState;
-                                if (e === "loaded" || e === "complete") {
-                                    b.onreadystatechange = null;
-                                    a()
-                                }
-                            }
-                        } else {
-                            b.onload = a
-                        }
-                    }
-                    c.appendChild(b)
-                };
-                loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                    window.changyan.api.config({
-                        appid: appid,
-                        conf: conf
-                    })
-                });
-            }
-        })();
-    </script>
 </div>

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Misc/Donate.cshtml

@@ -146,48 +146,6 @@
     </table>
     <tm-pagination conf="paginationConf"></tm-pagination>
 </div>
-<!--PC和WAP自适应版-->
-<div id="SOHUCS" sid="donate"></div>
-<script type="text/javascript">
-    (function () {
-        var appid = 'cytsT3QgK';
-        var conf = 'prod_0358240040a6c9611add9de991099d42';
-        var width = window.innerWidth || document.documentElement.clientWidth;
-        if (width < 960) {
-            window.document.write(
-                '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                appid + '&conf=' + conf + '"><\/script>');
-        } else {
-            var loadJs = function (d, a) {
-                var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                var b = document.createElement("script");
-                b.setAttribute("type", "text/javascript");
-                b.setAttribute("charset", "UTF-8");
-                b.setAttribute("src", d);
-                if (typeof a === "function") {
-                    if (window.attachEvent) {
-                        b.onreadystatechange = function () {
-                            var e = b.readyState;
-                            if (e === "loaded" || e === "complete") {
-                                b.onreadystatechange = null;
-                                a()
-                            }
-                        }
-                    } else {
-                        b.onload = a
-                    }
-                }
-                c.appendChild(b)
-            };
-            loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                window.changyan.api.config({
-                    appid: appid,
-                    conf: conf
-                })
-            });
-        }
-    })();
-</script>
 <script>
     var app = angular.module('myApp', ["ngTable", "tm.pagination"]);
     app.config(["$httpProvider", function ($httpProvider) {

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Misc/Donate_Admin.cshtml

@@ -159,48 +159,6 @@
     </table>
     <tm-pagination conf="paginationConf"></tm-pagination>
 </div>
-<!--PC和WAP自适应版-->
-<div id="SOHUCS" sid="donate"></div>
-<script type="text/javascript">
-    (function () {
-        var appid = 'cytsT3QgK';
-        var conf = 'prod_0358240040a6c9611add9de991099d42';
-        var width = window.innerWidth || document.documentElement.clientWidth;
-        if (width < 960) {
-            window.document.write(
-                '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                appid + '&conf=' + conf + '"><\/script>');
-        } else {
-            var loadJs = function (d, a) {
-                var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                var b = document.createElement("script");
-                b.setAttribute("type", "text/javascript");
-                b.setAttribute("charset", "UTF-8");
-                b.setAttribute("src", d);
-                if (typeof a === "function") {
-                    if (window.attachEvent) {
-                        b.onreadystatechange = function () {
-                            var e = b.readyState;
-                            if (e === "loaded" || e === "complete") {
-                                b.onreadystatechange = null;
-                                a()
-                            }
-                        }
-                    } else {
-                        b.onload = a
-                    }
-                }
-                c.appendChild(b)
-            };
-            loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                window.changyan.api.config({
-                    appid: appid,
-                    conf: conf
-                })
-            });
-        }
-    })();
-</script>
 <script>
     var app = angular.module('myApp', ["ngTable", "tm.pagination"]);
     app.config(["$httpProvider", function ($httpProvider) {

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Misc/Index.cshtml

@@ -55,48 +55,6 @@
     <article class="content">
         @Html.Raw(Regex.Replace(Model.Content, @"<img\s+[^>]*\s*src\s*=\s*['""]?(\S+\.\w{3,4})['""]?[^/>]*/>", $"<img data-original=\"$1\" alt='{CommonHelper.SystemSettings["Title"]}' title='{CommonHelper.SystemSettings["Title"]}'/>"))
     </article>
-    <!--PC和WAP自适应版-->
-    <div id="SOHUCS" sid="[email protected]"></div>
-    <script type="text/javascript">
-        (function () {
-            var appid = 'cytsT3QgK';
-            var conf = 'prod_0358240040a6c9611add9de991099d42';
-            var width = window.innerWidth || document.documentElement.clientWidth;
-            if (width < 960) {
-                window.document.write(
-                    '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                    appid + '&conf=' + conf + '"><\/script>');
-            } else {
-                var loadJs = function (d, a) {
-                    var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                    var b = document.createElement("script");
-                    b.setAttribute("type", "text/javascript");
-                    b.setAttribute("charset", "UTF-8");
-                    b.setAttribute("src", d);
-                    if (typeof a === "function") {
-                        if (window.attachEvent) {
-                            b.onreadystatechange = function () {
-                                var e = b.readyState;
-                                if (e === "loaded" || e === "complete") {
-                                    b.onreadystatechange = null;
-                                    a();
-                                }
-                            }
-                        } else {
-                            b.onload = a;
-                        }
-                    }
-                    c.appendChild(b);
-                };
-                loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                    window.changyan.api.config({
-                        appid: appid,
-                        conf: conf
-                    });
-                });
-            }
-        })();
-    </script>
 </div>
 <script src="~/Assets/UEditor/third-party/SyntaxHighlighter/scripts/shCore.min.js"></script>
 <script src="~/Assets/UEditor/third-party/SyntaxHighlighter/scripts/bundle.min.js"></script>

+ 2 - 2
src/Masuit.MyBlogs.Core/Views/Msg/Index_Admin.cshtml

@@ -112,7 +112,7 @@
                                             <span class="pull-right" style="font-size: 10px;">${rows[i].Status == 4 ? `<a class="label label-success" onclick="pass(${rows[i].Id})">通过</a> |` : ""} <a class="label label-danger" onclick="del(${rows[i].Id})">删除</a> | ${rows[i].PostDate}<span class="hidden-sm hidden-xs"> | ${GetOperatingSystem(rows[i].OperatingSystem) + " | " + GetBrowser(rows[i].Browser)}</span></span>
                                         </header>
                                         <div class="panel-body">
-                                            ${rows[i].Content} <a class="btn btn-sm btn-info" href="?uid=${rows[i].Id}">回复</a>
+                                            ${rows[i].Content} <a class="label label-info" href="?uid=${rows[i].Id}"><i class="icon-comment"></i></a>
                                             <div class="pull-right">
                                                 <span class="label label-success">${rows[i].Email}</span>
                                                 <span class="label label-primary">${rows[i].QQorWechat}</span>
@@ -143,7 +143,7 @@
                             </div>
                             <div class="panel-body">
                                 ${item.Content}
-                                <a class="btn btn-sm btn-${color}" href="?uid=${item.Id}">回复</a>
+                                <a class="label label-${color}" href="?uid=${item.Id}"><i class="icon-comment"></i></a>
                                 <div class="pull-right">
                                     <span class="label label-success">${item.Email}</span>
                                     <span class="label label-primary">${item.QQorWechat}</span>

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Notice/Details.cshtml

@@ -70,48 +70,6 @@
                         </article>
                     </section>
                 </main>
-                <!--PC和WAP自适应版-->
-                <div id="SOHUCS" sid="about/@Model.Id"></div>
-                <script type="text/javascript">
-                    (function () {
-                        var appid = 'cytsT3QgK';
-                        var conf = 'prod_0358240040a6c9611add9de991099d42';
-                        var width = window.innerWidth || document.documentElement.clientWidth;
-                        if (width < 960) {
-                            window.document.write(
-                                '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                                appid + '&conf=' + conf + '"><\/script>');
-                        } else {
-                            var loadJs = function (d, a) {
-                                var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                                var b = document.createElement("script");
-                                b.setAttribute("type", "text/javascript");
-                                b.setAttribute("charset", "UTF-8");
-                                b.setAttribute("src", d);
-                                if (typeof a === "function") {
-                                    if (window.attachEvent) {
-                                        b.onreadystatechange = function () {
-                                            var e = b.readyState;
-                                            if (e === "loaded" || e === "complete") {
-                                                b.onreadystatechange = null;
-                                                a()
-                                            }
-                                        }
-                                    } else {
-                                        b.onload = a
-                                    }
-                                }
-                                c.appendChild(b)
-                            };
-                            loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                                window.changyan.api.config({
-                                    appid: appid,
-                                    conf: conf
-                                })
-                            });
-                        }
-                    })();
-                </script>
             </div>
         </div>
     </div>

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Post/CompareVersion.cshtml

@@ -150,48 +150,6 @@
         </div>
     </div>
     <div id="cyReward" role="cylabs" data-use="reward"></div>
-    <!--PC和WAP自适应版-->
-    <div id="SOHUCS" sid="cv-@Model[0].Id-@Model[1].Id"></div>
-    <script type="text/javascript">
-        (function () {
-            var appid = 'cytsT3QgK';
-            var conf = 'prod_0358240040a6c9611add9de991099d42';
-            var width = window.innerWidth || document.documentElement.clientWidth;
-            if (width < 960) {
-                window.document.write(
-                    '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                    appid + '&conf=' + conf + '"><\/script>');
-            } else {
-                var loadJs = function (d, a) {
-                    var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                    var b = document.createElement("script");
-                    b.setAttribute("type", "text/javascript");
-                    b.setAttribute("charset", "UTF-8");
-                    b.setAttribute("src", d);
-                    if (typeof a === "function") {
-                        if (window.attachEvent) {
-                            b.onreadystatechange = function () {
-                                var e = b.readyState;
-                                if (e === "loaded" || e === "complete") {
-                                    b.onreadystatechange = null;
-                                    a()
-                                }
-                            }
-                        } else {
-                            b.onload = a
-                        }
-                    }
-                    c.appendChild(b)
-                };
-                loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                    window.changyan.api.config({
-                        appid: appid,
-                        conf: conf
-                    })
-                });
-            }
-        })();
-    </script>
 </div>
 <script src="~/Assets/UEditor/third-party/SyntaxHighlighter/scripts/shCore.min.js"></script>
 <script src="~/Assets/UEditor/third-party/SyntaxHighlighter/scripts/bundle.min.js"></script>

+ 4 - 4
src/Masuit.MyBlogs.Core/Views/Post/Details_Admin.cshtml

@@ -422,8 +422,8 @@
                                     </header>
                                     <div class="panel-body">
                                         ${rows[i].Content}
-                                        <span class="cmvote btn btn-sm btn-info" data-id="${rows[i].Id}">有用(<span>${rows[i].VoteCount}</span>)</span>
-                                        <a class="btn btn-sm btn-info" href="?uid=${rows[i].Id}">回复</a>
+                                        <span class="cmvote label label-info" data-id="${rows[i].Id}"><i class="icon-thumbsup"></i>(<span class="count">${rows[i].VoteCount}</span>)</span>
+                                        <a class="label label-info" href="?uid=${rows[i].Id}"><i class="icon-comment"></i></a>
                                         <div class="pull-right">
                                             <span class="label label-success">${rows[i].Email}</span>
                                             <span class="label label-warning">${rows[i].QQorWechat}</span>
@@ -454,8 +454,8 @@
                             </div>
                             <div class="panel-body">
                                 ${item.Content}
-                                <span class="cmvote btn btn-sm btn-${color}" data-id="${item.Id}">有用(<span>${item.VoteCount}</span>)</span>
-                                <a class="btn btn-sm btn-${color}" href="?uid=${item.Id}">回复</a>
+                                <span class="cmvote label label-${color}" data-id="${item.Id}"><i class="icon-thumbsup"></i>(<span class="count">${item.VoteCount}</span>)</span>
+                                <a class="label label-${color}" href="?uid=${item.Id}"><i class="icon-comment"></i></a>
                                 <div class="pull-right">
                                     <span class="label label-success">${item.Email}</span>
                                     <span class="label label-primary">${item.QQorWechat}</span>

+ 0 - 42
src/Masuit.MyBlogs.Core/Views/Post/HistoryVersion.cshtml

@@ -149,48 +149,6 @@
                         }
                     </div>
                 </section>
-                <!--PC和WAP自适应版-->
-                <div id="SOHUCS" sid="[email protected]"></div>
-                <script type="text/javascript">
-                    (function () {
-                        var appid = 'cytsT3QgK';
-                        var conf = 'prod_0358240040a6c9611add9de991099d42';
-                        var width = window.innerWidth || document.documentElement.clientWidth;
-                        if (width < 960) {
-                            window.document.write(
-                                '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-                                appid + '&conf=' + conf + '"><\/script>');
-                        } else {
-                            var loadJs = function (d, a) {
-                                var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-                                var b = document.createElement("script");
-                                b.setAttribute("type", "text/javascript");
-                                b.setAttribute("charset", "UTF-8");
-                                b.setAttribute("src", d);
-                                if (typeof a === "function") {
-                                    if (window.attachEvent) {
-                                        b.onreadystatechange = function () {
-                                            var e = b.readyState;
-                                            if (e === "loaded" || e === "complete") {
-                                                b.onreadystatechange = null;
-                                                a()
-                                            }
-                                        }
-                                    } else {
-                                        b.onload = a
-                                    }
-                                }
-                                c.appendChild(b)
-                            };
-                            loadJs("https://changyan.sohu.com/upload/changyan.js", function () {
-                                window.changyan.api.config({
-                                    appid: appid,
-                                    conf: conf
-                                })
-                            });
-                        }
-                    })();
-                </script>
             </div>
         </div>
     </div>

+ 20 - 61
src/Masuit.MyBlogs.Core/Views/Post/HistoryVersion_Admin.cshtml

@@ -3,7 +3,7 @@
 @using Masuit.Tools.Win32
 @model Masuit.MyBlogs.Core.Models.Entity.PostHistoryVersion
 @{
-    ViewBag.Title = Model.Post.Title+"于"+Model.ModifyDate.ToString("yyyy-MM-dd HH:mm:ss")+"的历史版本:"+Model.Title;
+    ViewBag.Title = Model.Post.Title + "于" + Model.ModifyDate.ToString("yyyy-MM-dd HH:mm:ss") + "的历史版本:" + Model.Title;
     Layout = "~/Views/Shared/_Layout.cshtml";
     string[] colors = { "success", "info", "primary", "warning", "danger", "default", "primary" };
 }
@@ -13,9 +13,9 @@
     <ol class="cd-breadcrumb triangle">
         <li>@Html.ActionLink("首页", "Index", "Home")</li>
         <li>@Html.ActionLink("文章列表", "Post", "Home")</li>
-        <li>@Html.ActionLink(Model.Post.Title.Length>20?Model.Post.Title.Substring(0,20)+"...": Model.Post.Title, "Details", "Post",new{id=Model.PostId},null)</li>
-        <li>@Html.ActionLink("历史版本", "History", "Post",new{id=Model.PostId},null)</li>
-        <li class="current"><em>@(Model.Title.Length>40? Model.Title.Substring(0,40)+"...": Model.Title)</em></li>
+        <li>@Html.ActionLink(Model.Post.Title.Length > 20 ? Model.Post.Title.Substring(0, 20) + "..." : Model.Post.Title, "Details", "Post", new { id = Model.PostId }, null)</li>
+        <li>@Html.ActionLink("历史版本", "History", "Post", new { id = Model.PostId }, null)</li>
+        <li class="current"><em>@(Model.Title.Length > 40 ? Model.Title.Substring(0, 40) + "..." : Model.Title)</em></li>
     </ol>
     <div class="wrapper-content article">
         <div class="ibox">
@@ -33,17 +33,17 @@
                             <div class="row">
                                 <div class="col-sm-7">
                                     <div class="padding-bot10">
-                                        修改于<span class="text-success">@Model.ModifyDate.ToString("yyyy-MM-dd HH:mm:ss")</span> | 
-                                    原分类:<i class="icon-map-pin"></i>@Html.ActionLink(Model.Category.Name, "Category", "Home", new { id = Model.CategoryId }, new { @class = "label label-" + colors[new Random().StrictNext() % colors.Length] })
-                                    @if (Model.Seminar.Any())
-                                    {
-                                        <span> | 原所属专题:</span>
-                                        var seminars = Model.Seminar;
-                                        foreach (var s in seminars)
+                                        修改于<span class="text-success">@Model.ModifyDate.ToString("yyyy-MM-dd HH:mm:ss")</span> |
+                                        原分类:<i class="icon-map-pin"></i>@Html.ActionLink(Model.Category.Name, "Category", "Home", new { id = Model.CategoryId }, new { @class = "label label-" + colors[new Random().StrictNext() % colors.Length] })
+                                        @if (Model.Seminar.Any())
                                         {
-                                            @Html.ActionLink(s.Seminar.Title, "Index", "Seminar", new { id = s.SeminarId }, new { @class = "label label-" + colors[new Random().StrictNext() % colors.Length] })<text> </text>
+                                            <span> | 原所属专题:</span>
+                                            var seminars = Model.Seminar;
+                                            foreach (var s in seminars)
+                                            {
+                                                @Html.ActionLink(s.Seminar.Title, "Index", "Seminar", new { id = s.SeminarId }, new { @class = "label label-" + colors[new Random().StrictNext() % colors.Length] })<text> </text>
+                                            }
                                         }
-                                    }
                                         <div class="btn-group">
                                             <button class="btn btn-danger btn-sm" id="del">删除此版本</button>
                                             <button class="btn btn-info btn-sm" id="revert">还原到此版本</button>
@@ -72,10 +72,11 @@
                         </header>
                         <article class="article" id="article">
                             @Html.Raw(Model.Content)
-                            @if(!string.IsNullOrEmpty(Model.ProtectContent)) {
-                            <div class="row protected">
-                                @Html.Raw(Model.ProtectContent)
-                            </div>
+                            @if (!string.IsNullOrEmpty(Model.ProtectContent))
+                            {
+                                <div class="row protected">
+                                    @Html.Raw(Model.ProtectContent)
+                                </div>
                             }
                         </article>
                         <div id="cyReward" role="cylabs" data-use="reward"></div>
@@ -103,7 +104,7 @@
                             PostHistoryVersion next = ViewBag.Next;
                             if (next != null)
                             {
-                                @Html.ActionLink(next.Title, "HistoryVersion", "Post", new { id=next.PostId,hid = next.Id }, null)
+                                @Html.ActionLink(next.Title, "HistoryVersion", "Post", new { id = next.PostId, hid = next.Id }, null)
                             }
                             else
                             {
@@ -112,48 +113,6 @@
                         }
                     </div>
                 </section>
-                <!--PC和WAP自适应版-->
-                <div id="SOHUCS" sid="[email protected]"></div>
-                <script type="text/javascript">
-	                (function() {
-		                var appid = 'cytsT3QgK';
-		                var conf = 'prod_0358240040a6c9611add9de991099d42';
-		                var width = window.innerWidth || document.documentElement.clientWidth;
-		                if (width < 960) {
-			                window.document.write(
-				                '<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="https://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' +
-				                appid + '&conf=' + conf + '"><\/script>');
-		                } else {
-			                var loadJs = function(d, a) {
-				                var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
-				                var b = document.createElement("script");
-				                b.setAttribute("type", "text/javascript");
-				                b.setAttribute("charset", "UTF-8");
-				                b.setAttribute("src", d);
-				                if (typeof a === "function") {
-					                if (window.attachEvent) {
-						                b.onreadystatechange = function() {
-							                var e = b.readyState;
-							                if (e === "loaded" || e === "complete") {
-								                b.onreadystatechange = null;
-								                a()
-							                }
-						                }
-					                } else {
-						                b.onload = a
-					                }
-				                }
-				                c.appendChild(b)
-			                };
-			                loadJs("https://changyan.sohu.com/upload/changyan.js", function() {
-				                window.changyan.api.config({
-					                appid: appid,
-					                conf: conf
-				                })
-			                });
-		                }
-	                })();
-                </script>
             </div>
         </div>
     </div>
@@ -169,7 +128,7 @@
         }).data("toc-tocify");
 	    $(".tocify>.close").on("click", function(e) {
 		    $(this).parent().hide();
-	    });		
+	    });
 	    SyntaxHighlighter.all();
 	    SyntaxHighlighter.defaults['toolbar'] = false;
         $("#del").on("click", function (e) {

+ 0 - 3
src/Masuit.MyBlogs.Core/Views/Shared/_Layout.cshtml

@@ -348,9 +348,6 @@
         <div class="level-3"></div>
     </div>
     <script>window._bd_share_config = { "common": { "bdSnsKey": {}, "bdText": "", "bdMini": "2", "bdMiniList": false, "bdPic": "", "bdStyle": "0", "bdSize": "24" }, "slide": { "type": "slide", "bdImg": "0", "bdPos": "right", "bdTop": "350" }, "image": { "viewList": ["qzone", "tsina", "tqq", "renren", "weixin"], "viewText": "分享到:", "viewSize": "24" } }; with (document) 0[(getElementsByTagName('head')[0] || body).appendChild(createElement('script')).src = '/static/api/js/share.js?v=89860593.js?cdnversion=' + ~(-new Date() / 36e5)];</script>
-    @*安装畅言*@
-    <script type="text/javascript" charset="utf-8" src="https://changyan.itc.cn/js/lib/jquery.js"></script>
-    <script type="text/javascript" charset="utf-8" src="https://changyan.sohu.com/js/changyan.labs.https.js?appid=cytsT3QgK"></script>
 
     <button type="button" class="btn btn-info btn-sm canvas-close" style="position: fixed;right: 0;bottom: 0;z-index: 200;display: none">不再显示canvas背景</button>
     <script type="text/javascript" color="0,104,183" opacity='1' zIndex="-1" count="100" src="~/Scripts/line.js"></script>

+ 6 - 0
src/Masuit.MyBlogs.Core/bundleconfig.json

@@ -4,5 +4,11 @@
     "inputFiles": [
       "wwwroot/ng-views/app/app.config.js"
     ]
+  },
+  {
+    "outputFileName": "wwwroot/Scripts/global/article.min.js",
+    "inputFiles": [
+      "wwwroot/Scripts/global/article.js"
+    ]
   }
 ]

+ 0 - 16
src/Masuit.MyBlogs.Core/wwwroot/Content/common/app.css

@@ -747,22 +747,6 @@ Custom bottom spacer
     font-size: 12px;
     margin-top: 5px
 }
-#cyReward {
-    margin-top: 10px;
-    position: relative;
-    text-align: center;
-}
-    #cyReward #cy-reward-pop {
-        top: auto !important;
-        margin-top: -500px !important
-    }
-.changyan-overlay-outer {
-    position: fixed !important;
-    top: 50% !important;
-    left: 50% !important;
-    opacity: 1;
-    transform: translate(-50%);
-}
 .protected {
     border: 1px dashed #F60;
     padding: 10px;

+ 2 - 1
src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/article.js

@@ -270,7 +270,8 @@ function commentVoteBind() {
 		}, (data) => {
 			if (data) {
 				if (data.Success) {
-                    $(this).children()[0].innerText = parseInt($(this).children()[0].innerText)+1;
+					console.log($(this).children("span.count"));
+                    $(this).children("span.count").text(parseInt($(this).children("span.count").text())+1);
 					$(this).addClass("disabled");
 					this.disabled = true;
 					window.notie.alert({

File diff suppressed because it is too large
+ 0 - 0
src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/article.min.js


+ 6 - 6
src/Masuit.MyBlogs.Core/wwwroot/Scripts/global/scripts.js

@@ -317,8 +317,8 @@ function loadParentComments(data) {
                                 </header>
                                 <div class="panel-body">
                                     ${rows[i].Content} 
-                                    <span class="cmvote btn btn-sm btn-info" data-id="${rows[i].Id}">有用(<span>${rows[i].VoteCount}</span>)</span>
-                                    <a class="btn btn-sm btn-info" href="?uid=${rows[i].Id}">回复</a>
+                                    <span class="cmvote label label-info" data-id="${rows[i].Id}"><i class="icon-thumbsup"></i>(<span>${rows[i].VoteCount}</span>)</span>
+                                    <a class="label label-info" href="?uid=${rows[i].Id}"><i class="icon-comment"></i></a>
                                     ${loadComments(data.rows, Enumerable.From(data.rows).Where(c => c.ParentId === rows[i].Id).OrderBy(c => c.CommentDate).ToArray(), startfloor--)}
                                 </div>
                             </article>
@@ -345,8 +345,8 @@ function loadComments(data, comments, root, depth = 0) {
                         </div>
                         <div class="panel-body">
                             ${item.Content} 
-                            <span class="cmvote btn btn-sm btn-${color}" data-id="${item.Id}">有用(<span>${item.VoteCount}</span>)</span>
-                            <a class="btn btn-sm btn-${color}" href="?uid=${item.Id}">回复</a>
+                            <span class="cmvote label label-${color}" data-id="${item.Id}"><i class="icon-thumbsup"></i>(<span>${item.VoteCount}</span>)</span>
+                            <a class="label label-${color}" href="?uid=${item.Id}"><i class="icon-comment"></i></a>
                             ${loadComments(data, Enumerable.From(data).Where(c => c.ParentId === item.Id).OrderBy(c => c.CommentDate), root, depth)}
                         </div>
                     </article>`;
@@ -376,7 +376,7 @@ function loadParentMsgs(data) {
 									</header>
 									<div class="panel-body">
 										${rows[i].Content}
-										<a class="btn btn-sm btn-info" href="?uid=${rows[i].Id}">回复</a>
+										<a class="label label-info" href="?uid=${rows[i].Id}"><i class="icon-comment"></i></a>
 										${loadMsgs(data.rows,Enumerable.From(data.rows).Where(c => c.ParentId === rows[i].Id).OrderBy(c => c.PostDate).ToArray(), startfloor--)}
 									</div>
 								</article>
@@ -403,7 +403,7 @@ function loadMsgs(data, msg, root, depth = 0) {
 						</div>
 						<div class="panel-body">
 							${item.Content}
-							<a class="btn btn-sm btn-${color}" href="?uid=${item.Id}">回复</a>
+							<a class="label label-${color}" href="?uid=${item.Id}"><i class="icon-comment"></i></a>
 							${loadMsgs(data,Enumerable.From(data).Where(c => c.ParentId === item.Id).OrderBy(c => c.PostDate),root, depth)}
 						</div>
 					</article>`;

+ 1 - 1
src/Masuit.MyBlogs.Core/wwwroot/ng-views/app/app.config.min.js

@@ -1 +1 @@
-var myApp=angular.module("myApp",["ui.router","oc.lazyLoad","ngAnimate","ngResource","ui.bootstrap","angular-loading-bar","ng.ueditor","ngTable","tm.pagination","ui.tree","ui.bootstrap"]);myApp.config(["$provide","$compileProvider","$controllerProvider","$filterProvider","$httpProvider",function(n,t,i,r,u){myApp.controller=i.register;myApp.directive=t.directive;myApp.filter=r.register;myApp.factory=n.factory;myApp.service=n.service;myApp.constant=n.constant;u.defaults.transformRequest=function(n){var i=[];for(var t in n)n.hasOwnProperty(t)&&i.push(window.encodeURIComponent(t)+"="+window.encodeURIComponent(n[t]));return i.join("&")};u.defaults.headers.post={"Content-Type":"application/x-www-form-urlencoded; charser=UTF-8"}}]);myApp.directive("trackedTable",function(){return{restrict:"A",priority:-1,require:"ngForm",controller:function(n,t,i){function h(){var h=t(i.trackedTable).assign;h(n,r);n.$on("$destroy",function(){h(null)});r.reset=function(){f=[];u=[];e(!1)};r.isCellDirty=function(n,t){var i=o(n,f);return i&&i.cells.indexOf(t)!==-1};r.setCellDirty=function(n,t,i){s(n,t,i,f)};r.setCellInvalid=function(n,t,i){s(n,t,i,u);e(u.length>0)};r.untrack=function(n){_.remove(u,function(t){return t.row===n});_.remove(f,function(t){return t.row===n});e(u.length>0)}}function o(n,t){return _.find(t,function(t){return t.row===n})}function s(n,t,i,r){var u=o(n,r);(u||i)&&(i?(u||(u={row:n,cells:[]},r.push(u)),u.cells.indexOf(t)===-1&&u.cells.push(t)):(_.remove(u.cells,function(n){return t===n}),u.cells.length===0&&_.remove(r,function(n){return u===n})))}function e(n){r.$invalid=n;r.$valid=!n}var r=this,f=[],u=[];h()}}});myApp.filter("htmlString",["$sce",function(n){return function(t){return n.trustAsHtml(t)}}]);
+var myApp=angular.module("myApp",["ui.router","oc.lazyLoad","ngAnimate","ngResource","ui.bootstrap","angular-loading-bar","ng.ueditor","ngTable","tm.pagination","ui.tree","ui.bootstrap","ngFileUpload"]);myApp.config(["$provide","$compileProvider","$controllerProvider","$filterProvider","$httpProvider",function(n,t,i,r,u){myApp.controller=i.register;myApp.directive=t.directive;myApp.filter=r.register;myApp.factory=n.factory;myApp.service=n.service;myApp.constant=n.constant;u.defaults.transformRequest=function(n){var i=[];for(var t in n)n.hasOwnProperty(t)&&i.push(window.encodeURIComponent(t)+"="+window.encodeURIComponent(n[t]));return i.join("&")};u.defaults.headers.post={"Content-Type":"application/x-www-form-urlencoded; charser=UTF-8"}}]);myApp.directive("trackedTable",function(){return{restrict:"A",priority:-1,require:"ngForm",controller:function(n,t,i){function h(){var h=t(i.trackedTable).assign;h(n,r);n.$on("$destroy",function(){h(null)});r.reset=function(){f=[];u=[];e(!1)};r.isCellDirty=function(n,t){var i=o(n,f);return i&&i.cells.indexOf(t)!==-1};r.setCellDirty=function(n,t,i){s(n,t,i,f)};r.setCellInvalid=function(n,t,i){s(n,t,i,u);e(u.length>0)};r.untrack=function(n){_.remove(u,function(t){return t.row===n});_.remove(f,function(t){return t.row===n});e(u.length>0)}}function o(n,t){return _.find(t,function(t){return t.row===n})}function s(n,t,i,r){var u=o(n,r);(u||i)&&(i?(u||(u={row:n,cells:[]},r.push(u)),u.cells.indexOf(t)===-1&&u.cells.push(t)):(_.remove(u.cells,function(n){return t===n}),u.cells.length===0&&_.remove(r,function(n){return u===n})))}function e(n){r.$invalid=n;r.$valid=!n}var r=this,f=[],u=[];h()}}});myApp.filter("htmlString",["$sce",function(n){return function(t){return n.trustAsHtml(t)}}]);

Some files were not shown because too many files changed in this diff