Error executing template "Designs/Fusion/_parsed/Content.parsed.cshtml"
System.Data.SqlClient.SqlException (0x80131904): Transaction (Process ID 278) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryHasMoreRows(Boolean& moreRows)
at System.Data.SqlClient.SqlDataReader.TryReadInternal(Boolean setTimeout, Boolean& more)
at System.Data.SqlClient.SqlDataReader.Read()
at Dynamicweb.Ecommerce.Products.ProductRepository.GetProductsBySql(CommandBuilder query, Boolean doRefactoring, Boolean bulkFill, Boolean useAssortments)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.TryAddProducts(GroupNavigationItem groupItem, Group group, Int32 currentLevel, Int32 maxLevel, Page productPage, Page currentPage)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.MakeGroupTree(IEnumerable`1 groups, Page page, NavigationItem parentNode, Int32 thisLevel, Int32 maxLevel, Page productPage)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.MakeGroupTree(IEnumerable`1 groups, Page page, NavigationItem parentNode, Int32 thisLevel, Int32 maxLevel, Page productPage)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.MakeGroupTree(Page page, NavigationItem parentNode)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.Process(NavigationItem node)
at Dynamicweb.Ecommerce.Frontend.NavigationProviders.GroupNavigationProvider.ProcessTree(RootNavigationItem rootNode, NavigationType navigationType)
at Dynamicweb.Frontend.XmlNavigation.MakeXml(Int32 parentId, Int32 levelStart, Int32 levelStop, Expand expand, Int32 selectedAreaId)
at Dynamicweb.Frontend.XmlNavigation.GetNavigationHtml(Int32 parentId, Int32 levelStart, Int32 levelStop, Expand expand, String name, String xsltPath, Int32 selectedAreaId, Boolean sitemapMode, NameValueCollection settings, NameValueCollection attributes, IncludeMode mode)
at Dynamicweb.Frontend.XmlNavigation.GetNavigationHtml(NameValueCollection settings, NameValueCollection attributes)
at CompiledRazorTemplates.Dynamic.RazorEngine_28d827a027874ab6b24a85a0041504a0.Execute() in C:\Sites\www.austral.ro\Files\Templates\Designs\Fusion\_parsed\Content.parsed.cshtml:line 417
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()
ClientConnectionId:06660ee9-94c9-4bb3-896a-a7c5b0ceec5b
Error Number:1205,State:51,Class:13
1 @inherits RazorTemplateBase<RazorTemplateModel<Template>>
2 @using Dynamicweb.Rendering;
3 @using System.Text.RegularExpressions;
4 @using System.Web;
5 @using Dynamicweb.Environment;
6
7 @helper RenderScripts(string location)
8 {
9 //possible location values: header, body, footer;
10 //posible scope: tracking, marketing, preferences, functional;
11 //possible cookie option values;
12 //no cookies = 0;
13 //functional only=1;
14 //all=2;
15 //marketing = 3;
16 //tracking = 4;
17 //preferences = 5;
18 //Item.Area.Tracking.Code;
19 //Item.Area.Tracking.Location;
20 //Item.Area.Tracking.Scope;
21 //cookie=Dynamicweb.CookieOptInLevel;
22 //Functional;
23 //None;
24 //All;
25 CookieOptInLevel level = CookieManager.GetCookieOptInLevel();
26 int x = (int)level;
27 string[] allowedFunctional = {"functional"};
28 string[] allowedTracking = {"functional","tracking"};
29 string[] allowedMarketing = {"functional","marketing","tracking"};
30 string[] allowedScope = {"functional"};
31 switch(x)
32 {
33 case 0:
34 allowedScope = allowedFunctional;
35 break;
36 case 1:
37 allowedScope = allowedTracking;
38 break;
39 case 2:
40 allowedScope = allowedMarketing;
41 break;
42 default:
43 allowedScope = allowedFunctional;
44 break;
45 }
46
47 if(!string.IsNullOrEmpty(location) && x > 0){
48 var trackingScripts = GetLoop("Item.Area.Tracking").Where(a=>a.GetString("Item.Area.Tracking.Location") == location);
49 trackingScripts = trackingScripts.Where(z=>allowedScope.Any(y=>y == z.GetString("Item.Area.Tracking.Scope")));
50 foreach(var trackingScript in trackingScripts){
51 <text>@trackingScript.GetString("Item.Area.Tracking.Code")</text>
52 }
53 }
54
55
56 }
57
58
59 @functions {
60 private string CommaSplittedString(string CommaSplittedString, string NewString)
61 {
62
63 if (!string.IsNullOrEmpty(CommaSplittedString))
64 {
65 CommaSplittedString += ", ";
66 }
67 CommaSplittedString = NewString;
68
69 return CommaSplittedString;
70 }
71 public static string StripHtml(string source)
72 {
73 return Regex.Replace(source, "<.*?>", string.Empty);
74 }
75
76
77
78
79
80
81
82
83 }
84 <!DOCTYPE html>
85 <!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
86 <!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
87 <!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
88 <!--[if gt IE 8]> <html class="no-js"> <![endif]-->
89
90 <head>
91 <link rel="preconnect" href="https://fonts.googleapis.com">
92 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
93 @using Dynamicweb;
94 @using Dynamicweb.Ecommerce.Products;
95 @using Dynamicweb.Security.UserManagement;
96 @using Dynamicweb.Modules.UserManagement;
97 @using Dynamicweb.Frontend;
98 @using System.Web;
99 @using System;
100 @{
101 var serviceLocator = Dynamicweb.Extensibility.ServiceLocator.Current;
102 var pageService = serviceLocator.GetInstance<Dynamicweb.Content.IPageService>();
103
104 var DisplayOptions = "";
105
106 if (!string.IsNullOrEmpty(GetGlobalValue("Global:Item.Page.DisplayOptions").ToString())){
107 DisplayOptions = (GetGlobalValue("Global:Item.Page.DisplayOptions").ToString() == "wide") ? "container-wide" : "";
108 }
109 var pageURL = "/Default.aspx?" + System.Web.HttpContext.Current.Request.QueryString;
110 string b2cPageRedirect = "/Default.aspx?ID=4626";
111 var currentPageID = GetGlobalValue("Global:Page.ID");
112
113 var currentUserAccess = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser();
114 var user = currentUserAccess;
115 var currentUser = currentUserAccess;
116 bool userIsLoggedIn = currentUser != null;
117
118 string customerNo = userIsLoggedIn ? currentUser.CustomerNumber : "";
119 bool isCS = userIsLoggedIn ? BrandFusion.Dw.Austral.eCommerce.UserExtensions.IsCs(currentUserAccess) : false;
120
121 if(userIsLoggedIn && customerNo == "" && !isCS && currentPageID != "4626" ){
122 HttpContext.Current.Response.Redirect(b2cPageRedirect, false);
123 }
124
125 @*var galleryType = Pageview.Area.Item["Gallery"];
126 var cartBehaviour = Pageview.Area.Item["CartBehaviour"];
127 var cart_page_id = Pageview.Area.Item["CartPage_ID"];*@
128
129 var area = PageView.Current().Area;
130
131 @*var galleryType = PageView.Current().Area.Item["Gallery"];
132 var cartBehaviour = PageView.Current().Area.Item["CartBehaviour"];
133 var cart_page_id = PageView.Current().Area.Item["CartPage_ID"];*@
134
135 @*var currentUser = Dynamicweb.Frontend.PageView.Current().User;
136 var currentUserAccess = Dynamicweb.Modules.UserManagement.User.GetCurrentUser();
137 var firstPageID = Pageview.Area.get_Value("AreaFirstPage");*@
138
139 //var firstPageID = Dynamicweb.Frontend.PageView.Current().Area.AreaFirstPage; //PageView.Current().Area.FirstPage;
140 var firstPageID = pageService.GetFirstPageForArea(area.ID);
141
142
143
144 string cartPage = "13";
145
146 //Rolul userului autentificat
147 int customerRole = -1;
148
149
150 //customer numberul userului autentificat
151 //string customerNo = currentUser.LoggedIn ? currentUser.CustomerNumber.ToString() : null;
152 //string customerNo = currentUserAccess != null ? currentUserAccess.CustomerNumber : null;
153
154 //Id-ul nodului parinte pentru navigatie
155 var navigationParentId = !string.IsNullOrEmpty(customerNo) ? 17 : 17;
156
157 //determina daca navigatia este colapsata sau este vizibila implicit
158 var navigationCollapsed = "category-collapsed";
159 if (!string.IsNullOrEmpty(GetString("Item.Page.DisplayOptions.Value"))){
160 navigationCollapsed = GetString("Item.Page.DisplayOptions.Value");
161 }
162
163 //determina fisierul XSLT folosit pentru randarea navigatiei
164 @*var navigationXSLT = !string.IsNullOrEmpty(customerNo) ? "CategoriesNavigationB2B.xslt" : "CategoriesNavigationB2B.xslt";
165 var navigationMobileXSLT = !string.IsNullOrEmpty(customerNo) ? "CategoriesNavigationMobileB2B-v2.xslt" : "CategoriesNavigationMobileB2B-v2.xslt";*@
166
167 //determina daca afisam navigatie pe coloana din stanga sau nu
168 var navigationColumn = 3;
169
170 //determina numarul de coloane al zonei de content
171 var navigationContent = 9;
172
173 //defineste obiect general de tip customer settings
174 //var customerSettings = !string.IsNullOrEmpty(customerNo) ? BrandFusion.Dw.Austral.eCommerce.CustomerFacade.Get(customerNo) : null;
175 var customerSettings = !string.IsNullOrEmpty(customerNo) ? BrandFusion.Dw.Austral.eCommerce.CustomerFacade.Get(customerNo,"aus") : null;
176
177 //Limita lunara totala pentru comenzi
178 var customerMonthlyLimit = customerSettings != null ? customerSettings.MonthlyBudget.GetValueOrDefault() : 0;
179
180 //Ziua de inceput pentru plasarea comenzilor
181 var customerOrderStart = customerSettings != null ? customerSettings.OrderStart.GetValueOrDefault() : 0;
182
183 //Ziua de sfarsit pentru plasarea comenzilor
184 var customerOrderEnd = customerSettings != null ? customerSettings.OrderEnd.GetValueOrDefault() : 0;
185
186 //Ziua de inceput pentru aprobarea comenzilor
187 var customerApprovalStart = customerSettings != null ? customerSettings.ApprovalStart.GetValueOrDefault() : 0;
188
189 //Ziua de sfarsit pentru aprobarea comenzilor
190 var customerApprovalEnd = customerSettings != null ? customerSettings.ApprovalEnd.GetValueOrDefault() : 0;
191
192 //Valoare minima comanda
193 decimal customerMinimumOrderValue = customerSettings != null ? customerSettings.MinimumOrderValue.GetValueOrDefault() : 0;
194
195 //Mesaj pentru comanda minima
196 string customerMinimumOrderMessage = customerSettings != null ? customerSettings.MinimumOrderValueMessage : "";
197
198 //Ascunde preturile pentru user
199 bool customerHidePrices = false;//customerSettings != null ? customerSettings.HidePrices.GetValueOrDefault() : false;
200
201
202 int todayDay = (int)DateTime.Now.Day;
203
204
205 bool orderAllow = true ;
206 bool approveAllow = true ;
207
208 if (todayDay < customerOrderStart || todayDay > customerOrderEnd){
209 orderAllow = false;
210 }
211 if (todayDay < customerApprovalStart || todayDay > customerApprovalEnd){
212 approveAllow = false;
213 }
214
215
216
217 string customerListGroupID = null;
218 if (currentUserAccess != null) {
219 var productSpecialListNumberField = currentUserAccess.CustomFieldValues.FirstOrDefault(f => f.CustomField.SystemName == "AccessUser_Products_SpecialList_Number");
220 var productSpecialListNumber = productSpecialListNumberField != null ? productSpecialListNumberField.Value as string : null;
221 if (!string.IsNullOrEmpty(productSpecialListNumber)) {
222 customerListGroupID = BrandFusion.Dw.Austral.eCommerce.GroupFacade.GetGroupId(productSpecialListNumber);
223 } else if (!string.IsNullOrEmpty(customerNo)) {
224 customerListGroupID = BrandFusion.Dw.Austral.eCommerce.GroupFacade.GetGroupId(customerNo);
225 }
226 }
227
228 if(!string.IsNullOrEmpty(customerNo)){
229 customerRole = BrandFusion.Dw.Austral.eCommerce.UserFacade.GetRole(currentUserAccess).GetValueOrDefault();
230 }
231
232
233 HttpContext.Current.Session["userListView"] = "box";
234
235 if(System.Web.HttpContext.Current.Request["view"] != null){
236 HttpContext.Current.Session["userListView"] = System.Web.HttpContext.Current.Request["view"];
237 }
238
239 string userListView = HttpContext.Current.Session["userListView"].ToString();
240
241
242 }
243
244 <title>@GetValue("Title")</title>
245 @GetValue("MetaTags")
246 @GetValue("CopyRightNotice")
247
248 <meta charset="utf-8">
249 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
250 <meta name="viewport" content="width=device-width, initial-scale=1">
251
252 @foreach (LoopItem i in GetLoop("Item.Area.Groups")) {
253 if (i.GetString("Item.Area.Group.Name") == "Header") {
254 foreach (LoopItem j in i.GetLoop("Item.Area.Group.Fields")) {
255 <meta name='@j.GetString("Item.Area.Field.Name")' content='@j.GetString("Item.Area.Field.Value")'>
256 }
257 }
258 }
259
260 @RenderSnippet("Meta")
261 <meta name="facebook-domain-verification" content="6sw38rlj8z2blddpnx9sngk2g4j5t2">
262 <link rel="shortcut icon" href="/Files/Templates/Designs/Fusion/assets/img/favicon.ico">
263
264
265 <link href="https://fonts.googleapis.com/css2?family=Open+Sans+Condensed:wght@300;700&family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap" rel="stylesheet">
266 <link rel="stylesheet" type="text/css" href="/Files/Templates/Designs/Fusion/dist/app.bundle.css">
267
268
269
270 @if(string.IsNullOrEmpty(HttpContext.Current.Request["development"])){
271 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/jquery-1.12.3.min.js"></script>
272 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/modernizr-2.7.1.min.js"></script>
273 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/modernizr-custom.js"></script>
274 }
275
276 @RenderSnippet("Head")
277
278 <!-- Facebook Pixel Code -->
279 <script>
280 !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
281 n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
282 n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
283 t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
284 document,'script','https://connect.facebook.net/en_US/fbevents.js');
285
286 fbq('init', '1448596761825791');
287 fbq('track', "PageView");</script>
288 <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1448596761825791&ev=PageView&noscript=1"></noscript>
289 <!-- End Facebook Pixel Code -->
290
291
292 <!-- Google Tag Manager -->
293 <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
294 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
295 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
296 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
297 })(window,document,'script','dataLayer','GTM-5PC33G9');</script>
298 <!-- End Google Tag Manager -->
299
300
301
302 @RenderScripts("header")
303
304
305 <meta name="google-site-verification" content="RC3gdwFLyrYziMTNmlGB9YvN-n-7IDIGCY2rOHAfKQk">
306 <meta name="google-site-verification" content="HwvHBJZdAxmQVtH4XGXNG_Bl1YmafpX8k7RVNF_v2mo">
307 <meta name="google-site-verification" content="7SwW0RX0W2anTHnl1zpoX1V4xfuqBjXw6wjPHUrtMSk">
308 @GetValue("Stylesheets")
309 @GetValue("Javascripts")
310 </head>
311 <body data-pageid='@GetGlobalValue("Global:Page.ID")' data-productpage='@GetValue("Item.Area.Catalog_Page")' data-paragraph='@GetValue("Item.Area.InstantSearch_Paragraph")' data-areaid='@GetGlobalValue("Global:Area.ID")'>
312 @RenderScripts("body")
313 <!--[if lt IE 7]>
314 <p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
315 <![endif]-->
316
317 @* @if (Pageview.Device == Dynamicweb.Frontend.PageView.DeviceType.Mobile || Pageview.Device == Dynamicweb.Frontend.PageView.DeviceType.Tablet) { *@
318 @{
319 string logo = GetString("Item.Area.Logo");
320 string siteName = GetString("Item.Area.Site_Name");
321 }
322
323 <div class="header-mobile">
324 <div class="col-xs-12">
325 <div class="row">
326 <div class="logo col-xs-6">
327 <a href="/">
328 <img src='@logo' alt='@siteName'>
329 </a>
330 </div>
331 <div class="mobile-nav-trigger col-xs-6">
332 @{
333
334 System.Globalization.TextInfo myTIMobile = new System.Globalization.CultureInfo("en-US", false).TextInfo;
335 @*string userMobile = Dynamicweb.Frontend.PageView.Current().User.UserName;
336 string userProfileNameMobile = Dynamicweb.Frontend.PageView.Current().User.Name;
337 string userCustomerNumberMobile = Dynamicweb.Frontend.PageView.Current().User.CustomerNumber;*@
338 var userMobile = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser();
339 var userProfileNameMobile = userMobile;
340 bool userMobileIsLoggedIn = userProfileNameMobile != null;
341
342 string userCustomerNumberMobile = userIsLoggedIn && currentUser.CustomerNumber != null ? currentUser.CustomerNumber.ToString() : null;
343
344
345
346 //string userCustomerNumberMobile = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser().CustomerNumber;
347
348
349 string userAccountLinkMobile = "/Default.aspx?ID=9";
350 string userCartLinkMobile = "/Default.aspx?ID=13";
351
352 if (!string.IsNullOrEmpty(userCustomerNumberMobile)) {
353 userAccountLinkMobile = "/Default.aspx?ID=170";
354 userCartLinkMobile = "/Default.aspx?ID=42";
355 }
356
357 }
358
359
360
361 <button type="button" id="mobile-nav-button"><i class="fa fa-bars"></i></button>
362 <div class="minicart">
363 <a href="@userCartLinkMobile">
364 <i class="ion-android-cart"></i>
365 @if (!@GetBoolean("Ecom:Order.IsEmpty")) {
366 <span data-minicart-update="">(0)</span>
367 } else {
368 <span data-minicart-update="">Cosul tau este gol</span>
369 }
370
371 </a>
372 </div>
373
374 @*@if(string.IsNullOrEmpty(userMobile)) {*@
375 @if(userMobile == null) {
376 <button type="button" class="mobile-header-overlay-trigger"><i class="fa fa-user"></i></button>
377 <div class="mobile-header-overlay animated">
378 <a href="/Default.aspx?ID=11" class="btn-main animated">@Translate("Intra in cont","Intra in cont")</a>
379 @*<a href="/Default.aspx?ID=10" class="btn-main animated">@Translate("Creeaza cont","Creeaza cont")</a>*@
380 <button type="button" class="overlay-close"><i class="fa fa-close"></i> @Translate("Inchide","Inchide")</button>
381 </div>
382
383 } else {
384 <button type="button" class="mobile-header-overlay-trigger"><i class="fa fa-user"></i></button>
385 <div class="mobile-header-overlay animated">
386 <a href="/Admin/Public/ExtranetLogoff.aspx" class="btn-main animated"><i class="fa fa-unlock-alt"></i> @Translate("Logout","Logout")</a>
387 <a href="@userAccountLinkMobile" class="btn-main animated"><i class="fa fa-user"></i> @Translate("Contul meu","Contul meu")</a>
388 <button type="button" class="overlay-close"><i class="fa fa-close"></i> @Translate("Inchide","Inchide")</button>
389 </div>
390
391 }
392
393
394 </div>
395
396 <div class="search-mobile col-xs-12"><form action="/Default.aspx?ID=127" method="GET">
397 <div class="form-group">
398 <input type="text" name="q" id="q-mobile" autocomplete="off" spellcheck="false" placeholder='@Translate("search", "Cauta dupa cod sau nume...")' class="form-control">
399 @if(!string.IsNullOrEmpty(customerNo) && !string.IsNullOrEmpty(customerListGroupID)){
400 <input type="hidden" name="CustomerNumber" id="CustomerNumber" value="@customerNo">
401 }
402 <button type="submit"><i class="ion-ios-search-strong"></i></button>
403 <div class="instant_search"></div>
404 </div>
405 </form></div>
406
407 </div>
408 </div>
409 </div>
410 <div id="mobile-navigation-overlay">
411 <button type="button" class="overlay-close"><i class="fa fa-close"></i> @Translate("Inchide","Inchide")</button>
412 <div class="content-scrollable">
413 @*if(!string.IsNullOrEmpty(customerNo)) { *@
414 <ul class="root">
415 <li>
416 <a href="#">Categorii de produse</a>
417 @RenderNavigation(new {
418 template = "CategoriesNavigationMobileB2B-v2.xslt",
419 expandmode = "all",
420 sitemapmode="true",
421 id = "categories",
422 startlevel = 1,
423 endlevel = 5,
424 areaid = 1
425 })
426 </li>
427 </ul>
428 @*}*@
429
430 @if(!string.IsNullOrEmpty(customerNo) ) {
431 @RenderNavigation(new {
432 template = "MainNavigationMobile-v2.xslt",
433 expandmode = "all",
434 id = "NavMainMobileAll",
435 startlevel = 2,
436 endlevel = 4,
437 parentid = 169,
438 customerGroup = @customerListGroupID,
439 customerRole = @customerRole
440 });
441 } else {
442
443 @RenderNavigation(new {
444 template = "MainNavigationMobile-v2.xslt",
445 expandmode = "all",
446 id = "NavMainMobileAll",
447 startlevel = 1,
448 endlevel = 4
449 });
450
451 }
452
453 </div>
454
455
456 </div>
457 @* } *@
458
459 <div class="mobile-wrapper">
460
461 @{
462
463 System.Globalization.TextInfo myTI = new System.Globalization.CultureInfo("en-US", false).TextInfo;
464 @*string user = Dynamicweb.Frontend.PageView.Current().User.UserName;
465 string userProfileName = Dynamicweb.Frontend.PageView.Current().User.Name;
466 string userCustomerNumber = Dynamicweb.Frontend.PageView.Current().User.CustomerNumber;*@
467 //string userProfileName = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser().Name;throw new Exception("Exceptie 01");
468
469
470
471 var userProfileName = currentUser;
472
473 bool userLoggedIn = userProfileName != null;
474
475
476
477
478 string userAccountLink = "/Default.aspx?ID=9";
479 string userCartLink = "/Default.aspx?ID=13";
480
481 double cartQuantity = GetDouble("Ecom:Order.OrderLines.TotalProductQuantity");
482 double cartPrice = GetDouble("Ecom:Order.PriceWithoutFees.PriceWithVAT");
483 string currencyCart = GetString("Ecom:Order.Price.Currency.Symbol");
484 BrandFusion.Dw.Austral.eCommerce.CustomerAddress customerDetails = null;
485 string customerLogo = "";
486
487 @*string customerName = Dynamicweb.Frontend.PageView.Current().User != null && !string.IsNullOrEmpty(userProfileName)? userProfileName : "";*@
488 @*string customerName = currentUserAccess != null && !string.IsNullOrEmpty(userProfileName)? userProfileName : "";*@
489 string customerName = currentUserAccess != null ? userProfileName.Name.ToString() : "";
490
491 string userCustomerNumber = userIsLoggedIn && currentUser.CustomerNumber != null ? currentUser.CustomerNumber.ToString() : null;
492
493
494 if(!string.IsNullOrEmpty(userCustomerNumber)) {
495
496
497 cartPrice = GetDouble("Ecom:Order.PriceWithoutFees.PriceWithoutVAT");
498 }
499
500 if (!string.IsNullOrEmpty(userCustomerNumber)) {
501
502
503 userAccountLink = "/Default.aspx?ID=170";
504 userCartLink = "/Default.aspx?ID=42";
505
506 }
507
508 if(!string.IsNullOrEmpty(userCustomerNumber)){
509
510
511 customerDetails = BrandFusion.Dw.Austral.eCommerce.CustomerFacade.GetB2bBillingAddress(userCustomerNumber);
512
513 if (customerDetails != null)
514 {
515 customerName = customerDetails.Company;
516 customerLogo = !string.IsNullOrEmpty(customerDetails.GeoLocationImage) ? "/Files/Images/Austral/CustomerLogos/"+customerDetails.GeoLocationImage : "";
517 }
518 }
519
520 }
521 @SnippetStart("Head")
522
523 @SnippetEnd("Head")
524
525
526 <div class="header-top hidden-xs hidden-sm">
527 <div class="container">
528 <div class="row">
529 <div class="col-md-12">
530 @*@if(!string.IsNullOrEmpty(user)) {*@
531 @if(userIsLoggedIn) {
532 <ul class="right-align">
533 @*@if(!string.IsNullOrEmpty(userProfileName)) {*@
534 @if(userLoggedIn) {
535 <li>
536 @if (string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.SecondaryUser.UserID"))) {
537 <a href="@userAccountLink"> <i class="ion-ios-locked-outline"></i>
538
539 @userProfileName.Name
540
541 @if(!string.IsNullOrEmpty(userCustomerNumber)) {
542 <span>- @userCustomerNumber</span>
543 }
544
545 </a>
546 } else{
547 <span>
548 <a href="/Default.aspx?ID=3500">@GetGlobalValue("Global:Extranet.SecondaryUser.Name") - (@GetGlobalValue("Global:Extranet.SecondaryUser.UserName")) @Translate("ImpersonatedBy", "este impersonat de") @Pageview.User.Name (@Pageview.User.UserName)</a>
549 </span>
550 }
551 </li>
552 <li><a href="/Admin/Public/ExtranetLogoff.aspx">@Translate("logout", "Logout")</a></li>
553 }
554
555 </ul>
556 }
557 <ul class="left-align">
558 <li><p>@GetValue("Item.Area.Program")</p></li>
559
560 @if(!string.IsNullOrEmpty(GetString("Item.Area.Telefon"))) {
561 <li><p>@GetValue("Item.Area.Telefon")</p></li>
562 }
563 </ul>
564
565 </div>
566
567
568
569 </div>
570 </div>
571 </div>
572 @{
573 //string logo = GetString("Item.Area.Logo");
574 //string siteName = GetString("Item.Area.Site_Name");
575 }
576 <div class="header-middle hidden-xs hidden-sm">
577 <div class="container">
578 <div class="row">
579
580 <div id="logo" class="col-sm-3 hidden-xs">
581 <a href="/">
582 <img src='@logo' alt='@siteName'>
583 </a>
584 </div>
585
586 <div class="header-search-v2 col-sm-9">
587 <div class="row">
588
589
590 <div class="col-sm-6 col-md-5 col-lg-6">
591
592 <form action="/Default.aspx?ID=127" method="GET" data-file="search-v2">
593 <div class="form-group">
594 <input type="text" name="q" id="q" autocomplete="off" spellcheck="false" placeholder='@Translate("search", "Cauta dupa cod sau nume...")' class="form-control">
595 <input type="hidden" id="ID" name="ID" value="127">
596 @if(!string.IsNullOrEmpty(customerNo) && !string.IsNullOrEmpty(customerListGroupID)){
597 <input type="hidden" name="CustomerNumber" id="CustomerNumber" value="@customerNo">
598 }
599 <button type="submit"><i class="ion-ios-search-strong"></i></button>
600 <div class="instant_search"></div>
601 </div>
602 </form>
603
604 </div>
605 @*@if(string.IsNullOrEmpty(user)) {*@
606 @if(!userIsLoggedIn) {
607 <div class="header-account col-sm-3 col-md-4 col-lg-3">
608 @*<a href="/Default.aspx?ID=10">@Translate("CreateAccount", "Creeaza cont")</a> <text>|</text>*@ <a href="/Default.aspx?ID=11">@Translate("Login", "Login")</a>
609 </div>
610 } else {
611 <div class="header-account customer col-sm-3 col-md-4 col-lg-3">
612 <a href="@userAccountLink">
613 @if (!string.IsNullOrEmpty(customerLogo)){
614 <img src="/Admin/Public/GetImage.ashx?Image=@customerLogo&Format=jpg&Width=190&Height=85&Compression=100&Crop=5" class="img-responsive">
615 }else{
616 <span>@customerName</span>
617 }
618 </a>
619 </div>
620 }
621
622 <div class="col-sm-3 col-md-3 col-lg-3 minicart">
623 <a href="@userCartLink">
624 <i class="ion-android-cart"></i>
625 @*@if (!@GetBoolean("Ecom:Order.IsEmpty")) {*@
626 @if (@GetBoolean("Ecom:Order.IsEmpty")) {
627 <span data-minicart-update="">(@cartQuantity) - @cartPrice<sup> @currencyCart</sup></span>
628 } else {
629 <span data-minicart-update="">Cosul este gol</span>
630 }
631
632 </a>
633 </div>
634 </div>
635 </div>
636 </div>
637 </div>
638 </div>
639
640
641
642 @SnippetStart("BottomJS")
643 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/main-v2.js"></script>
644 @SnippetEnd("BottomJS")
645 <div class="main-nav-2 hidden-xs hidden-sm">
646 <span style="display: none;">
647 @GetGlobalValue("Global:Item.Page.DisplayOptions").ToString()
648 </span>
649
650 <div class="container">
651 <div class="row">
652
653
654 <div class="col-md-3 hidden-sm hidden-xs">
655 <div class="left-nav-box clearfix @navigationCollapsed">
656 <div class="category-heading"><p>Categorii de produse</p></div>
657 <div class="menu3dmega" id="menuMega">
658 @RenderNavigation(new {
659 template = "CategoriesNavigationB2B.xslt",
660 expandmode = "all",
661 sitemapmode="true",
662 id = "categories",
663 startlevel = 1,
664 endlevel = 5,
665 areaid = 1
666 })
667 </div>
668 </div>
669 </div>
670 @if(!string.IsNullOrEmpty(customerNo))
671 {
672 <div class="col-md-9" style="padding-left: 0;">
673 @RenderNavigation(new {
674 template = "MainNavigation-v2.xslt",
675 expandmode = "all",
676 id = "NavMainAll",
677 startlevel = 2,
678 endlevel = 4,
679 parentid = 169,
680 customerGroup = @customerListGroupID,
681 customerRole = @customerRole
682 })
683
684 </div>
685 } else {
686
687 @*RenderSnippet("Homepagenavigation")*@
688
689 <div class="col-md-9">
690 @RenderNavigation(new {
691 template = "MainNavigation-v2.xslt",
692 expandmode = "all",
693 id = "NavMainAll",
694 startlevel = 1,
695 endlevel = 4
696 })
697 </div>
698
699 }
700 </div>
701 </div>
702 </div>
703
704 <div class="container">
705 <div class="row">
706
707
708 <div class="col-xs-12">
709 <div class="row">
710 <div class="main-content" id="main-content">@GetValue("DwContent(maincontent)")</div>
711 </div>
712 </div>
713 </div>
714 </div>
715 <div class="container">
716 <div class="row">
717
718
719 <div class="brands-wrapper">
720 <div class="container">
721 <div class="col-md-12">
722 <div class="row">
723
724 @RenderParagraphContent(1514)
725
726 @* <div class="logo-slider">
727 <div class="flexslider">
728 <ul class="slides">
729 @{
730 var manufacturers = Dynamicweb.Ecommerce.Products.Manufacturer.GetManufacturers();
731 int counter = 0;
732 int howManyOnRow = 1;
733
734 foreach (var manufacturer in manufacturers)
735 {
736 if (!string.IsNullOrEmpty(manufacturer.Logo)){
737 if (counter % howManyOnRow == 0){
738 if (counter == 0){
739 @:<li class='item active'>
740 }
741 else {
742 @:<li class="item">
743 }
744 }
745
746 <a href="#">
747 <img src="/Files/@manufacturer.Logo.Trim('/')">
748 </a>
749 if (counter % howManyOnRow == howManyOnRow - 1)
750 {
751 @:</li>
752 }
753 counter++;
754 }
755 }
756 if (counter % howManyOnRow != 0)
757 {
758 @:
759 }
760 }
761 </ul>
762 </div>
763 </div>*@
764
765 @*<div class="brands-list-navigation product-list-navigation">
766 <a href="#" class="flex-prev"><i class="ion-ios-arrow-back"></i></a>
767 <a href="#" class="flex-next"><i class="ion-ios-arrow-forward"></i></a>
768 </div> *@
769
770
771 </div>
772 </div>
773 </div>
774 </div>
775 </div>
776 </div>
777
778
779
780
781
782 <div class="footer">
783 <div class="container">
784 <div class="row">
785
786 <div class="col-md-3 col-sm-6 col-xs-12 shopinfo">
787 <h4 class="title">AUSTRAL</h4>
788 <p>
789 @GetValue("Item.Area.Contact")
790 </p>
791 <div class="social-icons">
792 <ul>
793 <li class="icon facebook"><a href='@GetValue("Item.Area.Facebook_Link")' target="_blank"><i class="fa fa-facebook fa-fw"></i></a></li>
794 <li class="icon twitter"><a href='@GetValue("Item.Area.Twitter_Link")' target="_blank"><i class="fa fa-twitter fa-fw"></i></a></li>
795 <li class="icon linkedin"><a href='@GetValue("Item.Area.Linkedin_link")' target="_blank"><i class="fa fa-linkedin fa-fw"></i></a></li>
796 <li class="icon google-plus"><a href='@GetValue("Item.Area.GooglePlus_Link")' target="_blank"><i class="fa fa-google-plus fa-fw"></i></a></li>
797 </ul>
798 </div>
799
800 <a href="http://australservicii.ro/" target="_blank"><img src="/Files/Templates/Designs/Fusion/assets/img/Banner_Australservicii.png" alt="" style="margin: 9px 0 0 0;"></a>
801 </div>
802 <div class="col-md-3 col-sm-6 col-xs-12 footermenu">
803 <h4 class="title">UTILE </h4>
804 @GetValue("DwNavigation(BottomNavigation)")
805
806 <div>
807 <a href="https://anpc.ro/ce-este-sal/" target="_blank"><img src="/Files/Images/Austral/pictograma1-ANPC.png" alt="ANPC" title="ANPC"></a>
808
809 <a href="https://ec.europa.eu/consumers/odr" target="_blank"><img src="/Files/Images/Austral/pictograma2-ANPC.png" alt="Solutionarea online a litigiilor" title="Solutionarea online a litigiilor"></a>
810 </div>
811 </div>
812 <div class="col-md-3 col-sm-6 col-xs-12 footermenu">
813 <h4 class="title">COMENZI</h4>
814 @GetValue("DwNavigation(BottomNavigation1)")
815 <img src="/Files/Templates/Designs/Fusion/assets/img/MobilPay-banner.png" alt="">
816 </div>
817 <div class="col-md-3 col-sm-6 col-xs-12 getintouch">
818 <h4 class="title">Certificari</h4>
819 <img src="/Files/Templates/Designs/Fusion/assets/img/ukas.jpg" alt="">
820 </div>
821
822 </div>
823 </div>
824 </div>
825 <div class="cart--footer">
826 <div class="container">
827 <div class="row">
828 <div class="col-xs-12">
829 <a href="#" class="emptyCart">Goleste cos</a>
830 @GetValue("CartV2.NextStepButtonName")
831
832 @{
833 var cartLink = "/Default.aspx?ID=13";
834 if(!string.IsNullOrEmpty(customerNo)) {
835 cartLink = "/Default.aspx?ID=42";
836 }
837 }
838 <a class="cart" href="@cartLink">
839 <span class="spacing">Aveti <span class="em" cartproducts="">produse</span> in cos</span>
840 <span class="spacing">Cost total: <span class="em" carttotals="">Cosul este gol</span></span>
841 <span class="spacing cart--footer__button">@Translate("footer checkout", "Vezi cosul tau")</span>
842 </a>
843 </div>
844 </div>
845 </div>
846 </div>
847 </div>
848 @* *@
849
850
851
852
853 @if(string.IsNullOrEmpty(HttpContext.Current.Request["development"])){
854 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/bootstrap.min.js"></script>
855 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/libraries/slick.min.js"></script>
856
857
858 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/cdnjs/select2.min.js"></script>
859
860 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/jquery.noty.packaged.js"></script>
861 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/bpopup.js"></script>
862 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/jquery.flexslider.min.js"></script>
863
864
865
866
867 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/libraries/jscookie.js"></script>
868 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/alertify.js"></script>
869 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/mobile-menu-v2.js"></script>
870 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/login.js"></script>
871 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/main.js"></script>
872 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/carousels.js"></script>
873 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/main-v2.js?v=2"></script>
874 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/product-modal.js"></script>
875
876
877 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/cdnjs/lodash.min.js"></script>
878 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/cdnjs/photoswipe.min.js"></script>
879 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/cdnjs/photoswipe-ui-default.min.js"></script>
880
881 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/product-list.js"></script>
882 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/loader.js"></script>
883 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/minicart.js"></script>
884 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/voucher.js"></script>
885 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/cart.js"></script>
886 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/assets/js/jquery.validate.js"></script>
887 } else {
888 <script type="text/javascript" src="/Files/Templates/Designs/Fusion/dist/app.bundle.js"></script>
889 }
890
891 @RenderSnippet("modalBottom")
892 @RenderSnippet("bottomJS")
893
894 @* Quickview modal *@
895 <div class="b-modal" id="quickview">
896 <div id="results" class="clearfix"></div>
897 </div>
898
899
900
901 @RenderScripts("footer")
902 </body>
903