Error executing template "Designs/Tapas/Forms/Form/CourseSignupForm.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
at CompiledRazorTemplates.Dynamic.RazorEngine_298190f6a2dc4067beca80d30e9b4f42.Execute() in E:\Websites\elma.LIVE\Files\Templates\Designs\Tapas\Forms\Form\CourseSignupForm.cshtml:line 18
at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, 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 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>>
2 @{
3
4 // Allowing user to decide panel colors (primary, secondary, white (no color), and default) in webside settings
5 string cssClass = Dynamicweb.Core.Converter.ToString(Pageview.Area.Item["GlobalPanelClass"]);
6 string formAction = Dynamicweb.Core.Converter.ToString(Pageview.Area.Item["CoursePageID"]);
7 string formOnSubmit = GetString("Form.OnSubmit");
8 string formCssClass = GetString("Form.CssClass");
9 string formSystemFields = GetString("Form.SystemFields");
10 bool formLabelBold = GetBoolean("Form.LabelBold");
11 bool formLabelOverField = GetBoolean("Form.LabelOverField");
12 string formId = GetString("Form.HtmlId");
13 int formColumnShiftFormFieldID = GetInteger("Form.ColumnShiftFormFieldID");
14 string formLabelRequired = GetString("Form.LabelRequired");
15
16 int formMaxSubmits = GetInteger("Form.MaxSubmits");
17 int formSubmitCount = GetInteger("Form.SubmitCount");
18 string itemid = System.Web.HttpContext.Current.Request.QueryString["itemId"].ToString();
19 string columnCssClass = formColumnShiftFormFieldID > 0 ? "col-sm-6" : "col-sm-12";
20 var splitteditem = itemid.Split(':');
21 var item = Dynamicweb.Content.Items.ItemManager.Storage.GetById(splitteditem[0], splitteditem[1]);
22 }
23
24
25 @helper RenderFields(LoopItem field, Dynamicweb.Content.Items.Item item)
26 {
27
28 string fieldHtmlId = field.GetString("Field.HtmlId");
29 string fieldName = field.GetString("Field.Name");
30 string fieldControl = field.GetString("Field.Control");
31 string fielsCssClasses = field.GetString("Field.CssClass");
32 string fieldType = field.GetString("Field.Type");
33 bool fieldIsButton = field.GetBoolean("Field.IsButton");
34 bool fieldIsOther = field.GetBoolean("Field.IsOther");
35 bool fieldRequired = field.GetBoolean("Field.Required");
36 string fieldDescription = field.GetString("Field.Description");
37
38
39 <div class="form-group">
40 @if (fieldControl.Contains("textarea"))
41 {
42 <textarea rows="8" id="@fieldHtmlId" name="@fieldHtmlId" class="@fielsCssClasses" @fieldRequired placeholder='@Translate("Firstweb.Content.Course.Signup.CommentFieldPlaceholder", "Indtast dine kommentarer")'></textarea>
43 }
44 else if (!fieldIsButton && !fieldIsOther)
45 {
46 if (fieldName == "Postnummer")
47 {
48 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
49 <script type="text/javascript">
50 $('document').ready(function () {
51 var zipcodefield = $("#Postnummer");
52 var cityField = $("#By");
53 zipcodefield.blur(function () {
54 $.get("/Handlers/Firstweb.ERP.Users.ashx?cmd=getcity&zipcode=" + zipcodefield.val(), function (data) {
55 cityField.val(data.Data);
56 });
57 });
58 });
59 </script>
60 }
61
62 if (fieldDescription == "Kursus")
63 {
64 <script type="text/javascript">
65 $('document').ready(function () {
66 var kursusfield = $(".js-course-field input");
67 kursusfield.val('@item["CourseName"].ToString()');
68 });
69 </script>
70 }
71 if (fieldDescription == "Dato")
72 {
73 var date = Convert.ToDateTime(item["StartDate"].ToString());
74 <script type="text/javascript">
75 $('document').ready(function () {
76 var datofield = $(".js-date-field input");
77 datofield.val('@date.ToString("dd-MM-yyyy")');
78 });
79 </script>
80 }
81 if (fieldDescription == "Kursus")
82 {
83 <div class="js-course-field">
84 @fieldControl
85 </div>
86 }
87 else if (fieldDescription == "Dato")
88 {
89 <div class="js-date-field">
90 @fieldControl
91 </div>
92 }
93 else if (fieldType == "Radio") {
94 <h5 class="padding-top-half" style="display:flex;width:100%;">@field.GetString("Field.Description")</h5>
95 foreach(var option in field.GetLoop("Options")) {
96 <label class="bs-label" style="display:flex;width:100%;padding-top:10px;" for="Sertifisering@(option.GetString("Option.ID"))">
97 <input type="radio" class="checkbox-field bs" style="margin-right:5px;" id="Sertifisering@(option.GetString("Option.ID"))" name="Sertifisering@(option.GetString("Option.FieldID"))" value="@option.GetString("Option.Value")" required>
98 <span class="checkbox-text">@option.GetString("Option.Text")</span>
99 </label>
100 }
101 }
102 else
103 {
104 @fieldControl
105 }
106 }
107 else if (fieldIsButton)
108 {
109 <input type="submit" id="@fieldHtmlId" name="@fieldName" class="hidden-xs btn btn-primary" @fieldRequired value='@Translate("Firstweb.Content.Course.Signup.Submit", "Tilmeld -") @RenderSnippet("RenderSubmitButtonName")' />
110 }
111 </div>
112 }
113
114 @{
115 if (formMaxSubmits > 0 && formSubmitCount >= formMaxSubmits)
116 {
117 @GetString("Form.MaxSubmitsReachedText")
118 }
119 else
120 {
121 bool beforeColumnSwitch = true;
122 <article>
123 <div class="row">
124 <div class="col-xs-12 col-md-6 col-md-push-3">
125 <h1 class="clearfix line-bottom line-bottom--dark">@Translate("Firstweb.Content.Courses.SignupForm.Signup", "Tilmelding")</h1>
126 <p style="margin-bottom: 20px;">@Translate("Firstweb.Content.Courses.SignupForm.Disclaimer", "Tilmelding vil ske efter ”først-til-mølle” princippet. Bekræftelse og nærmere information bliver tilsendt efter tilmelding.")</p>
127 </div>
128
129 <form method="post" action="/Default.aspx?ID=@formAction" enctype="multipart/form-data" class="default-form @formCssClass" id="@formId" onsubmit="@formOnSubmit">
130
131 @* Removing DW Sys to email field *@
132 @formSystemFields.Replace("_sys_to_email", "")
133
134 <div class="row">
135 <div class="@columnCssClass">
136
137 @foreach (LoopItem field in GetLoop("Fields"))
138 {
139
140 int fieldId = field.GetInteger("Field.ID");
141
142 if (fieldId != formColumnShiftFormFieldID && beforeColumnSwitch)
143 {
144 @RenderFields(field, item)
145 }
146 else
147 {
148 if (beforeColumnSwitch)
149 {
150 beforeColumnSwitch = false;
151 }
152 @SnippetStart("NewColumnShift")
153 @RenderFields(field, item)
154 @SnippetEnd("NewColumnShift")
155 }
156 }
157 </div>
158 @if (formColumnShiftFormFieldID > 0)
159 {
160 <div class="col-sm-6">
161 @RenderSnippet("NewColumnShift")
162 </div>
163 }
164 </div>
165 <input type="submit" class="visible-xs btn btn-primary mobile-full-width" value='@Translate("Firstweb.Content.Course.Signup.Submit", "Tilmeld -") @RenderSnippet("RenderSubmitButtonName")' />
166 </form>
167 </div>
168 </article>
169 }
170 }