lowercasing files

This commit is contained in:
Bjarke Berg
2021-02-05 16:31:14 +01:00
parent fe9410713e
commit 36e1c012d4
8 changed files with 286 additions and 8 deletions

View File

@@ -7,7 +7,7 @@ namespace Umbraco.Extensions
{
public static class GridTemplateExtensions
{
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedProperty property, string framework = "Bootstrap3")
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedProperty property, string framework = "bootstrap3")
{
var asString = property.GetValue() as string;
if (asString != null && string.IsNullOrEmpty(asString)) return new HtmlString(string.Empty);
@@ -18,7 +18,7 @@ namespace Umbraco.Extensions
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedContent contentItem)
{
return html.GetGridHtml(contentItem, "bodyText", "Bootstrap3");
return html.GetGridHtml(contentItem, "bodyText", "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedContent contentItem, string propertyAlias)
@@ -26,7 +26,7 @@ namespace Umbraco.Extensions
if (propertyAlias == null) throw new ArgumentNullException(nameof(propertyAlias));
if (string.IsNullOrWhiteSpace(propertyAlias)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(propertyAlias));
return html.GetGridHtml(contentItem, propertyAlias, "Bootstrap3");
return html.GetGridHtml(contentItem, propertyAlias, "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedContent contentItem, string propertyAlias, string framework)
@@ -47,7 +47,7 @@ namespace Umbraco.Extensions
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedElement contentItem)
{
return html.GetGridHtml(contentItem, "bodyText", "Bootstrap3");
return html.GetGridHtml(contentItem, "bodyText", "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedElement contentItem, string propertyAlias)
@@ -55,7 +55,7 @@ namespace Umbraco.Extensions
if (propertyAlias == null) throw new ArgumentNullException(nameof(propertyAlias));
if (string.IsNullOrWhiteSpace(propertyAlias)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(propertyAlias));
return html.GetGridHtml(contentItem, propertyAlias, "Bootstrap3");
return html.GetGridHtml(contentItem, propertyAlias, "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IHtmlHelper html, IPublishedElement contentItem, string propertyAlias, string framework)
@@ -73,7 +73,7 @@ namespace Umbraco.Extensions
return html.Partial(view, model);
}
public static IHtmlContent GetGridHtml(this IPublishedProperty property, IHtmlHelper html, string framework = "Bootstrap3")
public static IHtmlContent GetGridHtml(this IPublishedProperty property, IHtmlHelper html, string framework = "bootstrap3")
{
var asString = property.GetValue() as string;
if (asString != null && string.IsNullOrEmpty(asString)) return new HtmlString(string.Empty);
@@ -84,7 +84,7 @@ namespace Umbraco.Extensions
public static IHtmlContent GetGridHtml(this IPublishedContent contentItem, IHtmlHelper html)
{
return GetGridHtml(contentItem, html, "bodyText", "Bootstrap3");
return GetGridHtml(contentItem, html, "bodyText", "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IPublishedContent contentItem, IHtmlHelper html, string propertyAlias)
@@ -92,7 +92,7 @@ namespace Umbraco.Extensions
if (propertyAlias == null) throw new ArgumentNullException(nameof(propertyAlias));
if (string.IsNullOrWhiteSpace(propertyAlias)) throw new ArgumentException("Value can't be empty or consist only of white-space characters.", nameof(propertyAlias));
return GetGridHtml(contentItem, html, propertyAlias, "Bootstrap3");
return GetGridHtml(contentItem, html, propertyAlias, "bootstrap3");
}
public static IHtmlContent GetGridHtml(this IPublishedContent contentItem, IHtmlHelper html, string propertyAlias, string framework)

View File

@@ -0,0 +1,92 @@
@using System.Web
@using Microsoft.AspNetCore.Html
@using Newtonsoft.Json.Linq
@inherits Umbraco.Web.Common.AspNetCore.UmbracoViewPage<dynamic>
@*
Razor helpers located at the bottom of this file
*@
@if (Model != null && Model.sections != null)
{
var oneColumn = ((System.Collections.ICollection)Model.sections).Count == 1;
<div class="umb-grid">
@if (oneColumn)
{
foreach (var section in Model.sections) {
<div class="grid-section">
@foreach (var row in section.rows) {
renderRow(row)
}
</div>
}
}else {
<div class="row clearfix">
@foreach (var s in Model.sections) {
<div class="grid-section">
<div class="col-md-@s.grid column">
@foreach (var row in s.rows) {
renderRow(row)
}
</div>
</div>
}
</div>
}
</div>
}
@functions {
private void renderRow(dynamic row)
{
<div @RenderElementAttributes(row)>
<div class="row clearfix">
@foreach ( var area in row.areas ) {
<div class="col-md-@area.grid column">
<div @RenderElementAttributes(area)>
@foreach (var control in area.controls) {
if (control !=null && control.editor != null && control.editor.view != null ) {
<text>@Html.Partial("grid/editors/base", (object)control)</text>
}
}
</div>
</div>}
</div>
</div>
}
}
@functions {
public static HtmlString RenderElementAttributes(dynamic contentItem)
{
var attrs = new List<string>();
JObject cfg = contentItem.config;
if(cfg != null)
foreach (JProperty property in cfg.Properties())
{
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
}
JObject style = contentItem.styles;
if (style != null) {
var cssVals = new List<string>();
foreach (JProperty property in style.Properties())
{
var propertyValue = property.Value.ToString();
if (string.IsNullOrWhiteSpace(propertyValue) == false)
{
cssVals.Add(property.Name + ":" + propertyValue + ";");
}
}
if (cssVals.Any())
attrs.Add("style='" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "'");
}
return new HtmlString(string.Join(" ", attrs));
}
}

View File

@@ -0,0 +1,99 @@
@using System.Web
@using Microsoft.AspNetCore.Html
@using Newtonsoft.Json.Linq
@inherits Umbraco.Web.Common.AspNetCore.UmbracoViewPage<dynamic>
@if (Model != null && Model.sections != null)
{
var oneColumn = ((System.Collections.ICollection)Model.sections).Count == 1;
<div class="umb-grid">
@if (oneColumn)
{
foreach (var section in Model.sections) {
<div class="grid-section">
@foreach (var row in section.rows) {
renderRow(row, true)
}
</div>
}
}else {
<div class="container">
<div class="row clearfix">
@foreach (var s in Model.sections) {
<div class="grid-section">
<div class="col-md-@s.grid column">
@foreach (var row in s.rows) {
renderRow(row, false)
}
</div>
</div>
}
</div>
</div>
}
</div>
}
@functions {
private void renderRow(dynamic row, bool singleColumn)
{
<div @RenderElementAttributes(row)>
@if (singleColumn) {
@:<div class="container">
}
<div class="row clearfix">
@foreach ( var area in row.areas ) {
<div class="col-md-@area.grid column">
<div @RenderElementAttributes(area)>
@foreach (var control in area.controls) {
if (control !=null && control.editor != null && control.editor.view != null ) {
<text>@Html.Partial("grid/editors/base", (object)control)</text>
}
}
</div>
</div>}
</div>
@if (singleColumn) {
@:</div>
}
</div>
}
}
@functions {
public static HtmlString RenderElementAttributes(dynamic contentItem)
{
var attrs = new List<string>();
JObject cfg = contentItem.config;
if(cfg != null)
foreach (JProperty property in cfg.Properties())
{
var propertyValue = HttpUtility.HtmlAttributeEncode(property.Value.ToString());
attrs.Add(property.Name + "=\"" + propertyValue + "\"");
}
JObject style = contentItem.styles;
if (style != null) {
var cssVals = new List<string>();
foreach (JProperty property in style.Properties())
{
var propertyValue = property.Value.ToString();
if (string.IsNullOrWhiteSpace(propertyValue) == false)
{
cssVals.Add(property.Name + ":" + propertyValue + ";");
}
}
if (cssVals.Any())
attrs.Add("style=\"" + HttpUtility.HtmlAttributeEncode(string.Join(" ", cssVals)) + "\"");
}
return new HtmlString(string.Join(" ", attrs));
}
}

View File

@@ -0,0 +1,23 @@
@model dynamic
@functions {
public static string EditorView(dynamic contentItem)
{
string view = contentItem.editor.render != null ? contentItem.editor.render.ToString() : contentItem.editor.view.ToString();
view = view.ToLower().Replace(".html", ".cshtml");
if (!view.Contains("/")) {
view = "grid/editors/" + view;
}
return view;
}
}
@try
{
string editor = EditorView(Model);
<text>@Html.Partial(editor, (object)Model)</text>
}
catch (Exception ex) {
<pre>@ex.ToString()</pre>
}

View File

@@ -0,0 +1,11 @@
@using Umbraco.Core
@model dynamic
@{
string embedValue = Convert.ToString(Model.value);
embedValue = embedValue.DetectIsJson() ? Model.value.preview : Model.value;
}
<div class="video-wrapper">
@Html.Raw(embedValue)
</div>

View File

@@ -0,0 +1,17 @@
@using Umbraco.Web.Website
@inherits Umbraco.Web.Common.AspNetCore.UmbracoViewPage<dynamic>
@inject UmbracoHelper Umbraco;
@if (Model.value != null)
{
string macroAlias = Model.value.macroAlias.ToString();
var parameters = new Dictionary<string,object>();
foreach (var mpd in Model.value.macroParamsDictionary)
{
parameters.Add(mpd.Name, mpd.Value);
}
<text>
@Umbraco.RenderMacro(macroAlias, parameters)
</text>
}

View File

@@ -0,0 +1,13 @@
@using Umbraco.Web.Templates
@model dynamic
@inject HtmlLocalLinkParser HtmlLocalLinkParser;
@inject HtmlUrlParser HtmlUrlParser;
@inject HtmlImageSourceParser HtmlImageSourceParser;
@{
var value = HtmlLocalLinkParser.EnsureInternalLinks(Model.value.ToString());
value = HtmlUrlParser.EnsureUrls(value);
value = HtmlImageSourceParser.EnsureImageSources(value);
}
@Html.Raw(value)

View File

@@ -0,0 +1,23 @@
@using System.Web
@model dynamic
@if (Model.editor.config.markup != null)
{
string markup = Model.editor.config.markup.ToString();
markup = markup.Replace("#value#", Html.ReplaceLineBreaks(HttpUtility.HtmlEncode((string)Model.value.ToString())).ToString());
if (Model.editor.config.style != null)
{
markup = markup.Replace("#style#", Model.editor.config.style.ToString());
}
<text>
@Html.Raw(markup)
</text>
}
else
{
<text>
<div style="@Model.editor.config.style">@Model.value</div>
</text>
}