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