(Created page with "== Running the script == The script to export wiki pages to PDF is executed from: <syntaxhighlight lang="text"> php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/e...") |
No edit summary |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
The script to export wiki pages to PDF is executed from: <syntaxhighlight lang="text"> | The script to export wiki pages to PDF is executed from: <syntaxhighlight lang="text"> | ||
php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file=spec.json | php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file=spec.json | ||
</syntaxhighlight>The specification file spec.json can have the following content:<syntaxhighlight lang="text"> | </syntaxhighlight>The specification file <code>spec.json</code> can have the following content:<syntaxhighlight lang="text"> | ||
{ | { | ||
"module": "pdf", | "module": "pdf", | ||
"attachments": 1, | "attachments": 1, | ||
"recursive": 1, | "recursive": 1, | ||
"title": " | "title": "MyPDF", | ||
"target": "localfilesystem", | "target": "localfilesystem", | ||
"target-file-name": "All.pdf", | "target-file-name": "All.pdf", | ||
"target-file-path": "/path/to/target-file" | "target-file-path": "/path/to/target-file" | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight>It is possible to export either a set of wiki pages or a single book. | ||
{| class="wikitable" style="width: 100%;" | {| class="wikitable" style="width: 100%;" | ||
|+ | |+Key/value pairs for the specification file | ||
! style="width:200px;" | | ! style="width:200px;" |key | ||
! style="width:200px;" | | ! style="width:200px;" |possible values | ||
! | !module='''pdf''' | ||
(exports a set of wiki pages) | |||
!module='''bookpdf''' | |||
(exports a single book) | |||
|- | |- | ||
| style="width:200px;" |attachments | | style="width:200px;" |attachments | ||
| style="width:200px;" |1 | | style="width:200px;" |1 | ||
0 | 0 | ||
| | | colspan="2" |0 = no attachments are included | ||
1 = attachments (links to "media" files) are included | |||
|- | |- | ||
| style="width:200px;" |recursive | | style="width:200px;" |recursive | ||
| style="width:200px;" |1 | | style="width:200px;" |1 | ||
0 | 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! | |||
|- | |- | ||
| style="width:200px;" |title | | style="width:200px;" |title | ||
| style="width:200px;" |string | | style="width:200px;" |string | ||
| | |Title of the [[Setup:Installation Guide/Advanced/Maintenance scripts/export#Creating a page list for the export|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. | |||
<code>"title":"Book:Mybookname"</code> | |||
|- | |- | ||
| style="width:200px;" |target | | style="width:200px;" |target | ||
| style="width:200px;" |localfilesystem | | style="width:200px;" |localfilesystem | ||
| | | colspan="2" |The file is exported to a local file system | ||
|- | |- | ||
| style="width:200px;" |target-file-name | | style="width:200px;" |target-file-name | ||
| style="width:200px;" | | | style="width:200px;" | | ||
| | | colspan="2" |Name of the exported PDF file | ||
|- | |- | ||
| style="width:200px;" |target-file-path | | style="width:200px;" |target-file-path | ||
| style="width:200px;" | | | style="width:200px;" | | ||
| | | colspan="2" |Target file location | ||
|} | |} | ||
== Creating a page list for the export == | == Creating a page list for the export == | ||
The | The export list is defined in the wiki page that is shown as the <code>title</code> in the json-file. (In the example above, this is the page <code>MyPDF</code> .) | ||
The page <code> | The page <code>MyPDF</code> now needs to list all pages that will be exported to PDF. | ||
This list can be created with an [[SMW queries|SMW inline query]] (BlueSpice free) or with a [[Manual:Extension/DynamicPageList3|DPL3 list]] (BlueSpice free). | This list can be created with an [[SMW queries|SMW inline query]] (BlueSpice free) or with a [[Manual:Extension/DynamicPageList3|DPL3 list]] (BlueSpice free). | ||
Example of an SMW query to create an export for all pages in the categories <code>Process</code> and <code>Work instruction</code>: | |||
You would add the following to your <code>MyPDF</code> page in the wiki:<syntaxhighlight lang="text"> | |||
==All processes== | ==All processes== | ||
{{#ask:[[Process:+]]|format=ul|limit=99999}} | {{#ask:[[Process:+]]|format=ul|limit=99999}} | ||
Line 74: | Line 78: | ||
== Setting up a CronJob == | == Setting up a CronJob == | ||
To automate the export, the following CronJob is available:<syntaxhighlight lang="text"> | To automate the export, the following CronJob is available:<syntaxhighlight lang="text"> | ||
php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file={MW_ROOT}/extensions/BlueSpiceFoundation/data/spec.json | |||
php {MW_ROOT}/extensions/BlueSpiceUniversalExport/maintenance/export.php --specification-file={MW_ROOT}/extensions/BlueSpiceFoundation/data/ | |||
</syntaxhighlight> | </syntaxhighlight> | ||
__FORCETOC__ |
Latest revision as of 09:34, 21 May 2024
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 | 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.
|
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