Error executing template "Designs/Fjordgaarden/Dw_page/../Partials/Navigation.cshtml"
System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired. The timeout period elapsed during the post-login phase. The connection could have timed out while waiting for server to complete the login process and respond; Or it could have timed out while attempting to create multiple active connections. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=0; handshake=7563; [Login] initialization=0; authentication=0; [Post-Login] complete=7256;
---> System.ComponentModel.Win32Exception (258): The wait operation timed out.
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.Open()
at Dynamicweb.Data.DatabaseConnectionProvider.CreateConnection(Boolean open)
at Dynamicweb.Data.Database.CreateConnection()
at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder, IDbConnection connection, IDbTransaction transaction, Int32 commandTimeout)
at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder)
at Dynamicweb.Content.Items.ItemList.GetItemListById(Int32 id)
at Dynamicweb.Content.Items.Editors.ItemRelationListEditor.GetItems(Object value)
at Dynamicweb.Content.Items.Editors.ItemRelationListEditor.GetViewModelValue(Object value)
at Dynamicweb.Content.Items.Editors.Editor.GetViewModelValue(Object value, ItemField field)
at Dynamicweb.Frontend.ContentViewModelFactory.GetValue(ItemField field, Item item, Object value)
at Dynamicweb.Frontend.ContentViewModelFactory.<>c__DisplayClass16_0.<CreateItemFieldViewModel>g__modelValueFactory|0()
at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
--- End of stack trace from previous location ---
at System.Lazy`1.CreateValue()
at Dynamicweb.Frontend.ItemViewModel.GetItems(String systemName)
at CompiledRazorTemplates.Dynamic.RazorEngine_5ab6b644296945edaf907fc800563eba.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.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer)
at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, 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()
ClientConnectionId:1b906655-b14c-4bd9-a55f-814553e15a36
Error Number:-2,State:0,Class:11
1 @using Dynamicweb.Content
2 @using Dynamicweb.Ecommerce.International
3 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.Navigation.NavigationTreeViewModel>
4 @using Dynamicweb.VestjyskMarketing.Helpers
5 @using Dynamicweb.VestjyskMarketing.Models
6
7 @{
8 var areaService = new AreaService();
9 var pageService = new PageService();
10 var area = Pageview.AreaSettings;
11 var backgroundImage = "";
12 var backgroundImageMobile = "";
13 if (Pageview.Area.Item["NavigationBackgroundImage"] != null)
14 {
15 backgroundImage = Pageview.Area.Item["NavigationBackgroundImage"].ToString();
16
17
18 backgroundImage = ImageHelper.ResizeImage(new ResizeImageSettings
19 {
20 Image = backgroundImage,
21 Width = 750,
22 Height = 750,
23 Quality = 99,
24 Format = "webP"
25 });
26 }
27
28 if (Pageview.Area.Item["NavigationBackgroundImageMobile"] != null)
29 {
30
31 backgroundImageMobile = Pageview.Area.Item["NavigationBackgroundImageMobile"].ToString();
32
33
34 backgroundImageMobile = ImageHelper.ResizeImage(new ResizeImageSettings
35 {
36 Image = backgroundImageMobile,
37 Width = 750,
38 Height = 750,
39 Quality = 99,
40 Format = "webP"
41 });
42 }
43 }
44
45 <div id="navigation" class="h-100 w-100 navigation-container position-fixed">
46 <img loading="lazy" class="position-absolute navigation-container__background-image d-none d-lg-block" alt="navigation background" src="@backgroundImage"/>
47 <img loading="lazy" class="position-absolute navigation-container__background-image d-block d-lg-none" alt="navigation background" src="@backgroundImageMobile"/>
48 <a id="navigationCloseButton" href="javascript:void(0)" class="navigation-container__close-container position-absolute d-flex ">
49 <img loading="lazy" alt="navigation close" style="height: 50px;" class="navigation-container__close-container__close" src="/Files/Images/Ikoner/svgs/light/xmark.svg">
50 </a>
51
52 <!-- Regular navigation -->
53 <div id="navigation-regular" class="navigation-section" style="display: none">
54 <div class="navigation-container__row-container position-absolute w-100 ">
55 @* Uppermost pages *@
56 <div class="navigation-container__row-container__parent position-absolute top-50 translate-middle-y">
57 @foreach (var node in Model.Nodes)
58 {
59 //If page has a shortcut, use the shortcut as link instead
60 var page = pageService.GetPage(node.PageId);
61 var parentLink = "javascript:void(0)";
62 bool noChildren = false;
63
64 if (!string.IsNullOrEmpty(page.ShortCut))
65 {
66 parentLink = page.ShortCut;
67 noChildren = true;
68 }
69
70 <a data-id="@node.PageId" class="text-decoration-none navigation-container__row-container__parent__button d-block @(noChildren ? "no-children" : "")" href="@parentLink">
71 <div class="navigation-container__row-container__parent__button__text navigation-container__row-container__title dalafloda">@node.Name</div>
72 </a>
73
74 @* Childpages *@
75 <div data-id="@node.PageId" class="position-absolute navigation-container__row-container__child-container ">
76
77 @foreach (var childPage in node.Nodes)
78 {
79 var _childpage = pageService.GetPage(childPage.PageId);
80 bool hasShortCut = !string.IsNullOrEmpty(_childpage.ShortCut);
81 var target = hasShortCut ? "_blank" : "_self";
82
83 var childLink = "/Default.aspx?ID=" + childPage.PageId;
84 <a href="@childLink" target="@target" class="navigation-container__row-container__child-container__child">@childPage.Name</a>
85 }
86
87 <a href="javascript:void(0)" class="navigation-container__row-container__child-container__arrow bi bi-arrow-left d-block d-lg-none"></a>
88 </div>
89 }
90 </div>
91 </div>
92 </div>
93
94 <!-- Booking -->
95 @{
96 var bookingItems = area.GetItems("BookingNavigationItems");
97 }
98 <div style="display: none" id="navigation-booking" class="navigation-container__booking navigation-section navigation-container__row-container navigation-container__row-container--booking position-absolute top-50 translate-middle-y">
99 <div class="top-50 translate-middle-y position-absolute">
100 <div class="navigation-container__booking__text text-white text-uppercase mb-4">Book</div>
101 @foreach (var item in bookingItems)
102 {
103 var text = item.GetString("Text");
104 var link = item.GetString("Link");
105
106 <a class="text-decoration-none navigation-container__row-container__parent__button" href="@link">
107 <div class="navigation-container__row-container__parent__button__text text-white mt-3 dalafloda">@text</div>
108 </a>
109 }
110 </div>
111 </div>
112
113 <!-- Social media & languages -->
114 @{
115 var icons = area.GetItems("SoMeIcons");
116 }
117
118 <div class="navigation-container__some-lang-container d-flex justify-content-between justify-content-lg-end flex-row-reverse position-absolute flex-lg-row">
119 <div class="navigation-container__some-lang-container__some-container">
120 <div class="navigation-container__some-lang-container__some-container__header text-white text-uppercase mb-1">
121 @Translate("Follow us")
122 </div>
123 <div class="navigation-container__some-lang-container__some-container__icon-container d-flex">
124 @foreach (var icon in icons)
125 {
126 var iconClass = icon.GetString("Icon");
127 var iconLink = icon.GetString("Link");
128
129 <a class="navigation-container__some-lang-container__some-container__icon-container__icon" href="@iconLink" target="_blank">
130 <img loading="lazy" alt="some" class="icon icon--big" src="@icon.GetString("Icon") "/>
131 </a>
132 }
133 </div>
134 </div>
135
136 <div class="navigation-container__some-lang-container__lang-container ms-0 ms-lg-5 d-flex">
137
138 @{
139 var areas = areaService.GetAreas().Where(x => x.Published);
140
141 foreach (var currentArea in areas)
142 {
143 var nativeName = currentArea.CultureInfo.NativeName.Split(" ")[0];
144 var countryCode = currentArea.CultureInfo.ThreeLetterWindowsLanguageName;
145 var src = "/Files/Images/LanguageIcons/" + countryCode + ".svg";
146
147 var firstPage = "Default.aspx?ID=" + pageService.GetFirstPageForArea(currentArea.ID).ID;
148
149 <a href="@firstPage" class="me-3 d-flex flex-column navigation-container__some-lang-container__lang-container__flag-container text-decoration-none justify-content-between">
150
151 <img loading="lazy" src="@src" class="flex-column mb-2 navigation-container__some-lang-container__lang-container__flag-container__flag"/>
152 <div class="navigation-container__some-lang-container__lang-container__flag-container__text text-white text-uppercase">@nativeName</div>
153
154 </a>
155 }
156 }
157
158 </div>
159 </div>
160 </div>
Error executing template "Designs/Fjordgaarden/Paragraph/Boxes.cshtml"
System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired. The timeout period elapsed during the post-login phase. The connection could have timed out while waiting for server to complete the login process and respond; Or it could have timed out while attempting to create multiple active connections. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=0; handshake=7563; [Login] initialization=0; authentication=0; [Post-Login] complete=7256;
---> System.ComponentModel.Win32Exception (258): The wait operation timed out.
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.Open()
at Dynamicweb.Data.DatabaseConnectionProvider.CreateConnection(Boolean open)
at Dynamicweb.Data.DatabaseConnectionProvider.CreateConnection()
at Dynamicweb.Data.DatabaseProvider.CreateConnection()
at Dynamicweb.Data.Database.CreateConnection()
at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder, IDbConnection connection, IDbTransaction transaction, Int32 commandTimeout)
at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder)
at Dynamicweb.Content.Items.Queries.Repository.SelectInternal(IEnumerable`1 ids, Query query)
at Dynamicweb.Content.Items.Queries.Repository.SelectByIds(IEnumerable`1 ids, Query query, Boolean checkPermissions, Boolean includeInheritedItems)
at Dynamicweb.Content.Items.Queries.Repository.SelectByIds(IEnumerable`1 ids, Query query, Boolean checkPermissions)
at Dynamicweb.Content.Items.Queries.Repository.SelectByIds(IEnumerable`1 ids, Query query)
at Dynamicweb.Content.Items.Queries.Repository.SelectById(String id, Query query)
at Dynamicweb.Content.Items.Queries.Repository.SelectById(String id)
at Dynamicweb.Content.Items.Queries.StorageManager.GetById(String systemName, String id)
at Dynamicweb.Content.Items.Queries.StorageManager.GetByIds(String systemName, IEnumerable`1 ids)
at Dynamicweb.Content.Items.ItemList.get_Relations()
at Dynamicweb.Content.Items.Editors.ItemRelationListEditor.GetItems(Object value)
at Dynamicweb.Content.Items.Editors.ItemRelationListEditor.GetViewModelValue(Object value)
at Dynamicweb.Content.Items.Editors.Editor.GetViewModelValue(Object value, ItemField field)
at Dynamicweb.Frontend.ContentViewModelFactory.GetValue(ItemField field, Item item, Object value)
at Dynamicweb.Frontend.ContentViewModelFactory.<>c__DisplayClass16_0.<CreateItemFieldViewModel>g__modelValueFactory|0()
at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
--- End of stack trace from previous location ---
at System.Lazy`1.CreateValue()
at Dynamicweb.Frontend.ItemViewModel.GetItems(String systemName)
at CompiledRazorTemplates.Dynamic.RazorEngine_5267fdbe9052496f886505f4f32c1b1b.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.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer)
at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, 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()
ClientConnectionId:1b906655-b14c-4bd9-a55f-814553e15a36
Error Number:-2,State:0,Class:11
1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel>
2 @using Dynamicweb.Frontend
3 @using Dynamicweb.Frontend.Devices
4 @using Dynamicweb.VestjyskMarketing.Helpers
5 @using Dynamicweb.VestjyskMarketing.Models
6 @using Extensibility.Helpers
7 @using Dynamicweb.Content
8
9 @{
10 var boxes = Model.Item.GetItems("Boxes");
11 var boxesSystem = Model.Item.GetItems("BoxesSystem");
12 List<ItemViewModel> totalBoxes = new List<ItemViewModel>();
13 var colSize = 0;
14 var boxesAmount = 0;
15 var isMobile = Pageview.Device == Dynamicweb.Frontend.Devices.DeviceType.Mobile;
16
17 if (boxes != null || boxesSystem != null)
18 {
19 if (boxes != null)
20 {
21 foreach (var box in boxes)
22 {
23 totalBoxes.Add(box);
24 }
25 }
26 if (boxesSystem != null)
27 {
28 foreach (var box in boxesSystem)
29 {
30 totalBoxes.Add(box);
31 }
32 }
33
34 //Takes all boxes without BoxLocation empty first, sorts them and then adds boxes with empty BoxLocation, so that they get appended at the end of the list
35 totalBoxes = new BoxesHelper().GetSortedBoxes(totalBoxes);
36
37 @if (totalBoxes != null)
38 {
39 boxesAmount = totalBoxes.Count;
40 @if (boxesAmount > 0)
41 {
42 colSize = 12 / boxesAmount;
43 var enableCarousel = boxesAmount > 3;
44
45 <div class="boxes-container col-12 d-flex flex-wrap @(enableCarousel && !isMobile ? "boxes-carousel " : "")">
46 <div class="@(enableCarousel && !isMobile ? "swiper-wrapper" : "w-100 h-100 d-flex flex-wrap") ">
47 @foreach (var box in totalBoxes)
48 {
49 var topText = box.GetString("TopText");
50 var header = box.GetString("Header");
51 var headerSmall = box.GetString("HeaderSmall");
52 var image = "";
53 var video = "";
54 var useVideo = false;
55 var advancedImage = box.GetItem("AdvancedImage");
56 var imageAlt = "";
57 var imageStyle = "";
58 bool disableZoom = box.GetBoolean("DisableZoom");
59
60 if (advancedImage != null)
61 {
62 image = advancedImage.GetString("Image");
63 imageAlt = advancedImage.GetString("ImageAlt");
64 video = advancedImage.GetString("Video");
65 useVideo = advancedImage.GetBoolean("UseVideo");
66
67 var advancedImageHelper = new AdvancedImageHelper();
68 imageStyle = advancedImageHelper.GetStyles(advancedImage, Pageview.Device);
69 }
70
71 var buttons = box.GetItems("Buttons");
72 var priceText = box.GetString("PriceText");
73 var price = box.GetString("Price");
74 var priceClass = "justify-content-center";
75 var globalPrice = box.GetString("GlobalPrice");
76
77 if (!string.IsNullOrEmpty(globalPrice))
78 {
79 var pageService = new PageService();
80 var boxPage = pageService.GetPage(int.Parse(globalPrice));
81 if (boxPage.Item != null)
82 {
83 if (boxPage.ItemType == "Box")
84 {
85 var itemId = boxPage.Item.Id;
86 var item = Dynamicweb.Content.Items.Item.GetItemById(boxPage.ItemType, itemId);
87 price = item["Price"].ToString();
88 }
89 }
90 }
91
92 bool priceIsNotEmpty = !string.IsNullOrEmpty(priceText) && !string.IsNullOrEmpty(price);
93
94 if (priceIsNotEmpty)
95 {
96 priceClass = "justify-content-between";
97 }
98
99 var zoomClass = "box-zoom";
100
101 if (disableZoom)
102 {
103 zoomClass = "";
104 }
105
106 if (!useVideo)
107 {
108 if (isMobile)
109 {
110 image = ImageHelper.ResizeImage(new ResizeImageSettings
111 {
112 Image = image,
113 Width = 2500,
114 Height = 2500,
115 Quality = 80,
116 Format = "webP"
117 });
118 }
119 else
120 {
121 image = ImageHelper.ResizeImage(new ResizeImageSettings
122 {
123 Image = image,
124 Width = 5000,
125 Height = 5000,
126 Quality = 15,
127 Format = "webP"
128 });
129 }
130 }
131
132 bool englishArea = Pageview.AreaID != 1;
133
134 if (price.Contains("kr.") && englishArea)
135 {
136 price = price.Replace("kr.", "DKK");
137 }
138
139 var isContentEmpty = string.IsNullOrEmpty(header) && string.IsNullOrEmpty(headerSmall) && string.IsNullOrEmpty(priceText) && string.IsNullOrEmpty(price) && buttons.Count == 0;
140 var isOnlyOneButton = buttons.Count == 1;
141
142 <div class="box-container col-12 col-lg-@colSize @zoomClass @(enableCarousel && !isMobile ? "swiper-slide" : "box-border-right")">
143
144 @if (isOnlyOneButton)
145 {
146 <a href="@buttons.First().GetString("Link")">
147 <div class="box-container__media-container box-container__media-container--@colSize overflow-hidden @(colSize == 6 && isContentEmpty ? "content-empty" : "")">
148 @if (useVideo)
149 {
150 <video class="w-100 h-100" autoplay loop muted playsinline style="@imageStyle" disablepictureinpicture>
151 <source src="@video" type="video/mp4">
152 </video>
153 }
154 else
155 {
156 <img loading="lazy" style="@imageStyle" alt="@imageAlt" class="w-100 h-100" src="@image" />
157 }
158 </div>
159 </a>
160 }
161 else
162 {
163 <div class="box-container__media-container box-container__media-container--@colSize overflow-hidden @(colSize == 6 && isContentEmpty ? "content-empty" : "")">
164 @if (useVideo)
165 {
166 <video class="w-100 h-100" autoplay loop muted playsinline style="@imageStyle" disablepictureinpicture>
167 <source src="@video" type="video/mp4">
168 </video>
169 }
170 else
171 {
172 <img loading="lazy" style="@imageStyle" alt="@imageAlt" class="w-100 h-100" src="@image" />
173 }
174 </div>
175 }
176
177
178
179 <div class="box-container__top-text position-absolute text-white fw-bold text-uppercase translate-middle-x">
180 @topText
181 </div>
182 <div class="box-container__header-container w-100">
183 <div class="box-container__header-container__header box-container__header-container__header--@colSize dalafloda">@header</div>
184 <div class="box-container__header-container__header-small">@headerSmall</div>
185 </div>
186 <div class="box-container__button-price-container d-flex w-100 @priceClass">
187
188 @if (priceIsNotEmpty)
189 {
190 <div class="box-container__button-price-container__price-container d-flex flex-column w-100 justify-content-end">
191 <div class="box-container__button-price-container__price-container__text">@priceText</div>
192 <div class="box-container__button-price-container__price-container__price dalafloda">@price</div>
193 </div>
194 }
195
196 @if (buttons != null)
197 {
198 var justifyClass = "justify-content-center";
199 var buttonWidth = "width: auto";
200
201 if (priceIsNotEmpty)
202 {
203 justifyClass = "justify-content-end";
204 }
205 else if (isMobile)
206 {
207 buttonWidth = "width: inherit";
208 }
209
210 <div class="box-container__button-price-container__button-container d-flex align-items-end w-100 @justifyClass flex-column flex-lg-row">
211
212 @{
213 var buttonIndex = 1;
214 }
215
216 @foreach (var button in buttons)
217 {
218 var icon = button.GetString("Icon");
219 var text = button.GetString("Text");
220
221 var buttonMarginClass = "mb-0";
222
223 if (buttonIndex != buttons.Count)
224 {
225 buttonMarginClass = "mb-3";
226 }
227
228 <a href="@button.GetString("Link")" style="@buttonWidth" class="fn-button align-items-end @buttonMarginClass mb-lg-0 ">
229
230 @if (!string.IsNullOrEmpty(icon))
231 {
232 <img loading="lazy" class="icon icon " alt="icon" src="@icon" />
233 }
234
235 @if (string.IsNullOrEmpty(text))
236 {
237 @header
238 }
239 else
240 {
241 @text
242 }
243 </a>
244
245 buttonIndex++;
246 }
247
248 </div>
249 }
250
251 </div>
252 </div>
253 }
254
255 </div>
256 @if (enableCarousel && !isMobile)
257 {
258 <img loading="lazy" alt="boxes venstre" class="boxes__left boxes__arrow" src="/Files/Images/Ikoner/svgs/regular/arrow-left-long.svg" />
259 <img loading="lazy" alt="boxes højre" class="boxes__right boxes__arrow" src="/Files/Images/Ikoner/svgs/regular/arrow-right-long.svg" />
260 }
261 </div>
262 }
263 }
264 }
265 }
@hotelfjordgaarden