Add configuration mappings to allow for definition of templates
Rather than hardcode every single document type, I'd like to implement a system that allows us to define these as configuration items. While the configuration would be complex, it reduces the burden to add new signature request types, so long as they follow a typical process. Looking into the original Hellosign code, below are the general fields/concepts that need to be mapped:
- Alias (human-readable ID)
- Document Version + ID
- Mod log message
- Comments
- Related docs (doc ID + Title)
- Revoked documents
- Filename pattern
Additional support may be required for the following fields which will add operations to the request process:
- Is MCCA: Requires iterating over employees to create CLA requests
Here is an example of the configuration I am aiming to create:
eclipse.hellosign.templates."eca".template-name=Eclipse Foundation ECA
eclipse.hellosign.templates."eca".template-id=123456789
eclipse.hellosign.templates."eca".file-name-pattern=ECA_{$name}_sample.pdf
eclipse.hellosign.templates."eca".document.id=123456
eclipse.hellosign.templates."eca".document.version=1.1
eclipse.hellosign.templates."eca".foundation.comment=Automated ECA document sample
eclipse.hellosign.templates."eca".foundation.mod-log=Message for modlog
eclipse.hellosign.templates."eca".related-docs[0].id=456789
eclipse.hellosign.templates."eca".related-docs[0].version=1
eclipse.hellosign.templates."eca".related-docs[0].message=Committer Membership Agreement
eclipse.hellosign.templates."eca".revoked-documents=123,456,789