Exception in template (\Designs\net8800\Paragraph\DateLinksFirstAgenda.cshtml): System.ArgumentException: Invalid JSON primitive: .
at System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializePrimitiveObject()
at System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeInternal(Int32 depth)
at System.Web.Script.Serialization.JavaScriptObjectDeserializer.BasicDeserialize(String input, Int32 depthLimit, JavaScriptSerializer serializer)
at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize(JavaScriptSerializer serializer, String input, Type type, Int32 depthLimit)
at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize[T](String input)
at EnergiViborg.CustomModules.FirstAgenda.FirstAgendaService.GetTokenFromResponse() in C:\azp\agent\_work\15\s\EnergiViborg\EnergiViborg\CustomModules\FirstAgenda\FirstAgendaService.cs:line 55
at EnergiViborg.CustomModules.FirstAgenda.FirstAgendaService.FirstAgendaRequest() in C:\azp\agent\_work\15\s\EnergiViborg\EnergiViborg\CustomModules\FirstAgenda\FirstAgendaService.cs:line 18
at EnergiViborg.CustomModules.FirstAgenda.FirstAgendaService.GetMeetingsByCommittee(String committeeId) in C:\azp\agent\_work\15\s\EnergiViborg\EnergiViborg\CustomModules\FirstAgenda\FirstAgendaService.cs:line 79
at CompiledRazorTemplates.Dynamic.cfddfddabcdcadace.Execute()
at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateBase.cs:line 126
at RazorEngine.Templating.TemplateService.Run(ITemplate template, DynamicViewBag viewBag) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 608
at RazorEngine.Templating.TemplateService.Parse(String razorTemplate, Object model, DynamicViewBag viewBag, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 439
at RazorEngine.Razor.Parse[T](String razorTemplate, T model, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Razor.cs:line 276
at Dynamicweb.Rendering.Template.RenderRazorTemplate()
@using System.Web;
@using System.Web.Script.Serialization;
@using RestSharp;
@using RestSharp.Authenticators;
@using Dynamicweb.Content.Items
@using Co3.Espresso.Base.Models
@using Co3.Espresso.Base.Extensions
@using Co3.Espresso.Website.Models.FrontEnd
@using Co3.Espresso.Website.Models.FrontEnd.Elements
@using Co3.Espresso.Website.Models.FrontEnd.Paragraphs
@using EnergiViborg.CustomModules.FirstAgenda
@inherits Co3.Espresso.Website.TemplateBases.Paragraphs.ImageTextTopBottom
@{
var firstAgendaSecret = Espresso.Item.ClientSecret;
var firstAgendaID = Espresso.Item.ClientID;
var firstAgendaOrganizationUID = Espresso.Item.OrganizationUID;
var currentUrl = Pageview.SearchFriendlyUrl.ToString();
var currentRawUrl = HttpContext.Current.Request.RawUrl;
var meetingLink = Espresso.Item.LinkToMeeting;
var itemComitteeUid = Espresso.Item.CommitteeUid.ToString();
var currentYear = DateTime.Now;
List<Meeting> rawMeetings = FirstAgendaService.GetMeetingsByCommittee(itemComitteeUid.ToString());
var meetings = rawMeetings.Where(m => m.MinutesOfMeeting == true && m.ReleasedDate > m.MeetingEndUtc).ToList();
var usedMeetingYears = new List<string>();
var selectedYear = HttpContext.Current.Request.QueryString["agendaMeetingBeginFrom"];
var translateText = Translate("REFERATER - ÅR") + " ";
}
<div class="p-accordion-lead">
@Espresso.Text.Raw
@if (!string.IsNullOrEmpty(itemComitteeUid) && meetings.Count > 0)
{
<div class="dropdown mb-2">
<button class="btn btn-secondary dropdown-toggle dropdown-right referater-year-dropdown" type="button" id="dropdownMenu2" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
@if (!string.IsNullOrEmpty(selectedYear))
{
@translateText @selectedYear
}
else
{
selectedYear = meetings.Last(x => x.MinutesOfMeeting).MeetingBeginFromUtc.ToString("yyyy");
@translateText @selectedYear
}
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenu2">
<ul class="nav">
@foreach (var meeting in meetings.OrderByDescending(x => x.MeetingBeginFromUtc.Date))
{
bool isMinuteofMeeting = meeting.MinutesOfMeeting;
if (!usedMeetingYears.Contains(meeting.MeetingBeginFromUtc.ToString("yyyy")))
{
usedMeetingYears.Add(meeting.MeetingBeginFromUtc.ToString("yyyy"));
<li class="dropdown-item nav-item">
<a onclick="window.location.search = '?sortDirection=1' + '&agendaMeetingBeginFrom=' + @meeting.MeetingBeginFromUtc.ToString("yyyy")" class="nav-link @meeting.AgendaUid">
<span class="e-nav-pagename ">@meeting.MeetingBeginFromUtc.ToString("yyyy")</span>
</a>
</li>
}
}
</ul>
</div>
</div>
}
</div>
<br />
<div class="@Espresso.Container.ClassList pl-0" id="@Espresso.Id">
@if (!string.IsNullOrEmpty(selectedYear))
{
foreach (var meeting in meetings.Where(x => x.MeetingBeginFromUtc.ToString("yyyy") == selectedYear).OrderByDescending(x => x.MeetingBeginFromUtc.Date))
{
//var link = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(GetString("Item.LinkToMeeting.Url"));
var link = GetString("Item.LinkToMeeting.Url");
var queryString = "?agendaUid=" + meeting.AgendaUid;
var minuesofMeeting = meeting.MinutesOfMeeting;
var releasedDate = meeting.ReleasedDate;
var meetingEndUtc = meeting.MeetingEndUtc;
<ul class="list-group list-group-horizontal mt-0">
<a href="@link @queryString" class="text-decoration-none">
<li class="list-group-item d-flex justify-content-between align-items-center list-group-item-action bg-light">
@meeting.Name
<span>@meeting.MeetingBeginFromUtc.ToString("dd.MM.yyyy")</span>
</li>
</a>
</ul>
}
}
else
{
@*@meetings.Last(x => x.MinutesOfMeeting).MeetingBeginFromUtc.ToString("yyyy")*@
foreach (var meeting in meetings.Where(x => x.MinutesOfMeeting && x.MeetingBeginFromUtc.Year.ToString() == selectedYear).OrderByDescending(x => x.MeetingBeginFromUtc.Date))
{
var link = GetString("Item.LinkToMeeting.Url");
var queryString = "?agendaUid=" + meeting.AgendaUid;
var minuesofMeeting = meeting.MinutesOfMeeting;
var releasedDate = meeting.ReleasedDate;
var meetingEndUtc = meeting.MeetingEndUtc;
<ul class="list-group list-group-horizontal mt-0">
<a href="@link @queryString" class="text-decoration-none">
<li class="list-group-item d-flex justify-content-between align-items-center list-group-item-action bg-light">
@meeting.Name
<span>@meeting.MeetingBeginFromUtc.ToString("dd.MM.yyyy")</span>
</li>
</a>
</ul>
}
}
</div>
<style>
.referater-year-dropdown::after {
display: inline-block;
width: 0;
height: 0;
margin-left: .31875em;
content: "";
border-bottom: 0;
margin-right: 0;
vertical-align: .0000em !important;
border-top: 0.750em solid !important;
border-right: .750em solid transparent !important;
border-left: .750em solid transparent !important;
}
</style>