Setup:Installation Guide/Advanced/Maintenance scripts/export: Difference between revisions

No edit summary
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 12: Line 12:
     "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;" |Key
! style="width:200px;" |key
! style="width:200px;" |Value
! style="width:200px;" |possible values
!Description
!module='''pdf'''
|-
(exports a set of wiki pages)
| style="width:200px;" |module
!module='''bookpdf'''
| style="width:200px;" |pdf
(exports a single book)
|Output type
|-
|-
| style="width:200px;" |attachments
| style="width:200px;" |attachments
| style="width:200px;" |1
| style="width:200px;" |1
0
0
|Attachments will be included in the export
| 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
|Linked pages (one level deep) will be included.
|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 wiki page that contains the list of pages to be exported. <span class="col-red">The pages need to be links.</span>
|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;" |
|Name of the exported PDF file
| 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;" |
|Target file location
| colspan="2" |Target file location
|}
|}



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/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.