Crains Trails in Paradise Mountains

Out here you will find the most legal features including log rides, jumps and rock rolls in South Tahoe

Crains Trails in Paradise Mountainsn pedaling up through the dark forest

Several high speed, low risk sections take you down the sandy open trail for some of the most fun downhills in the area. This route is worth riding MANY times. This trail can be sandy during dry summer months and is best after rain, in the spring or fall. Short and fast, with a few small jumps and some loose rocks to keep you on your toes. Kitsuma is a point to point singletrack trail that has a machine groomed tread in most parts. While it has no real technical features to speak of since being redesigned, it is a lot of fun to ride this glassy smooth and generally well-bermed trail. On the bike map it is often combined as the Whole Enchilada with Porcupine Rim, Kokopelli, Hazard County and Burro Pass. Tree is elevated, so not rideable for most. This trail ends at the intersection of Middle Earth. Blast down Ridgeline all the way to Lake Imaging Road.

 

The trail finishes in switchbacks coming down the mountain with some good berms. after the jump you will enter the trail between two trees (fairly close together). The climb up from Marlette Lake trail is pretty tough, but relatively short. Otherwise dry. Rose meadows and finishing with this trail. Be careful of the rock stairs relatively close to the top of this portion; too much speed could doom your descent on these. The trails are well drained and suitable for riding when wet. After a very quick downhill out of the gate, the route climbs up through big forest. Sign is posted at entrance to warn users of features. Riders need to be at a decent skill level to attempt this trail.

Few sections rutted out but great experience for my first ride there! Built specifically for mountain bikes, a flow trail emphasizes speed and rhythm, featuring berms, rollers, jumps and other features that are designed in a way that uses the rider’s momentum to minimize pedaling and braking (think downhill pump track). Very loose and dry. Well built jump line with wooden lips built into each jump. It packs in a lot of excitement in a short amount of time. Clear and dry. Fun transitions and some great little rock drops. The area can be accessed from the end of Densmore's Lane, the end of Old Petty Harbour Road and from Huntingdale Drive. This trail has big sized jumps in it, very fast and dry!

 

This is a bi-directional trail but most riders ride from the parking lot towards Pleasant Hill Road. The climb to the top ends with a beautiful vista of Twin Lakes and the surrounding area. One of the best rides in all of tahoe. Most climbs are of the paved/fireroad variety, most descents are a mix of loose rock, fixed rock, and good dirt. Trail contains a rope-suspended ladder bridge, elevated bridges and a long-straight skinny. Out of the parking lot, take your first left. You can find everyone out here having fun from people in body armor and downhill bikes to families testing their kids limits to xc racer types riding intervals. Lots of Flow! The area can be accessed from the end of Densmore's Lane, the end of Old Petty Harbour Road and from Huntingdale Drive. From the young (or not so young) beginner, to the downhill pro, a flow trail delivers smiles for riders of all ages and skill level.

