Loading...
 
Skip to main content

Allow replacing hardcoded call to maketoc in page with the one produced by mpdf

Status
Closed
Subject
Allow replacing hardcoded call to maketoc in page with the one produced by mpdf
Version
18.x
19.x
Category
  • Consistency
  • Usability
Feature
Auto TOC
PDF
Resolution status
Fixed or Solved
Submitted by
Xavier de Pedro
Lastmod by
Xavier de Pedro
Rating
(0)
Description

In 18.x (and probably earlier) you can print the table of contents on the fly in the pdf produced by mpdf (at pdf generation time), regardless of using hardcoded maketoc calls, o hardcoded title calls with wiki argument variable { { page } } (no space intended between angle brackets).

Preference: Control Panels > Print > mPDF > Table of contents


This feature is nice, but if would deserve another minor level of integration, for those cases in which:

  1. the Wiki page title is hidden by default, and placed by hand in the wiki page where needed (or replaced by human-(more-)readable text), usually at the top with a heading 1 level style.
    • current behavior: mpdf places the table of contents at the top, and page title is shown below the table of contents, which is counter intuitive
  2. A wiki page has the AutoTOC setting disabled at wiki page level, and a hardcoded call to {maketoc} is placed below the page title (or wherever, with whichever maketoc params for the users like, such as levels="2,3", my favourite, btw).
    • current behavior: mpdf keeps the table of contents produced by itself, plus the table of contents that was previously generated in the rendered html page by the wiki markup). therefore, 2 table of contents are shown, which is not what most users would expect.


Potential solution to both issues: (2 birdies in one shot)
Allow replacing hardcoded call to maketoc in page with the one produced by mpdf

How? Brainstorm mode on:

  • add a new param inpdf in maketoc plugin, with several values:
    • replace: {maketoc inpdf=replace} Replace that maketoc call in the wiki textarea with the output of the table of contents from mpdf
    • keep: {maketoc inpdf=keep} keep same behavior as nowadays, for those edge cases in which user has custom maketoc for partial sections of the page (or whatever), which want printed also besides the full table of contents at the beginning, etc.
    • ignore: {maketoc inpdf=ignore} ignore the maketoc call when creating the pdf, so that the only maketoc is the one produced by mpdf at the beginning (for cases with wiki page created by Tiki itself, etc, so that placement of the maketoc from mpdf is the expected one, etc)


Opinions?

Importance
5
Easy to solve?
5
Priority
25
Demonstrate Bug on Tiki 19+
Demonstrate Bug (older Tiki versions)
Ticket ID
6611
Created
Tuesday 03 April, 2018 15:38:57 UTC
by Xavier de Pedro
LastModif
Monday 08 October, 2018 06:33:33 UTC


Show PHP error messages