ScrewTurn.Wiki.DefaultPage.SetupBreadcrumbsTrail C# (CSharp) Method

SetupBreadcrumbsTrail() private method

Sets the breadcrumbs trail, if appropriate.
private SetupBreadcrumbsTrail ( ) : void
return void
        private void SetupBreadcrumbsTrail()
        {
            if(Settings.DisableBreadcrumbsTrail || discussMode || viewCodeMode) {
                lblBreadcrumbsTrail.Visible = false;
                return;
            }

            StringBuilder sb = new StringBuilder(1000);

            sb.Append(@"<div id=""BreadcrumbsDiv"">");

            PageInfo[] pageTrail = SessionFacade.Breadcrumbs.AllPages;
            int min = 3;
            if(pageTrail.Length < 3) min = pageTrail.Length;

            sb.Append(@"<div id=""BreadcrumbsDivMin"">");
            if(pageTrail.Length > 3) {
                // Write hyperLink
                sb.Append(@"<a href=""#"" onclick=""javascript:return __ShowAllTrail();"" title=""");
                sb.Append(Properties.Messages.ViewBreadcrumbsTrail);
                sb.Append(@""">(");
                sb.Append(pageTrail.Length.ToString());
                sb.Append(")</a> ");
            }

            for(int i = pageTrail.Length - min; i < pageTrail.Length; i++) {
                AppendBreadcrumb(sb, pageTrail[i], "s");
            }
            sb.Append("</div>");

            sb.Append(@"<div id=""BreadcrumbsDivAll"" style=""display: none;"">");
            // Write hyperLink
            sb.Append(@"<a href=""#"" onclick=""javascript:return __HideTrail();"" title=""");
            sb.Append(Properties.Messages.HideBreadcrumbsTrail);
            sb.Append(@""">[X]</a> ");
            for(int i = 0; i < pageTrail.Length; i++) {
                AppendBreadcrumb(sb, pageTrail[i], "f");
            }
            sb.Append("</div>");

            sb.Append("</div>");

            lblBreadcrumbsTrail.Text = sb.ToString();
        }