Document cloud's document viewer integration into plone.
This package integrates documentcloud’s viewer and pdf processing into plone.
- very nice document viewer
- Searchable on OCR text
- works with many different document types
- plone.app.async integration with task monitor
- lots of configuration options
- PDF Album view for display groups of PDFs
Besides displaying PDFs, it will also display:
- docsplit: http://documentcloud.github.com/docsplit/
- openoffice(for doc, excel, ppt, etc types)
- md5 or md5sum command line tool
It it highly recommended to install and configure plone.app.async in combination with this package. Doing so will manage all pdf conversions processes asynchronously so the user isn’t delayed so much when saving files.
The product can be configured via a control panel item
Document Viewer Settings.
Some interesting configuration options:
- Storage Type
- If you want to be able to serve you files via amazon cloud, this will allow you to store the data in flat files that can be synced to another server.
- Storage Location
- Where are the server to store the files.
- Use tesseract to scan the document for text. This process ca be slow so if your pdfs do not need to be OCR’d, you may disable.
- Auto Select Layout
- For pdf files added to the site, automatically select the document viewer display.
- Auto Convert
- When pdf files are added and modified, automatically convert.
- Auto layout file types
- Types that should automatically be converted to document viewer
File storage integration
If you choose to use basic file storage instead of zodb blob storage, there are a few things you’ll want to keep in mind.
- Use nginx to then serve the file system files. This might require you install a local nginx just for serving file storage on the plone server. You can get creative with how your file storage is used though.
- Since in plone’s operation, it can be interrupted and the deletion
of a file on the OS system system can not be done within a transaction,
no files are ever deleted. However, there is an action you can
put in a cron task to clean up your file storage directory. Just call the
Upgrading from page turner
If you currently have page turner installed, this project will supercede it. Your page turner views will work but no future files added to the site will be converted to page turner.
To convert existing view, on every page turner enabled file, there will
be a button
Document Viewer Convert that you can click to manually
convert page turner to document viewer.
To convert all existing views, go to portal_setup in the zmi, upgrades,
select collective.documentviewer, click to show old upgrades and there
should be an
upgrade-all step to run.
Upgrading from pdfpal
If you want to upgrade from pdfpal, it is recommended that you simply uninstall pdf pal.
Document viewer will disable parts of pdfpal if installed with it otherwise. If you still want both installed, you’ll need to upgrade to at least version 0.7b5 in order for it to play nice with document viewer.
Also, version 0.7b6 has the best uninstall support so if you’re going to uninstall the product, first upgrade your egg to 0.7b6.
- check why there are some error during async operations:
- ConflictError: database conflict error (oid 0x4d10, class BTrees.IOBTree.IOBucket, serial this txn started with 0x0395f478bc2cb377 2012-04-21 03:36:44.103425, serial currently committed 0x0395f479b09de4cc 2012-04-21 03:37:41.394556)
- ERROR ZODB.Connection Shouldn’t load state for 0x319d when the connection is closed
- fix security on file resources
- no changes
- be able to move jobs to front of queue
- use portal_catalog instead of uid_catalog so security checks apply to resource urls.
- no changes, first final release
- create local catalog and index before syncing db to prevent conflict errors.
- add redirect timeout to conversion info page
- make sure to close open file descriptors
- Change “Original Document (PDF)” to “Original Document”
- emit event after conversion
- only show queue link if manager
- convert button should work for files that do not have layout selected yet
- use communicate instead of wait with popen in case output is large. Prevents deadlocks.
- do not assume pdfpal is used along with pageturner on data conversion.
- better command runner
- track errors better and display them in interface if something happened during conversion
- new file storage structure to prevent too many files from being in one directory
- fix full screen button when text or pages selected.
- be able to customize batch size
- make sure to not use files with spaces
- be able to detect if pdf already has text in it and do not OCR it if it does.
- use jQuery instead of $()
- default OCR to being off since it’s pretty slow
- better logging when looking for binary files
- be able to override width of viewer
- fix uninstall [vangheem]
- fix async bug if it wasn’t installed [vangheem]
- make sure to initialize catalog after db sync for large PDFs. [vangheem]
- better integrate with pdfpal and pageturner so it’s easy to upgrade from those products. [vangheem]
- fix setting custom quota for async queue [vangheem]
- fix group view clear button [vangheem]
- add support for alternative md5sum binary [vangheem]
- fix full screen page bug [vangheem]
- better async integration with quota setting [vangheem]
- View async queue for conversions [vangheem]
- index ocr data in portal catalog [vangheem]
- better pdf group view with search [vangheem]
- handle large files better [vangheem]
- check if file has already been converted by storing hash of the file to check against. [vangheem]
- be able to remove document viewer conversion tasks [vangheem]
- add ability to cleanup file storage files for deleted plone File objects. [vangheem]
- add pdf folder album view [vangheem]
- fix async integration [vangheem]
- add control panel icon [vangheem]
- fix uninstall procedure [vangheem]
- changing image type does not cause existing ones to fail. [vangheem]
- Initial release