Revision as of 09:34, 21 May 2024 by Margit Link-Rodrigue (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Running the script

The script to export wiki pages to PDF is executed from:

php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file=spec.json

The specification file spec.json can have the following content:

{
    "module": "pdf",
    "attachments": 1,
    "recursive": 1,
    "title": "MyPDF",
    "target": "localfilesystem",
    "target-file-name": "All.pdf",
    "target-file-path": "/path/to/target-file"
}

It is possible to export either a set of wiki pages or a single book.

Key/value pairs for the specification file
key possible values module=pdf

(exports a set of wiki pages)

module=bookpdf

(exports a single book)

attachments 1

0

0 = no attachments are included

1 = attachments (links to "media" files) are included

recursive 1

0

0 = no linked pages are included

1 = linked pages (one level deep) are included

value has to be "1" or the pdf contains no pages!
title string Title of the wiki page that contains the list of pages to be exported. The pages need to be links. Title of the book page. Exporting multiple books requires running separate scripts for each book.

"title":"Book:Mybookname"

target localfilesystem The file is exported to a local file system
target-file-name Name of the exported PDF file
target-file-path Target file location

Creating a page list for the export

The export list is defined in the wiki page that is shown as the title in the json-file. (In the example above, this is the page MyPDF .)

The page MyPDF now needs to list all pages that will be exported to PDF.

This list can be created with an SMW inline query (BlueSpice free) or with a DPL3 list (BlueSpice free). Example of an SMW query to create an export for all pages in the categories Process and Work instruction:

You would add the following to your MyPDF page in the wiki:

==All processes==
{{#ask:[[Process:+]]|format=ul|limit=99999}}

==All work instructions==
{{#ask:[[Work instruction:+]]|format=ul|limit=99999}}

The same list can be created with the following DPL3 syntax:

==All processes==
{{#dpl:category=Process}}

==All work instructions==
{{#dpl:category=Work instruction}}

Setting up a CronJob

To automate the export, the following CronJob is available:

php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file={MW_ROOT}/extensions/BlueSpiceFoundation/data/spec.json



To submit feedback about this documentation, visit our community forum.