Error executing template "Designs/Blogtheme/_parsed/BlogFront.parsed.cshtml"
System.IO.IOException: The process cannot access the file 'E:\dynamicweb.net\Solutions\Dynamicweb\cboll.net.dynamicweb-cms.com\Files\Templates\Designs\Blogtheme\json\AllEntitiesTest.json' because it is being used by another process.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
   at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)
   at CompiledRazorTemplates.Dynamic.RazorEngine_5dacddf676bc4355a10c520338f695eb.Execute() in E:\dynamicweb.net\Solutions\Dynamicweb\cboll.net.dynamicweb-cms.com\Files\Templates\Designs\Blogtheme\_parsed\BlogFront.parsed.cshtml:line 85
   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.b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @using System.Web; 2 @using System.Net; 3 @using Newtonsoft.Json; 4 @using Newtonsoft.Json.Linq; 5 6 @functions { 7 public class RootObject 8 { 9 public string tableName { get; set; } 10 public List<Entity> entityList { get; set; } 11 } 12 13 public class Entity 14 { 15 public string Id { get; set; } 16 public int Sort { get; set; } 17 public string ItemInstanceType { get; set; } 18 public string Title { get; set; } 19 public string Type { get; set; } 20 public string Description { get; set; } 21 public string Image { get; set; } 22 public string Culture { get; set; } 23 public string Greek_Subcultures { get; set; } 24 public string Roman_Republican_Subcultures { get; set; } 25 public string Roman_Imperial_Subcultures { get; set; } 26 public string Celtic_Subcultures { get; set; } 27 public string Roman_Provincial_Subcultures { get; set; } 28 public string Islamic_Subcultures { get; set; } 29 public string Eastern_Subcultures { get; set; } 30 public string European_Medieval_Subcultures { get; set; } 31 public string Indian_Subcultures { get; set; } 32 public string Byzantine_Subcultures { get; set; } 33 public string Phoenician_Subcultures { get; set; } 34 public string Chinese_Subcultures { get; set; } 35 public string Zone { get; set; } 36 public string Region { get; set; } 37 public string Location { get; set; } 38 public string Modern_Location { get; set; } 39 public string Ruler_Title { get; set; } 40 public string Ruler_Title_English { get; set; } 41 public string Epithet { get; set; } 42 public string EpithetEnglish { get; set; } 43 public string Domain { get; set; } 44 public string Doman_English { get; set; } 45 public string StartOf_Rule { get; set; } 46 public string EndOf_Rule { get; set; } 47 public string OwnerID { get; set; } 48 public string OwnerName { get; set; } 49 public string ShortDescription { get; set; } 50 public string Focus { get; set; } 51 public string IsPatron { get; set; } 52 public string IsFolder { get; set; } 53 public string IsDeleted { get; set; } 54 public string MetalsList { get; set; } 55 public string MintedByList { get; set; } 56 public string IncludeInMenu { get; set; } 57 public string NameReadable { get; set; } 58 public string PreviousText { get; set; } 59 public string NextText { get; set; } 60 public string RelevantPageID { get; set; } 61 public string RelevantParagraphID { get; set; } 62 public string RelevantAreaID { get; set; } 63 } 64 65 } 66 67 68 <!DOCTYPE html> 69 <html lang="en"> 70 71 72 73 @{ 74 string[] stringSeparators = new string[] { ", ", " and ", "|", "," }; 75 string User = @GetGlobalValue("Global:Extranet.UserID"); 76 string SortValue = "CustomSortValue"; 77 string CollectionLink = @GetGlobalValue("Global:Request.Host") + "/Categories?BelongsToUser=" + @GetGlobalValue("Global:Extranet.UserID") + "&SortBy=" + @SortValue; 78 79 string Username = ""; 80 string SearchString = System.Web.HttpContext.Current.Request.QueryString["Search"]; 81 } 82 83 @{ 84 85 string AllEntitiesRaw = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Blogtheme/json/AllEntitiesTest.json")); 86 int AllEntitiesRawLength = AllEntitiesRaw.Length; 87 88 var AllEntitiesJSON = JsonConvert.DeserializeObject<List<Entity>>(@AllEntitiesRaw.Substring(49, @AllEntitiesRawLength - 55)); 89 90 } 91 92 @if (!string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.UserName"))) 93 { 94 Username = GetGlobalValue("Global:Extranet.UserName"); 95 } 96 else 97 { 98 Username = ""; 99 } 100 101 <head> 102 103 <meta charset="utf-8"> 104 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 105 <meta name="viewport" content="width=device-width, initial-scale=1"> 106 @RenderSnippet("OGData") 107 108 <!-- CSS --> 109 @*<link href="/Files/Templates/Designs/Blogtheme/vendor/bootstrap-4.4.1/css/bootstrap.css" rel="stylesheet">*@ 110 <link href="/Files/Templates/Designs/Blogtheme/vendor/bootstrap-4.6.0/css/bootstrap.css" rel="stylesheet"> 111 <link href="/Files/Templates/Designs/Blogtheme/css/clean-blog.css" rel="stylesheet"> 112 <link href="/Files/Templates/Designs/Blogtheme/css/CoinSiteStyles.css" rel="stylesheet"> 113 <link href="/Files/Templates/Designs/Blogtheme/css/easy-autocomplete.css" rel="stylesheet"> 114 <link href="/Files/Templates/Designs/Blogtheme/vendor/MDB-Free_4.19.2/css/addons/datatables.min.css" rel="stylesheet"> 115 116 <!-- Custom Fonts --> 117 <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous"> 118 <link href='https://fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic' rel='stylesheet' type='text/css'> 119 <link href='https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800' rel='stylesheet' type='text/css'> 120 121 <!-- jQuery & JavaScript --> 122 <script src="/Files/Templates/Designs/Blogtheme/vendor/jquery/jquery.min.js"></script> 123 <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script> 124 @*<script src="/Files/Templates/Designs/Blogtheme/vendor/bootstrap-4.4.1/js/bootstrap.min.js"></script>*@ 125 <script src="/Files/Templates/Designs/Blogtheme/vendor/bootstrap-4.6.0/js/bootstrap.min.js"></script> 126 <script src="/Files/Templates/Designs/Blogtheme/js/jquery.easy-autocomplete.js"></script> 127 <script type="text/javascript" src="/Files/Templates/Designs/Blogtheme/vendor/MDB-Free_4.19.2/js/addons/datatables.min.js"></script> 128 129 <!-- New Menu --> 130 <style> 131 .dropdown-submenu { 132 position: static; 133 font-size: 14px; 134 } 135 136 .dropdown-submenu a::after { 137 transform: rotate(-90deg); 138 } 139 140 .dropdown-submenu .dropdown-menu { 141 top: 0; 142 left: 100%; 143 margin-left: .1rem; 144 margin-right: .1rem; 145 font-size: 14px; 146 } 147 </style> 148 149 150 <!-- Google Analytics --> 151 <script> 152 (function (i, s, o, g, r, a, m) { 153 i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () { 154 (i[r].q = i[r].q || []).push(arguments) 155 }, i[r].l = 1 * new Date(); a = s.createElement(o), 156 m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) 157 })(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga'); 158 159 ga('create', 'UA-88475304-1', 'auto'); 160 ga('send', 'pageview'); 161 </script> 162 163 164 165 <!-- CollectionLink to copy --> 166 @*<input class="form-control input-lg" style="opacity:0;" type="text" id="copy-input" value='@CollectionLink'>*@ 167 168 @GetValue("CopyRightNotice") 169 @GetValue("MetaTags") 170 @GetValue("Stylesheets") 171 @GetValue("Javascripts") 172 </head> 173 174 <body> 175 176 <!-- Google Tag Manager (noscript) --> 177 <noscript> 178 <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5SVNCFK" height="0" width="0" style="display:none;visibility:hidden"></iframe> 179 </noscript> 180 181 182 <!-- Navigation --> 183 184 185 <div class="navbar navbar-expand-xl fixed-top bg-white"> 186 <div class="container"> 187 <a class="navbar-brand" title="ancientcoingallery.net"><img src="/Admin/Public/GetImage.ashx?Image=/Files/Templates/Designs/Blogtheme/img/Antoninianus.jpg&Format=jpg&Width=0&Height=60&Resolution=300&Compression=99&Crop=0"></a> 188 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> 189 <span class="navbar-toggler-icon"></span> 190 </button> 191 192 <div class="navbar-collapse collapse" id="navbarSupportedContent"> 193 <ul class="navbar-nav mr-auto mt-2 mt-lg-0"> 194 <!-- Home --> 195 <li class="nav-item font-menu"> 196 <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> 197 </li> 198 <!-- Authorities --> 199 <li class="nav-item dropdown"> 200 <a class="nav-link dropdown-toggle font-menu" href="" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Authority<span class="caret"></span></a> 201 <ul class="dropdown-menu"> 202 @foreach (var entity in AllEntitiesJSON.OrderBy(x => x.Title)) 203 { 204 if (@entity.Type == "Category") 205 { 206 string[] CategoryTitleList = entity.Title.Split(stringSeparators, StringSplitOptions.None); 207 string CategoryTitle = CategoryTitleList[0].Replace("_", " "); 208 209 <li class="dropdown-submenu"> 210 <a class="dropdown-item dropdown-toggle" href="#">@CategoryTitle</a> 211 <ul class="dropdown-menu"> 212 <li><a class="dropdown-item" href="/Default.aspx?ID=8&Category=@CategoryTitleList[0]"><b>All @CategoryTitle</b></a></li> 213 @foreach (var subentity in AllEntitiesJSON.OrderBy(x => x.Sort)) 214 { 215 if (@subentity.Culture == CategoryTitleList[0] && @subentity.Type == "Subcategory") 216 { 217 string[] SubcategoryTitleList = subentity.Title.Split(stringSeparators, StringSplitOptions.None); 218 string SubcategoryTitle = SubcategoryTitleList[0].Replace("_", " "); 219 <li class="dropdown-submenu"> 220 <a class="dropdown-item dropdown-toggle" href="#">@SubcategoryTitle</a> 221 <ul class="dropdown-menu"> 222 <li><a class="dropdown-item" href='/Default.aspx?ID=8&Subcategory=@SubcategoryTitleList[0]&Category=@subentity.Culture'><b>All @SubcategoryTitle</b></a></li> 223 @foreach (var authority in AllEntitiesJSON.OrderBy(x => x.Sort)) 224 { 225 226 if (authority.Type == "Ruler" & authority.Roman_Republican_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 227 authority.Type == "Ruler" & authority.Roman_Imperial_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 228 authority.Type == "Ruler" & authority.Celtic_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 229 authority.Type == "Ruler" & authority.Roman_Provincial_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 230 authority.Type == "Ruler" & authority.Islamic_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 231 authority.Type == "Ruler" & authority.Eastern_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 232 authority.Type == "Ruler" & authority.European_Medieval_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 233 authority.Type == "Ruler" & authority.Indian_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 234 authority.Type == "Ruler" & authority.Byzantine_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 235 authority.Type == "Ruler" & authority.Phoenician_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] || 236 authority.Type == "Ruler" & authority.Chinese_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0]|| 237 authority.Type == "Ruler" & authority.Greek_Subcultures == SubcategoryTitleList[0] && authority.Culture == CategoryTitleList[0] 238 ) 239 { 240 if (authority.Culture == "Roman_Imperial" || authority.Culture == "Roman_Provincial") 241 { 242 <li><a class="dropdown-item" href="/Default.aspx?ID=8&Ruler=@authority.Title">@authority.Title</a></li> 243 } 244 else 245 { 246 <li><a class="dropdown-item" href="/Default.aspx?ID=8&Ruler=@authority.Title&Category=@authority.Culture">@authority.Title</a></li> 247 } 248 249 } 250 } 251 </ul> 252 </li> 253 } 254 } 255 </ul> 256 </li> 257 } 258 } 259 260 261 </ul> 262 </li> 263 <!-- Geography --> 264 <li class="dropdown"> 265 <a class="nav-link dropdown-toggle font-menu" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Geography<span class="caret"></span></a> 266 <ul class="dropdown-menu"> 267 @foreach (var zone in AllEntitiesJSON.OrderBy(x => x.Title)) 268 { 269 if (zone.Type == "Zone") 270 { 271 string[] ZoneTitleList = zone.Title.Split(stringSeparators, StringSplitOptions.None); 272 string ZoneTitle = ZoneTitleList[0].Replace("_", " "); 273 274 <li class="dropdown-submenu"> 275 <a class="dropdown-item dropdown-toggle" href="#">@ZoneTitle</a> 276 <ul class="dropdown-menu"> 277 <li><a class="dropdown-item" href="/Default.aspx?ID=8&Zone=@ZoneTitleList[0]"><b>All @ZoneTitle</b></a></li> 278 @foreach (var region in AllEntitiesJSON.OrderBy(x => x.Title)) 279 { 280 if (region.Zone == @ZoneTitleList[0] && region.Type == "Region") 281 { 282 string[] RegionTitleList = region.Title.Split(stringSeparators, StringSplitOptions.None); 283 string RegionTitle = RegionTitleList[0]; 284 <li> 285 <a class="dropdown-item dropdown-toggle" href="#">@region.Title</a> 286 <ul class="dropdown-menu"> 287 <li><a class="dropdown-item" href='/Default.aspx?ID=8&Region=@RegionTitleList[0]'><b>All @RegionTitle</b></a></li> 288 @foreach (var mint in AllEntitiesJSON.OrderBy(x => x.Title)) 289 { 290 string[] MintTitleList = mint.Title.Split(stringSeparators, StringSplitOptions.None); 291 string MintTitle = MintTitleList[0].Replace("_", " "); 292 if (mint.Region == @RegionTitleList[0] && mint.Type == "Mint") 293 { 294 <li><a class="dropdown-item" href="/Default.aspx?ID=8&Mint=@mint.Title">@MintTitle</a></li> 295 } 296 } 297 </ul> 298 </li> 299 } 300 } 301 </ul> 302 </li> 303 } 304 } 305 306 307 </ul> 308 </li> 309 <!-- Denominations --> 310 <li class="dropdown"> 311 <a class="nav-link dropdown-toggle font-menu" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Denominations<span class="caret"></span></a> 312 <ul class="dropdown-menu"> 313 @foreach (var entity in AllEntitiesJSON.OrderBy(x => x.Title)) 314 { 315 if (@entity.Type == "Category") 316 { 317 string[] CategoryTitleList = entity.Title.Split(stringSeparators, StringSplitOptions.None); 318 string CategoryTitle = CategoryTitleList[0].Replace("_", " "); 319 320 if (CategoryTitle == "Greek" || @CategoryTitle == "Roman Imperial") 321 { 322 <li class="dropdown-submenu"> 323 <a class="dropdown-item dropdown-toggle" href="#">@CategoryTitle </a> 324 <ul class="dropdown-menu"> 325 @foreach (var subentity in AllEntitiesJSON.OrderBy(x => x.Title)) 326 { 327 if (@subentity.Type == "Metal" && subentity.IncludeInMenu == "yes") 328 { 329 string title2 = subentity.Title; 330 <li> 331 <a class="dropdown-item dropdown-toggle" href="#">@subentity.NameReadable </a> 332 <ul class="dropdown-menu"> 333 <li><a class="dropdown-item" href='/Default.aspx?ID=8&Metal=@title2.Replace(" ","_")'><b>All @title2</b></a></li> 334 @foreach (var subsubentity in AllEntitiesJSON.OrderBy(x => x.Title)) 335 { 336 if (@subsubentity.Type == "Denomination" && subentity.MintedByList != null) 337 { 338 string[] metalsList; 339 string rawMetals = @subsubentity.MetalsList; 340 metalsList = rawMetals.Split(stringSeparators, StringSplitOptions.None); 341 string[] mintedByList; 342 string rawmintedBy = @subsubentity.MintedByList; 343 mintedByList = rawmintedBy.Split(stringSeparators, StringSplitOptions.None); 344 <span></span> 345 if (@metalsList.Contains(@title2.Replace(" ", "_")) && @mintedByList.Contains(@CategoryTitleList[0])) 346 { 347 <li><a class="dropdown-item" href='/Default.aspx?ID=8&Denomination=@subsubentity.Title&Category=@CategoryTitleList[0]&Metal=@title2.Replace(" ","_")'>@subsubentity.Title</a></li> 348 } 349 350 } 351 } 352 </ul> 353 </li> 354 } 355 } 356 </ul> 357 </li> 358 } 359 else 360 { 361 <li class="dropdown-submenu"> 362 <a class="dropdown-item dropdown-toggle" href="#">@CategoryTitle</a> 363 <ul class="dropdown-menu"> 364 @foreach (var denomination in AllEntitiesJSON.OrderBy(x => x.Title)) 365 { 366 if (denomination.Type == "Denomination" && denomination.MintedByList != null) 367 { 368 string[] mintedByList; 369 string rawmintedBy = denomination.MintedByList; 370 mintedByList = rawmintedBy.Split(stringSeparators, StringSplitOptions.None); 371 <span></span> 372 string[] DenominationTitleList = denomination.Title.Split(stringSeparators, StringSplitOptions.None); 373 string DenominationTitle = DenominationTitleList[0].Replace("_", " "); 374 if (@mintedByList.Contains(@CategoryTitleList[0])) 375 { 376 <li><a class="dropdown-item" href='/Default.aspx?ID=8&Denomination=@denomination.Title&Category=@CategoryTitleList[0]'>@DenominationTitle</a></li> 377 } 378 } 379 } 380 </ul> 381 </li> 382 383 } 384 } 385 } 386 387 </ul> 388 </li> 389 390 <!-- Other --> 391 <li class="dropdown"> 392 <a class="nav-link dropdown-toggle font-menu" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Other<span class="caret"></span></a> 393 <ul class="dropdown-menu"> 394 395 <li class="dropdown-submenu"> 396 <a class="dropdown-item dropdown-toggle" href="#">Collections</a> 397 <ul class="dropdown-menu"> 398 <li><a class="dropdown-item" href="/Default.aspx?ID=1095"><b>All Collections</b></a></li> 399 @foreach (var entity in AllEntitiesJSON.OrderBy(x => x.Title)) 400 { 401 if (@entity.Type == "Collection" && @entity.IsPatron == "true") 402 { 403 string title1 = entity.Title; 404 <li><a class="dropdown-item" href='/Default.aspx?ID=8&BelongsToUser=@entity.OwnerID&SortBy=CustomSortValue'><i class="fab fa-patreon fa-1" aria-hidden="true"></i> @entity.Title</a></li> 405 } 406 } 407 </ul> 408 </li> 409 <li class="divider"></li> 410 <li><a class="dropdown-item" href="Default.aspx?ID=55"> About </a></li> 411 412 </ul> 413 </li> 414 415 </ul> 416 <!-- Login --> 417 <ul class="navbar navbar-nav navbar-right"> 418 <li> 419 420 <form action="/Search"> 421 <div class="search-container"> 422 @if (!string.IsNullOrWhiteSpace(@SearchString)) 423 { 424 <input class="font-menu" type="text" placeholder="@SearchString" name="Search"> 425 } 426 else 427 { 428 <input class="font-menu" type="text" placeholder="Search.." name="Search"> 429 } 430 <button class="btn" type="submit"><i class="fas fa-search"></i></button> 431 </div> 432 </form> 433 434 </li> 435 <li class="dropdown"> 436 <a class="nav-link dropdown-toggle font-menu" href="#" data-toggle="dropdown" class="dropdown-toggle font-subtitle"><i class="fa fa-user" aria-hidden="true"></i> @Username </a> 437 <ul class="dropdown-menu"> 438 @if (!string.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.UserName"))) 439 { 440 <li><a class="dropdown-item" tabindex="-1" href="/Default.aspx?ID=12">Profile</a></li> 441 <li><a class="dropdown-item" tabindex="-1" href="/Default.aspx?ID=908&BelongsToUser=@User&SortBy=CustomSortValue">Collection </a></li> 442 443 <li class="divider"></li> 444 <li><a class="dropdown-item" tabindex="-1" href="/Admin/Public/ExtranetLogoff.aspx">Log out</a></li> 445 } 446 else 447 { 448 <li><a class="dropdown-item" tabindex="-1" href="/Default.aspx?ID=64">Register</a></li> 449 <li class="divider"></li> 450 <li><a class="dropdown-item" tabindex="-1" href="/Default.aspx?ID=12">Login</a></li> 451 452 } 453 454 </ul> 455 </li> 456 457 </ul> 458 </div> 459 460 </div> 461 </div> 462 463 464 <!-- Main Content --> 465 <div class="container" style="margin-top:100px;padding-top:25px;box-shadow: 10px 10px 160px 10px rgba(219,216,219,0.58);"> 466 467 468 469 470 <!-- Main Content --> 471 472 <div class="col-lg-12 col-md-12 row" style="margin-bottom:20px;" id="maincontent">@GetValue("DwContent(maincontent)")</div> 473 474 475 </div> 476 477 478 479 480 <!-- Footer --> 481 <footer> 482 <div class="container"> 483 484 <div class="row"> 485 <div class="col-lg-12 col-md-12"> 486 <ul class="text-center"> 487 <li class="list-inline-item"> 488 <a href="https://www.facebook.com/groups/ancientcoingallery.net/"> 489 <span class="fa-stack fa-lg"> 490 <i class="fa fa-circle fa-stack-2x"></i> 491 <i class="fab fa-facebook-f fa-stack-1x fa-inverse"></i> 492 </span> 493 </a> 494 </li> 495 <li class="list-inline-item"> 496 <a href="https://www.patreon.com/bePatron?u=15445754"> 497 <span class="fa-stack fa-lg"> 498 <i class="fa fa-circle fa-stack-2x" title="Become a Patron!"></i> 499 <i class="fab fa-patreon fa-stack-1x fa-inverse"></i> 500 </span> 501 </a> 502 </li> 503 </ul> 504 </div> 505 </div> 506 </div> 507 </footer> 508 509 510 <script> 511 $('.dropdown-menu a.dropdown-toggle').on('click', function (e) { 512 if (!$(this).next().hasClass('show')) { 513 $(this).parents('.dropdown-menu').first().find('.show').removeClass("show"); 514 } 515 var $subMenu = $(this).next(".dropdown-menu"); 516 $subMenu.toggleClass('show'); 517 518 519 $(this).parents('li.nav-item.dropdown.show').on('hidden.bs.dropdown', function (e) { 520 $('.dropdown-submenu .show').removeClass("show"); 521 }); 522 523 524 return false; 525 }); 526 </script> 527 528 </body> 529 530 </html> 531 532