Package: docassemble.AssemblyLine
Suffolk LIT Lab Document Assembly LineThe Assembly Line Project is a collection of volunteers, students, and institutions who joined together
during the COVID-19 pandemic to help increase access to the court system. Our vision is mobile-friendly,
easy to useguidedonline forms that help empower litigants to access the court remotely.Our signature project isCourtFormsOnline.org.We designed a step-by-step, assembly line style process for automating court forms on top of Docassemble
and built several tools along the way thatyoucan use in your home jurisdiction.This package containsruntime codeandpre-written questionsto support authoring robust,
consistent, and attractive Docassemble interviews that help complete court forms.Read more on ourdocumentation page.Related repositorieshttps://github.com/SuffolkLitLab/docassemble-ALWeaverhttps://github.com/SuffolkLitLab/docassemble-ALMassachusettshttps://github.com/SuffolkLitLab/docassemble-MassAccesshttps://github.com/SuffolkLitLab/docassemble-ALThemeTemplatehttps://github.com/SuffolkLitLab/EfileProxyServerDocumentationhttps://suffolklitlab.org/docassemble-AssemblyLine-documentation/InstallationMenu-driven installationThe recommended installation method is with theguided installation script.Manual installationNormally you do not need to manually install the Assembly Line. Use theinstallation scriptif you can. The instructions below are for your optional reference.This package depends on the following configuration changes on your Docassemble server:Ensure thatfont-awesomeis enabled (this may be on by default:default icons:font awesomeAdd aGoogle API keythat has access to:Google Places APIGoogle Geocoding APIAdd aVoiceRSS API keyAdd aTwilio API keyfor SMS supportAdd an email account:MailgunorSendGridrecommended for email supportTo show package update time and to enable the feedback form, add a GitHub Private Access token to your config.yml file, like this:# Needs access to create new issues on repositoriesgithub issues:username:"suffolklitlab-issues"token:"12345"# Does not need any special access to public repositoriesgithub readonly:username:"suffolklitlab-issues"password:"45678"type:"basic"If you are also using theAssembly Line Weaver, you may want to set up aDocassemble API keyin your config.yml file to allow you to install packages automatically, like this:install packages api key:12345MigrationSeediscussion hereALDocument classPurposeThe ALDocument class is a small utility library that makes it simpler to use the following features in an interview:Conditional assembly of multiple, optional documents that are triggered in different ways in your interviewAn addendum for PDF files that makes it simple to deal with overflow textA customizable download screen that lists the documents in a neat tableA customizable "send" button that allows the user to email the final forms to a location of their choiceHere is a small snippet that you can copy and modify that shows how to use the most important features of the ALDocument class.---
objects:
  - CRA_Motion_to_Dismiss_attachment: ALDocument.using(filename="CRA_Motion_to_Dismiss", title="Motion to Dismiss CRA", enabled=True, has_addendum=True, default_overflow_message="[See addendum]")  
---
objects:
  - al_user_bundle: ALDocumentBundle.using(elements=[CRA_Motion_to_Dismiss_attachment], title="Forms to download and deliver to court", filename="motion_to_dismiss_CRA.pdf")
  - al_court_bundle: ALDocumentBundle.using(elements=[CRA_Motion_to_Dismiss_attachment], title="Forms to download and deliver to court", filename="motion_to_dismiss_CRA.pdf")
---
generic object: ALDocument
attachment:
  variable name: x.addendum
  docx template file: docx_addendum.docx
---
code: |
  CRA_Motion_to_Dismiss_attachment.overflow_fields['reasons_for_request'].overflow_trigger = 640
  CRA_Motion_to_Dismiss_attachment.overflow_fields['reasons_for_request'].label = "Reasons for request"
  CRA_Motion_to_Dismiss_attachment.overflow_fields.gathered = True
  
---
attachment:
    variable name: CRA_Motion_to_Dismiss_attachment[i]
    name: CRA Motion to Dismiss
    filename: CRA_Motion_to_Dismiss
    skip undefined: True
    pdf template file: CRA_Motion_to_Dismiss.pdf
    fields: 
      - "court_county": ${ trial_court.address.county }
      - "docket_number": ${ docket_number }
      - "user_signature": ${ users[0].signature_if_final(i) }
      - "signature_date": ${ signature_date }It is very common to have acontingentdocument in ALDocument. If your document is contingent, remove theenabled=Truefrom the object declaration, and use
some other method to "turn on" the attachment.E.g.,code: |
  CRA_Motion_to_Dismiss_attachment.enabled = condition1 and condition2ChangelogSeeCHANGELOG.MD