Removed duplicated ToFriendlyEmpty() methods and introduced an equivalent extension method. Changed <empty> to [Empty] to avoid HTML encoding problems.

This commit is contained in:
Daniel Stolt
2014-07-20 15:27:00 +02:00
parent 3ac23d4b32
commit 104c051783
9 changed files with 17 additions and 53 deletions

View File

@@ -1,4 +1,5 @@
using System; using System;
using Orchard.Localization;
namespace Orchard.AuditTrail.Helpers { namespace Orchard.AuditTrail.Helpers {
public static class StringExtensions { public static class StringExtensions {
@@ -12,5 +13,9 @@ namespace Orchard.AuditTrail.Helpers {
return i; return i;
} }
public static string OrIfEmpty(this string value, LocalizedString emptyString) {
return String.IsNullOrWhiteSpace(value) ? emptyString.Text : value;
}
} }
} }

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>)Model.EventData; var eventData = (IDictionary<string, object>)Model.EventData;
var contentPartName = eventData.Get<string>("ContentPartName"); var contentPartName = eventData.Get<string>("ContentPartName");
@@ -18,7 +13,7 @@
<ul> <ul>
@foreach (var setting in diff) { @foreach (var setting in diff) {
<li> <li>
@T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, ToFriendlyEmpty(setting.Value.OldValue), ToFriendlyEmpty(setting.Value.NewValue)) @T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, setting.Value.OldValue.OrIfEmpty(T("[Empty]")), setting.Value.NewValue.OrIfEmpty(T("[Empty]")))
</li> </li>
} }
</ul> </ul>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>)Model.EventData; var eventData = (IDictionary<string, object>)Model.EventData;
var contentPartName = eventData.Get<string>("ContentPartName"); var contentPartName = eventData.Get<string>("ContentPartName");
@@ -27,8 +22,8 @@
@foreach (var setting in diff) { @foreach (var setting in diff) {
<tr> <tr>
<td>@setting.Key</td> <td>@setting.Key</td>
<td>@ToFriendlyEmpty(setting.Value.OldValue)</td> <td>@setting.Value.OldValue.OrIfEmpty(T("[Empty]"))</td>
<td>@ToFriendlyEmpty(setting.Value.NewValue)</td> <td>@setting.Value.NewValue.OrIfEmpty(T("[Empty]"))</td>
</tr> </tr>
} }
</tbody> </tbody>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
@@ -22,7 +17,7 @@
<ul> <ul>
@foreach (var setting in diff) { @foreach (var setting in diff) {
<li> <li>
@T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, ToFriendlyEmpty(setting.Value.OldValue), ToFriendlyEmpty(setting.Value.NewValue)) @T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, setting.Value.OldValue.OrIfEmpty(T("[Empty]")), setting.Value.NewValue.OrIfEmpty(T("[Empty]")))
</li> </li>
} }
</ul> </ul>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? T("<empty>").Text : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
@@ -31,8 +26,8 @@
@foreach (var setting in diff) { @foreach (var setting in diff) {
<tr> <tr>
<td>@setting.Key</td> <td>@setting.Key</td>
<td>@ToFriendlyEmpty(setting.Value.OldValue)</td> <td>@setting.Value.OldValue.OrIfEmpty(T("[Empty]"))</td>
<td>@ToFriendlyEmpty(setting.Value.NewValue)</td> <td>@setting.Value.NewValue.OrIfEmpty(T("[Empty]"))</td>
</tr> </tr>
} }
</tbody> </tbody>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
@@ -19,7 +14,7 @@
<ul> <ul>
@foreach (var setting in diff) { @foreach (var setting in diff) {
<li> <li>
@T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, ToFriendlyEmpty(setting.Value.OldValue), ToFriendlyEmpty(setting.Value.NewValue)) @T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, setting.Value.OldValue.OrIfEmpty(T("[Empty]")), setting.Value.NewValue.OrIfEmpty(T("[Empty]")))
</li> </li>
} }
</ul> </ul>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
@@ -28,8 +23,8 @@
@foreach (var setting in diff) { @foreach (var setting in diff) {
<tr> <tr>
<td>@setting.Key</td> <td>@setting.Key</td>
<td>@ToFriendlyEmpty(setting.Value.OldValue)</td> <td>@setting.Value.OldValue.OrIfEmpty(T("[Empty]"))</td>
<td>@ToFriendlyEmpty(setting.Value.NewValue)</td> <td>@setting.Value.NewValue.OrIfEmpty(T("[Empty]"))</td>
</tr> </tr>
} }
</tbody> </tbody>

View File

@@ -3,23 +3,17 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? Html.Encode(T("<empty>").Text) : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
var diff = (DiffDictionary<string, string>) Model.Diff; var diff = (DiffDictionary<string, string>) Model.Diff;
} }
<section class="audittrail-contenttype-event"> <section class="audittrail-contenttype-event">
@T("Settings for the content type <strong>{0}</strong> were changed:", contentTypeName) @T("Settings for the content type <strong>{0}</strong> were changed:", contentTypeName)
<ul> <ul>
@foreach (var setting in diff) { @foreach (var setting in diff) {
<li> <li>
@T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, ToFriendlyEmpty(setting.Value.OldValue), ToFriendlyEmpty(setting.Value.NewValue)) @T("<strong>{0}</strong> was changed from <strong>{1}</strong> to <strong>{2}</strong>.", setting.Key, setting.Value.OldValue.OrIfEmpty(T("[Empty]")), setting.Value.NewValue.OrIfEmpty(T("[Empty]")))
</li> </li>
} }
</ul> </ul>

View File

@@ -3,11 +3,6 @@
@{ @{
Style.Include("audittrail-contenttype-event.css"); Style.Include("audittrail-contenttype-event.css");
} }
@functions {
static string ToFriendlyEmpty(string value) {
return String.IsNullOrWhiteSpace(value) ? "<empty>" : value;
}
}
@{ @{
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentTypeName = eventData.Get<string>("ContentTypeName"); var contentTypeName = eventData.Get<string>("ContentTypeName");
@@ -27,8 +22,8 @@
@foreach (var setting in diff) { @foreach (var setting in diff) {
<tr> <tr>
<td>@setting.Key</td> <td>@setting.Key</td>
<td>@ToFriendlyEmpty(setting.Value.OldValue)</td> <td>@setting.Value.OldValue.OrIfEmpty(T("[Empty]"))</td>
<td>@ToFriendlyEmpty(setting.Value.NewValue)</td> <td>@setting.Value.NewValue.OrIfEmpty(T("[Empty]"))</td>
</tr> </tr>
} }
</tbody> </tbody>