Simple lua library to replace tags in the docx template file.
localsock_file='/home/rogon/tmp/exec.sock' localtmp_dir='/home/myhome/tmpdir'localdocx=require'docx'localdocx_cleaner=require'docx-cleaner'localdc=docx_cleaner.new(tmp_dir, sock_file_path)
localcleaned_docx=dc:clean_xml(./tmp/docx-tpl.docx')localdoc=docx.new(tmp_dir)
localok, err=doc:replace_tags(cleaned_docx, { ['#matters.name#'] ='Some name',
['#matters.email#'] ='some@email.com'
})
-- copy docx file to public web directorylocalres, err=os.rename(cleaned_docx, '/var/www/public/20170601.docx')
Forward the browser url point to this file eg: https://mydomain.com/20170601.docx
- tmp_file_dir string output file directory
- docx_tpl_path string docx file with full path
- tags table table of tag -> value
- return boolean, err
It is important to configure the lua-docx-xml-cleaner in order for lua-docx to work properly.
#luarocks install --server=http://luarocks.org/dev lua-zip
#luarocks install lua-docx-xml-cleaner
#luarocks install lua-docx