41 lines
849 B
Python
41 lines
849 B
Python
from __future__ import unicode_literals
|
|
|
|
from django.utils.translation import ugettext
|
|
|
|
|
|
class DocumentCheckoutError(Exception):
|
|
"""
|
|
Base checkout exception
|
|
"""
|
|
pass
|
|
|
|
|
|
class DocumentCheckoutWarning(Warning):
|
|
"""
|
|
Base checkout warning
|
|
"""
|
|
pass
|
|
|
|
|
|
class DocumentNotCheckedOut(DocumentCheckoutError):
|
|
"""
|
|
Raised when trying to checkin a document that is not checkedout
|
|
"""
|
|
pass
|
|
|
|
|
|
class DocumentAlreadyCheckedOut(DocumentCheckoutError):
|
|
"""
|
|
Raised when trying to checkout an already checkedout document
|
|
"""
|
|
def __unicode__(self):
|
|
return ugettext('Document already checked out.')
|
|
|
|
|
|
class NewDocumentVersionNotAllowed(DocumentCheckoutWarning):
|
|
"""
|
|
Uploading new versions for this document is not allowed
|
|
Current reasons: Document is in checked out state
|
|
"""
|
|
pass
|