Server-generated print templates
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evergreen |
Fix Released
|
Wishlist
|
Unassigned |
Bug Description
Evergreen 3.3
Continuing from email thread:
http://
Recap:
This is a proposal to migrate the process of print template compilation / generation away from the browser (or any other client) to the server. Templates will be implemented with Template Toolkit. At print time, instead of having the client fetch the template and process it locally, the client posts the print data to the server, which generates the selected template with the provided data, returning the final product as a print-ready chunk of html, text, etc.
Key benefits:
1. A print template language / process which persists across (and is agnostic of) any client technology. This is especially important given the requirements for compiling Angular templates.
2. Centrally managed, per-org unit print templates.
3. Configurable template locales and content types (html, text, etc.)
4. Options for added template security (strict edit permissions, configurable HTML scrubbing).
Proposed Migration Plan:
1. Server print templates will have an "active" flag to prevent a template from being used if it's under construction.
2. AngJS will first try to load a saved template, followed by the stock template file (staff/
3. As templates are added to the seed data, their matching staff/share/
4. On the Angular side, the print caller either passes an Angular template reference, indicating a locally compiled template, or the name/owner/etc of the server-hosted template for remote compilation.
5. Browser clients will retain the ability to process templates locally for special circumstances, like offline interface receipts.
==
The WIP branch I posted to the list:
Will clean this up and repost w/ release notes, etc.
Changed in evergreen: | |
assignee: | nobody → Bill Erickson (berick) |
Changed in evergreen: | |
assignee: | nobody → Kyle Huckins (khuckins) |
Changed in evergreen: | |
assignee: | nobody → Bill Erickson (berick) |
Changed in evergreen: | |
assignee: | nobody → Galen Charlton (gmc) |
Changed in evergreen: | |
status: | Fix Committed → Fix Released |
Cleaned up branch pushed:
https:/ /git.evergreen- ils.org/ ?p=working/ Evergreen. git;a=shortlog; h=refs/ heads/user/ berick/ lp1825851- server- generated- print-templates
Paraphrasing part of the release notes:
To me, the main benefit of this feature is we have a way to manage print templates for Angular interfaces. Print templates for AngJS interfaces will have to be migrated to server-managed as each UI is ported to Angular. Whether we want to start migrating AngJS print templates before the interfaces are migrated is an open question.