Error executing template "Designs/Swift/QueryPublisher/BluePrint_GlobalSearchHeader.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
at CompiledRazorTemplates.Dynamic.RazorEngine_73d637b41eb845e7b71927513fb972f3.ExecuteAsync()
at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader)
at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.DynamicWrapperService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.RunCompile(IRazorEngineService service, String templateSource, String name, Type modelType, Object model, DynamicViewBag viewBag)
at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>>
@using Dynamicweb
@using Dynamicweb.Core.Encoders
@{
string url = Dynamicweb.Context.Current.Request.RawUrl.Split("?")[0];
string searchTerm = string.Empty;
if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["eq"]))
{
searchTerm = Dynamicweb.Context.Current.Request["eq"].Trim();
}
if (string.IsNullOrEmpty(searchTerm))
{
searchTerm = Dynamicweb.Context.Current.Request["q"].Trim();
}
}
<style>
.bpe-global-search-header {
display: flex;
flex-direction: column;
align-items: flex-start;
margin-bottom: 20px;
width: 100%;
.search-title {
color: var(--text-headline, #363337);
font-family: var(--headline-h3-font-family, Roboto);
font-size: var(--headline-h3-font-size, 38px);
font-style: normal;
font-weight: 700;
line-height: 120%; /* 45.6px */
letter-spacing: var(--headline-h3-letter-spacing, 4.75px);
text-transform: uppercase;
}
.bpe-search-count {
color: var(--headline-h3-color, #4495D1);
font-family: var(--headline-h5-font-family, Roboto);
font-size: var(--headline-h5-font-size, 22px);
font-style: normal;
font-weight: 700;
line-height: 120%; /* 26.4px */
letter-spacing: var(--headline-h5-letter-spacing, 2.75px);
text-transform: uppercase;
}
.search-form-wrapper {
margin-top: 2rem;
width: 100%;
.form-wrapper {
position: relative;
.search-input {
width: 100%;
}
svg {
position: absolute;
top: 50%;
right: 1rem;
transform: translateY(-50%);
}
}
}
}
</style>
<div class="bpe-global-search-header container-xl">
<div class="search-title">@Translate("Search Results")</div>
<div class="bpe-search-count"><span id="bpe-search-count">(XXX)</span> @Translate("Results")</div>
<div class="search-form-wrapper bpe-form-group">
<form method="get" action="@url" data-response-target-element="content" class="w-100">
<div class="form-wrapper">
<input class="search-input bpe-form-control" name="eq" type="text" value="@searchTerm" />
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
<path d="M17.5 17.5L12.5 12.5M14.1666 8.33333C14.1666 11.555 11.555 14.1667 8.33332 14.1667C5.11167 14.1667 2.5 11.555 2.5 8.33333C2.5 5.11167 5.11167 2.5 8.33332 2.5C11.555 2.5 14.1666 5.11167 14.1666 8.33333Z" stroke="#363337" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</div>
</form>
</div>
<div class="vh-50" id="bpe-no-results-wrapper">
<div class="bpe-h3 mt-4">@Translate("No results found")</div>
</div>
</div>
<script>
(function() {
document.addEventListener("DOMContentLoaded", function() {
// This code will execute only after the DOM is fully loaded and parsed.
const pagesTotal = document.getElementById("bpe-pages-total").textContent;
const productsTotal = document.getElementById("bpe-products-total").textContent;
const total = parseInt(pagesTotal) + parseInt(productsTotal);
const element = document.getElementById("bpe-search-count");
if (element) {
element.textContent = `(${total})`;
if (total > 0) {
document.getElementById("bpe-no-results-wrapper").classList.add("d-none");
}
}
});
})();
</script>