SobekCM.Library.HTML.Item_HtmlSubwriter.Write_ItemNavForm_Closing C# (CSharp) 메소드

Write_ItemNavForm_Closing() 공개 메소드

Writes final HTML to the output stream after all the placeholders and just before the itemNavForm is closed.
public Write_ItemNavForm_Closing ( TextWriter Output, Custom_Tracer Tracer ) : void
Output System.IO.TextWriter Stream to which to write the text for this main writer
Tracer SobekCM.Tools.Custom_Tracer Trace object keeps a list of each method executed and important milestones in rendering
리턴 void
        public override void Write_ItemNavForm_Closing(TextWriter Output, Custom_Tracer Tracer)
        {
            Tracer.Add_Trace("Item_HtmlSubwriter.Write_ItemNavForm_Closing", "Close the item viewer and add final pagination");

            // If this is the page turner viewer, don't draw anything else
            //if ((pageViewer != null) && (pageViewer.ItemViewer_Type == ItemViewer_Type_Enum.GnuBooks_PageTurner))
            //{
            //    return;
            //}

            Output.WriteLine("\t</tr>");

            if ((pageViewer != null) && (pageViewer.PageCount != 1) && (!behaviors.Contains(HtmlSubwriter_Behaviors_Enum.Item_Subwriter_Suppress_Bottom_Pagination)))
            {
                Output.WriteLine("\t<tr>");
                Output.WriteLine("\t\t<td>");

                // ADD NAVIGATION BUTTONS
                if (pageViewer.PageCount != 1)
                {
                    Output.WriteLine("\t\t\t<div class=\"sbkIsw_PageNavBar\">");
                    Output.WriteLine(buttonsHtml);

                    // Create the page selection if that is the type to display.  This is where it is actually
                    // built as well, althouogh it is subsequently used further up the page
                    if (pageViewer.Page_Selector == ItemViewer_PageSelector_Type_Enum.PageLinks)
                    {
                        Output.WriteLine(pageLinksHtml);
                    }

                    Output.WriteLine("\t\t\t</div>");
                }

                Output.WriteLine("\t\t</td>");
                Output.WriteLine("\t</tr>");
            }

            // Close the item viewer table and section for main viewering
            Output.WriteLine("</table>");
            Output.WriteLine("</section>");

            // Only need extra padding if the left nav bar was shown
            if (ShouldLeftNavigationBarBeShown)
            {
                // Add a spot for padding
                Output.WriteLine();
                Output.WriteLine("<!-- Division is used to add extra bottom padding, if the left nav bar is taller than the item viewer -->");
                Output.WriteLine("<div id=\"sbkIsw_BottomPadding\"></div>");
                Output.WriteLine();

                // Close the presentation table
                Output.WriteLine("<!-- Close the presentation table -->");
                Output.WriteLine("</td></tr></table>");
            }

            // None of the sharing options are available if the user is restricted from this item
            // or if we are generating this as a static page source for robots
            if ((!itemRestrictedFromUserByIp) && (!itemCheckedOutByOtherUser) && (!RequestSpecificValues.Current_Mode.Is_Robot))
            {
                // Add the hidden field
                Output.WriteLine("<!-- Hidden field is used for postbacks to indicate what to save and reset -->");
                Output.WriteLine("<input type=\"hidden\" id=\"item_action\" name=\"item_action\" value=\"\" />");
                Output.WriteLine();
            }
        }