Added distributed OCR queue support
This commit is contained in:
@@ -76,6 +76,6 @@ register_model_list_columns(Document, [
|
||||
register_menu([
|
||||
{'text':_('documents'), 'view':'document_create', 'links':[
|
||||
document_create, document_create_multiple, document_list
|
||||
],'famfam':'page','position':4}])
|
||||
],'famfam':'page','position':1}])
|
||||
|
||||
TEMPORARY_DIRECTORY = common_settings.TEMPORARY_DIRECTORY if common_settings.TEMPORARY_DIRECTORY else tempfile.mkdtemp()
|
||||
|
||||
@@ -34,6 +34,7 @@ STAGING_DIRECTORY = getattr(settings, 'DOCUMENTS_STAGING_DIRECTORY', u'/tmp/maya
|
||||
DELETE_STAGING_FILE_AFTER_UPLOAD = getattr(settings, 'DOCUMENTS_DELETE_STAGING_FILE_AFTER_UPLOAD', False)
|
||||
STAGING_FILES_PREVIEW_SIZE = getattr(settings, 'DOCUMENTS_STAGING_FILES_PREVIEW_SIZE', '640x480')
|
||||
DELETE_LOCAL_ORIGINAL = getattr(settings, 'DOCUMENTS_DELETE_LOCAL_ORIGINAL', False)
|
||||
AUTOMATIC_OCR = getattr(settings, 'DOCUMENTS_AUTOMATIC_OCR', False)
|
||||
|
||||
# Saving
|
||||
CHECKSUM_FUNCTION = getattr(settings, 'DOCUMENTS_CHECKSUM_FUNCTION', lambda x: hashlib.sha256(x).hexdigest())
|
||||
|
||||
@@ -30,6 +30,8 @@ from forms import DocumentTypeSelectForm, DocumentCreateWizard, \
|
||||
|
||||
from staging import StagingFile
|
||||
|
||||
from ocr.models import add_document_to_queue
|
||||
|
||||
from documents.conf.settings import DELETE_STAGING_FILE_AFTER_UPLOAD
|
||||
from documents.conf.settings import USE_STAGING_DIRECTORY
|
||||
from documents.conf.settings import FILESYSTEM_FILESERVING_ENABLE
|
||||
@@ -39,6 +41,7 @@ from documents.conf.settings import THUMBNAIL_SIZE
|
||||
from documents.conf.settings import GROUP_MAX_RESULTS
|
||||
from documents.conf.settings import GROUP_SHOW_EMPTY
|
||||
from documents.conf.settings import DEFAULT_TRANSFORMATIONS
|
||||
from documents.conf.settings import AUTOMATIC_OCR
|
||||
|
||||
|
||||
from documents import PERMISSION_DOCUMENT_CREATE, \
|
||||
@@ -130,6 +133,9 @@ def upload_document_with_type(request, document_type_id, multiple=True):
|
||||
instance.update_mimetype()
|
||||
instance.update_page_count()
|
||||
instance.apply_default_transformations()
|
||||
if AUTOMATIC_OCR:
|
||||
document_queue = add_document_to_queue(instance)
|
||||
messages.success(request, _(u'Document: %s was added to the OCR queue: %s.') % (instance, document_queue.label))
|
||||
|
||||
if 'document_type_available_filenames' in local_form.cleaned_data:
|
||||
if local_form.cleaned_data['document_type_available_filenames']:
|
||||
@@ -165,7 +171,9 @@ def upload_document_with_type(request, document_type_id, multiple=True):
|
||||
document.update_mimetype()
|
||||
document.update_page_count()
|
||||
document.apply_default_transformations()
|
||||
|
||||
if AUTOMATIC_OCR:
|
||||
document_queue = add_document_to_queue(instance)
|
||||
messages.success(request, _(u'Document: %s was added to the OCR queue: %s.') % (instance, document_queue.label))
|
||||
except Exception, e:
|
||||
messages.error(request, e)
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user