|
@@ -25,6 +25,9 @@ from sqlalchemy.types import LargeBinary
|
25
|
25
|
from sqlalchemy.types import Text
|
26
|
26
|
from sqlalchemy.types import Unicode
|
27
|
27
|
|
|
28
|
+from depot.manager import DepotManager
|
|
29
|
+from depot.fields.sqlalchemy import UploadedFileField
|
|
30
|
+
|
28
|
31
|
from tracim.lib.utils import lazy_ugettext as l_
|
29
|
32
|
from tracim.lib.exception import ContentRevisionUpdateError
|
30
|
33
|
from tracim.model import DeclarativeBase, RevisionsIntegrity
|
|
@@ -544,6 +547,7 @@ class ContentRevisionRO(DeclarativeBase):
|
544
|
547
|
)
|
545
|
548
|
file_mimetype = Column(Unicode(255), unique=False, nullable=False, default='')
|
546
|
549
|
file_content = deferred(Column(LargeBinary(), unique=False, nullable=True))
|
|
550
|
+ depot_file_uid = Column(UploadedFileField, unique=False, nullable=True)
|
547
|
551
|
properties = Column('properties', Text(), unique=False, nullable=False, default='')
|
548
|
552
|
|
549
|
553
|
type = Column(Unicode(32), unique=False, nullable=False)
|
|
@@ -626,6 +630,10 @@ class ContentRevisionRO(DeclarativeBase):
|
626
|
630
|
setattr(new_rev, column_name, column_value)
|
627
|
631
|
|
628
|
632
|
new_rev.updated = datetime.utcnow()
|
|
633
|
+ # TODO APY tweaks here depot_file_uid
|
|
634
|
+ # import pudb; pu.db
|
|
635
|
+ # new_rev.depot_file_uid = DepotManager.get().get(revision.depot_file_uid)
|
|
636
|
+ new_rev.depot_file_uid = revision.file_content
|
629
|
637
|
|
630
|
638
|
return new_rev
|
631
|
639
|
|
|
@@ -1364,4 +1372,4 @@ class VirtualEvent(object):
|
1364
|
1372
|
else:
|
1365
|
1373
|
aff = '%d hour%s ago' % (delta.seconds/3600, 's' if delta.seconds/3600>=2 else '')
|
1366
|
1374
|
|
1367
|
|
- return aff
|
|
1375
|
+ return aff
|