Error executing template "Designs/Swift/Paragraph/Swift_ArticleList.cshtml"
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at Dynamicweb.Content.Items.Queries.Repository.IsPageAllowed(Page page)
   at Dynamicweb.Content.Items.Queries.Repository.GetPagesByIds(IEnumerable`1 parentIds, Boolean includeChildItems, Boolean checkPermissions, List`1& childPages)
   at Dynamicweb.Content.Items.Queries.Repository.SelectByParentPageIds(IEnumerable`1 parentIds, Query query, Boolean includeParagraphs, Boolean includeChildItems, Boolean checkPermissions, Boolean includeInheritedItems)
   at Dynamicweb.ItemPublisher.Frontend.GetItems()
   at Dynamicweb.ItemPublisher.Frontend.List()
   at Dynamicweb.ItemPublisher.Frontend.GetContent()
   at Dynamicweb.ItemPublisher.Frontend.GetContentBySettings(String settings)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Dynamicweb.Extensibility.AddIns.AddInManager.InvokeFunction(Object instance, String functionName, Object[] arguments)
   at Dynamicweb.Rendering.TemplateBase`1.RenderItemList(Object settings)
   at CompiledRazorTemplates.Dynamic.RazorEngine_91283bf5b708462c9dfc4bb6ef0dae79.<>c__DisplayClass0_0.<RenderArticleList>b__0(TextWriter __razor_helper_writer) in C:\inetpub\wwwroot\SwiftDemo\Solutions\Files\Templates\Designs\Swift\Paragraph\Swift_ArticleList.cshtml:line 130
   at CompiledRazorTemplates.Dynamic.RazorEngine_91283bf5b708462c9dfc4bb6ef0dae79.Execute() in C:\inetpub\wwwroot\SwiftDemo\Solutions\Files\Templates\Designs\Swift\Paragraph\Swift_ArticleList.cshtml:line 22
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> @{ string listSource = Model.Item.GetRawValueString("ListSource", Model.PageID.ToString()); string listBehaviour = Model.Item.GetRawValueString("ListBehaviour", "articles"); string articleListSortOrder = Model.Item.GetRawValueString("ArticleListSortOrder", "Descending"); string articleListLayout = Model.Item.GetRawValueString("ArticleListLayout", "grid"); string columnTheme = Model.Item.GetRawValueString("ColumnTheme", string.Empty); string columnThemeClass = columnTheme != string.Empty ? " theme " + columnTheme + " p-3" + (articleListLayout == "carousel" ? " px-lg-4" : string.Empty) : string.Empty; int maxItemsInList = !string.IsNullOrEmpty(Model.Item.GetInt32("MaxItemsInList").ToString()) ? Model.Item.GetInt32("MaxItemsInList") : 10; <div class="h-100@(columnThemeClass) [email protected]()"> <a id="@Model.ID" class="user-select-none" style="scroll-margin-top:var(--header-height,150px)"></a> @switch (articleListLayout) { case "grid": { if (listBehaviour == "articles") {@RenderArticleList("Swift_Article", listSource, maxItemsInList, articleListSortOrder) } if (listBehaviour == "lists") { @RenderArticleList("Swift_ArticleListPage", listSource, maxItemsInList, articleListSortOrder) } } break; case "carousel": var carouselSettings = Model.Item.GetRawValueString("CarouselSettings", "4"); string slidesPerPage = $"slider-item-show{carouselSettings}"; string navigationStyle = $"{Model.Item.GetRawValueString("NavigationStyle", "slider-nav-round")}"; string navigationPlacement = $"{Model.Item.GetRawValueString("NavigationPlacement", "slider-nav-on-slides")}"; string indicatorStyle = $"{Model.Item.GetRawValueString("IndicatorStyle", string.Empty)}"; string revealSlides = Model.Item.GetRawValueString("RevealSlides", "reveal") == "reveal" ? "slider-item-reveal" : string.Empty; string sliderItemsGap = Model.Item.GetRawValueString("SliderItemsGap", "slider-item-gap") == "slider-item-nogap" ? "slider-item-nogap" : string.Empty; string navigationAlwaysVisible = (Model.Item.GetBoolean("NavigationAlwaysVisible")) ? "slider-nav-visible" : string.Empty; string navigationVisibleOnTouch = (Model.Item.GetBoolean("NavigationVisibleOnTouch")) ? "slider-nav-touch" : string.Empty; string navigationShowScrollbar = (Model.Item.GetBoolean("NavigationShowScrollbar")) ? "slider-nav-scrollbar" : string.Empty; string scrollBarForceMobile = (Model.Item.GetBoolean("NavigationShowScrollbar")) ? "--swiffy-slider-track-height:0.5rem !important;" : string.Empty; string navigationSmall = (Model.Item.GetBoolean("NavigationSmall")) ? "slider-nav-sm" : string.Empty; string navigationInvertColors = (Model.Item.GetBoolean("NavigationInvertColors")) ? "slider-nav-dark" : string.Empty; string navigationSlideEntirePage = (Model.Item.GetBoolean("NavigationSlideEntirePage")) ? "slider-nav-page" : string.Empty; string navigationNoLoop = (Model.Item.GetBoolean("NavigationNoLoop")) ? "slider-nav-noloop" : string.Empty; string indicatorsOutsideSlider = (Model.Item.GetBoolean("IndicatorsOutsideSlider") && indicatorStyle != string.Empty) ? "slider-indicators-outside" : string.Empty; string indicatorsHighlightActive = (Model.Item.GetBoolean("IndicatorsHighlightActive")) ? "slider-indicators-highlight" : string.Empty; string indicatorsInvertColors = (Model.Item.GetBoolean("IndicatorsInvertedColors")) ? "slider-indicators-dark" : string.Empty; string indicatorsVisibleOnSmallDevices = (Model.Item.GetBoolean("IndicatorsVisibleOnSmallDevices")) ? "slider-indicators-sm" : string.Empty; string animation = Model.Item.GetRawValueString("Animation", string.Empty) != string.Empty ? $"slider-nav-animation {Model.Item.GetRawValueString("Animation")}" : string.Empty; string autoplay = (Model.Item.GetBoolean("Autoplay")) ? "slider-nav-autoplay" : string.Empty; string autoplayInterval = Model.Item.GetRawValueString("AutoplayInterval", string.Empty); bool hideSliderNavigation = false; if (navigationStyle == "slider-nav-none") { hideSliderNavigation = true; } <div id="[email protected]" class="swiffy-slider @(slidesPerPage) @(navigationStyle) @(revealSlides) @(navigationPlacement) @(navigationAlwaysVisible) @(navigationVisibleOnTouch) @(sliderItemsGap) @(indicatorStyle) @(navigationShowScrollbar) @(navigationSmall) @(navigationInvertColors) @(indicatorsOutsideSlider) @(navigationNoLoop) @(indicatorsHighlightActive) @(indicatorsInvertColors) @(indicatorsVisibleOnSmallDevices) @(navigationSlideEntirePage) @(animation) @(autoplay) [email protected]()" style="--swiffy-slider-nav-light:var(--swift-foreground-color);--swiffy-slider-nav-dark:var(--swift-background-color);visibility:hidden;opacity:0;@(scrollBarForceMobile)" data-slider-nav-autoplay-interval="@(autoplayInterval)"> <div class="slider-container pb-3 py-lg-3 px-lg-3 mt-lg-n3 mx-lg-n3"> @{ if (listBehaviour == "articles") { @RenderArticleList("Swift_Article", listSource, maxItemsInList, articleListSortOrder) } if (listBehaviour == "lists") { @RenderArticleList("Swift_ArticleListPage", listSource, maxItemsInList, articleListSortOrder) } } </div> @if (!hideSliderNavigation) { <button type="button" title="@Translate("Previous slide")" class="slider-nav" style="z-index:1;"> <span class="visually-hidden">@Translate("Previous slide")</span> </button> <button type="button" title="@Translate("Next slide")" class="slider-nav slider-nav-next" style="z-index:1;"> <span class="visually-hidden">@Translate("Next slide")</span> </button> } @if (indicatorStyle != "slider-indicators-hidden") { <div class="slider-indicators" style="z-index:1;"></div> } <script type="module" src="/Files/Templates/Designs/Swift/Assets/js/swiffy-slider.js"></script> <script type="module"> const slider = document.querySelector('#[email protected]'); swift.AssetLoader.Load('/Files/Templates/Designs/Swift/Assets/css/swiffy-slider.min.css', 'css'); document.addEventListener('load.swift.assetloader', () => { swiffyslider.initSlider(slider); slider.style.opacity = 1; slider.style.visibility = "visible"; }); </script> @if (indicatorStyle != "slider-indicators-hidden") { <script type="module"> const slider = document.querySelector('#[email protected]'); const sliderContainer = slider.querySelector('.slider-container'); let slides = sliderContainer.querySelectorAll('article'); const sliderIndicators = slider.querySelector('.slider-indicators'); slides.forEach((slide,index) => { const indicator = document.createElement('template'); indicator.innerHTML = ` <button type="button" class="${index == 0 ? "active" : ""}" title='@Translate("Go to slide") ${index + 1}'> <span class="visually-hidden">@Translate("Go to slide") ${index + 1}</span> </button> `; sliderIndicators.appendChild(indicator.content); }); </script> } </div> break; } </div> } @helper RenderArticleList(string itemType, string listSource, int maxItemsInList, string articleListSortOrder) { var parent = Dynamicweb.Context.Current.Request.QueryString.Get("list"); var query = string.IsNullOrEmpty(parent) ? listSource : parent; var includeAllChildren = Model.Item.GetRawValueString("ListDepth", "all") == "all" ? true : false; var listContext = Model.Item?.GetRawValueString("ListContext", string.Empty).Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); var filterString = string.Join(" or ", listContext.Select(item => $"Tags == \"{item}\" or Tags ends with \",{item}\" or Tags starts with \"{item},\" or Tags contains \",{item},\"")); @RenderItemList(new { ItemType = itemType, ListTemplate = "ItemPublisher/List/List.cshtml", ItemFieldsList = "*", ListSourceType = "Page", ListSourcePage = query, ListPageSize = maxItemsInList, IncludeParagraphItems = true, ListOrderBy = "PublishedDate", ListSecondOrderBy = "Updated", ListOrderByDirection = articleListSortOrder, IncludeAllChildItems = includeAllChildren, Filter = itemType == "Swift_Article" ? filterString : null // Filter only if "articles only" }) }
Ved at klikke 'Acceptér Alle' så giver til tiladelse til at vi må indsamle information om dig til forskellige formål, hvilket inkluderer: Funktionalitet, Statestik og Marketing