diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Pages/Index.cshtml b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Pages/Index.cshtml
index 8cf7ea242a..1b3f3ff94c 100644
--- a/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Pages/Index.cshtml
+++ b/modules/cms-kit/host/Volo.CmsKit.Web.Unified/Pages/Index.cshtml
@@ -60,7 +60,7 @@
@if (GlobalFeatureManager.Instance.IsEnabled())
{
- @await Component.InvokeAsync(typeof(CommentingViewComponent), new {entityType = "quote", entityId = "1", rels = new [] {"nofollow"}})
+ @await Component.InvokeAsync(typeof(CommentingViewComponent), new {entityType = "quote", entityId = "1", referralLinks = new [] {"nofollow"}})
}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/IMarkdownToHtmlRenderer.cs b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/IMarkdownToHtmlRenderer.cs
index f8316cc537..7a3c91db6f 100644
--- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/IMarkdownToHtmlRenderer.cs
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/IMarkdownToHtmlRenderer.cs
@@ -4,5 +4,5 @@ namespace Volo.CmsKit.Web.Renderers;
public interface IMarkdownToHtmlRenderer
{
- Task RenderAsync(string rawMarkdown, bool allowHtmlTags = true, bool preventXSS = true, string[] rels = null);
+ Task RenderAsync(string rawMarkdown, bool allowHtmlTags = true, bool preventXSS = true, string referralLinks = null);
}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/MarkdownToHtmlRenderer.cs b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/MarkdownToHtmlRenderer.cs
index 0a548722b3..d2e485a693 100644
--- a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/MarkdownToHtmlRenderer.cs
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Renderers/MarkdownToHtmlRenderer.cs
@@ -20,7 +20,7 @@ public class MarkdownToHtmlRenderer : IMarkdownToHtmlRenderer, ITransientDepende
_htmlSanitizer = new HtmlSanitizer();
}
- public Task RenderAsync(string rawMarkdown, bool allowHtmlTags = true, bool preventXSS = true, string[] rels = null)
+ public Task RenderAsync(string rawMarkdown, bool allowHtmlTags = true, bool preventXSS = true, string referralLinks = null)
{
if (!allowHtmlTags)
{
@@ -34,22 +34,21 @@ public class MarkdownToHtmlRenderer : IMarkdownToHtmlRenderer, ITransientDepende
html = _htmlSanitizer.Sanitize(html);
}
- if(rels != null && rels.Any())
+ if(referralLinks != null)
{
- html = AddRelToLinks(html, rels);
+ html = SetReferralLinks(html, referralLinks);
}
return Task.FromResult(html);
}
- private string AddRelToLinks(string html, string[] rels)
+ private string SetReferralLinks(string html, string referralLinks)
{
- var rel = string.Join(" ", rels);
var regex = new Regex(")", RegexOptions.IgnoreCase |
RegexOptions.Singleline |
RegexOptions.Multiline |
RegexOptions.Compiled);
- return regex.Replace(html, $" InvokeAsync(
string entityType,
string entityId,
- IEnumerable rels = null)
+ IEnumerable referralLinks = null)
{
+ referralLinks ??= Enumerable.Empty();
var comments = (await CommentPublicAppService
.GetListAsync(entityType, entityId)).Items;
@@ -71,7 +72,7 @@ public class CommentingViewComponent : AbpViewComponent
{
EntityId = entityId,
EntityType = entityType,
- Rels = rels,
+ ReferralLinks = referralLinks,
LoginUrl = loginUrl,
Comments = comments.OrderByDescending(i => i.CreationTime).ToList()
};
@@ -100,12 +101,12 @@ public class CommentingViewComponent : AbpViewComponent
private async Task ConvertMarkdownTextsToHtml(CommentingViewModel viewModel)
{
viewModel.RawCommentTexts = new Dictionary();
- var rels = viewModel.Rels?.ToArray();
+ var referralLinks = viewModel.ReferralLinks?.ToArray();
foreach (var comment in viewModel.Comments)
{
viewModel.RawCommentTexts.Add(comment.Id, comment.Text);
- comment.Text = await MarkdownToHtmlRenderer.RenderAsync(comment.Text, allowHtmlTags: false, preventXSS: true, rels: rels);
+ comment.Text = await MarkdownToHtmlRenderer.RenderAsync(comment.Text, allowHtmlTags: false, preventXSS: true, referralLinks: referralLinks.JoinAsString(" "));
foreach (var reply in comment.Replies)
{
@@ -121,7 +122,7 @@ public class CommentingViewComponent : AbpViewComponent
public string EntityId { get; set; }
- public IEnumerable Rels { get; set; }
+ public IEnumerable ReferralLinks { get; set; }
public string LoginUrl { get; set; }