INTRODUCTION:
I have created a form using Livecycle Designer 8.2 and Acrobat 9.4.
Its intended users are trusted people in the company so distribution is performed manually and security is not an issue.
- Upon being opened with Reader 9.4.1, the form's docReady event handler calls a trusted function (located in a .js file in the JavaScripts folder) which calls importXFAData() to populate a text field with a user name retrieved from an xml file.
- The user then enters a date into a text field.
- The user clicks a Save button on the form which performs the following:
- Set the presence of the Save button to invisible.
- Set the access of the date field to readOnly.
- Uses a trusted function to call saveAs() to save a copy of the form with no (pencil tool) signature. This will be printed off and signed by hand.
- Set the presence of the Save button to visible again.
- The user then uses the pencil tool to sign the form.
- They then click the Save button on the form which does the same thing as before, but the copy of the pdf form saved this time already contains a signature so they just keep this version on file without printing it.
After creating the form with Livecycle I used Acrobat to save the form with Enable Use Rights in Adobe Reader (click Advanced->Extend Features in Adobe Reader). This is so that the annotations (pencil tool) and programmatic saving is allowed in Reader.
After that I used Certify without Visible Signature, and I made up a Digital ID and permitted Annotations, form fill-in, and digital signatures. This is so that it allowed importXFAData() to import data from the xml file.
MY ISSUE:
I want the copies that are being saved (programmatically) to be saved without the certificate.
POSSIBLE SOLUTION:
I noticed that after adding the certificate that in the Signatures tab in Reader my certificate is displayed and if expanded it reveals that it has a Field associated with is called SignatureField1 (invisible signature).
The closest thing I could find to remove this was a function called removeField(), however I have no idea where to place the call to this in Livecycle, and if I use this to remove the SignatureField1 right before saving the first copy then the certificate won't be there to allow the second copy to be saved.