version 1.35, 2010/03/31 17:07:43
|
version 1.38, 2011/12/05 07:42:38
|
Line 427 class extVersionedFileFolder(Folder,ECHO
|
Line 427 class extVersionedFileFolder(Folder,ECHO
|
return cmp(x[1].title.lower(),y[1].title.lower()) |
return cmp(x[1].title.lower(),y[1].title.lower()) |
|
|
def sortDate(x,y): |
def sortDate(x,y): |
|
|
return cmp(y[1].getContentObject().getTime(),x[1].getContentObject().getTime()) |
return cmp(y[1].getContentObject().getTime(),x[1].getContentObject().getTime()) |
|
|
def sortComment(x,y): |
def sortComment(x,y): |
Line 446 class extVersionedFileFolder(Folder,ECHO
|
Line 447 class extVersionedFileFolder(Folder,ECHO
|
except: |
except: |
xc='ZZZZZZZZZZZZZ'.lower() |
xc='ZZZZZZZZZZZZZ'.lower() |
|
|
|
|
if (yc=='') or (yc=='ZZZZZZZZZZZZZ'.lower()): |
if (yc=='') or (yc=='ZZZZZZZZZZZZZ'.lower()): |
try: |
try: |
yc=y[1].getContentObject().getVComment().lower() |
yc=y[1].getContentObject().getVComment().lower() |
except: |
except: |
yc='ZZZZZZZZZZZZZ'.lower() |
yc='ZZZZZZZZZZZZZ'.lower() |
|
|
|
|
return cmp(xc,yc) |
return cmp(xc,yc) |
|
|
def sortAuthor(x,y): |
def sortAuthor(x,y): |
|
|
return cmp(x[1].getContentObject().lastEditor().lower(),y[1].getContentObject().lastEditor().lower()) |
return cmp(x[1].getContentObject().lastEditor().lower(),y[1].getContentObject().lastEditor().lower()) |
|
|
|
|
|
def sortVersionComment(x,y): |
|
|
|
return cmp(x[1].getContentObject().getVersionComment().lower(),y[1].getContentObject().getVersionComment().lower()) |
|
|
versionedFiles=self.objectItems(self.file_meta_type) |
versionedFiles=self.objectItems(self.file_meta_type) |
logging.debug("versionedfiles: %s of type %s"%(repr(versionedFiles),repr(self.file_meta_type))) |
logging.debug("versionedfiles: %s of type %s"%(repr(versionedFiles),repr(self.file_meta_type))) |
|
|
Line 467 class extVersionedFileFolder(Folder,ECHO
|
Line 475 class extVersionedFileFolder(Folder,ECHO
|
versionedFiles.sort(sortDate) |
versionedFiles.sort(sortDate) |
elif sortField=='author': |
elif sortField=='author': |
versionedFiles.sort(sortAuthor) |
versionedFiles.sort(sortAuthor) |
|
elif sortField=='versioncomment': |
|
versionedFiles.sort(sortVersionComment) |
elif sortField=='comment': |
elif sortField=='comment': |
versionedFiles.sort(sortComment) |
versionedFiles.sort(sortComment) |
|
|
|
|
return versionedFiles |
return versionedFiles |
|
|
|
|
Line 745 class extVersionedFileObject(ExtFile):
|
Line 756 class extVersionedFileObject(ExtFile):
|
"""download and lock""" |
"""download and lock""" |
if repr(self.REQUEST['AUTHENTICATED_USER'])=='Anonymous User': |
if repr(self.REQUEST['AUTHENTICATED_USER'])=='Anonymous User': |
return "please login first" |
return "please login first" |
if not self.aq_parent.lockedBy=="": |
if (not ((self.aq_parent.lockedBy=="") or (self.aq_parent.lockedBy==None))): |
return "cannot be locked because is already locked by %s"%self.lockedBy |
return "cannot be locked because is already locked by %s"%self.lockedBy |
self.aq_parent.lockedBy=self.REQUEST['AUTHENTICATED_USER'] |
self.aq_parent.lockedBy=self.REQUEST['AUTHENTICATED_USER'] |
|
|
Line 758 class extVersionedFileObject(ExtFile):
|
Line 769 class extVersionedFileObject(ExtFile):
|
return self.versionNumber |
return self.versionNumber |
|
|
security.declarePublic('getVersionComment') |
security.declarePublic('getVersionComment') |
def getVersionComment(self): |
|
"""get version""" |
|
return self.versionComment |
|
|
|
security.declarePublic('lastEditor') |
security.declarePublic('lastEditor') |
def lastEditor(self): |
def lastEditor(self): |
Line 966 class extVersionedFile(CatalogAware,Fold
|
Line 975 class extVersionedFile(CatalogAware,Fold
|
security.declarePublic('getLastVersion') |
security.declarePublic('getLastVersion') |
def getLastVersion(self): |
def getLastVersion(self): |
"""Last Version (old)""" |
"""Last Version (old)""" |
tmp=0 |
# tmp=0 |
lv=None |
# lv=None |
|
# |
for v in self.objectValues(self.content_meta_type): |
# for v in self.objectValues(self.content_meta_type): |
#logging.debug("getlastversion: check %s"%v.getId()) |
# #logging.debug("getlastversion: check %s"%v.getId()) |
if v.getVersionNumber() > tmp: |
# if v.getVersionNumber() > tmp: |
tmp=v.getVersionNumber() |
# tmp=v.getVersionNumber() |
lv=v |
# lv=v |
|
# |
#ogging.debug("getlastversion: got %s"%lv.getId()) |
# #ogging.debug("getlastversion: got %s"%lv.getId()) |
return lv |
# return lv |
|
return self.getContentObject(); |
|
|
def getContentObject(self): |
def getContentObject(self): |
"""returns the last version object""" |
"""returns the last version object""" |
if not getattr(self, 'lastVersionId', None): |
if (not getattr(self, 'lastVersionId', None)) or (not getattr(self, self.lastVersionId, None)): |
# find last version and save it |
# find last version and save it |
lv = self.findLastVersion() |
lv = self.findLastVersion() |
if lv is None: |
if lv is None: |
return None |
return None |
self.lastVersionNumber = lv.getVersionNumber() |
self.lastVersionNumber = lv.getVersionNumber() |
self.lastVersionId = lv.getId() |
self.lastVersionId = lv.getId() |
|
|
return getattr(self, self.lastVersionId, None) |
return getattr(self, self.lastVersionId, None) |
|
|
security.declarePublic('getData') |
security.declarePublic('getData') |
Line 1048 class extVersionedFile(CatalogAware,Fold
|
Line 1057 class extVersionedFile(CatalogAware,Fold
|
"""get version with number nr""" |
"""get version with number nr""" |
tmp=0 |
tmp=0 |
lastVersion=None |
lastVersion=None |
|
logging.debug(self.absolute_url()) |
for version in self.ZopeFind(self): |
for version in self.ZopeFind(self): |
|
logging.debug("getVersionNr :"+repr(version)) |
|
logging.debug("nr:"+str(nr)) |
if hasattr(version[1],'versionNumber'): |
if hasattr(version[1],'versionNumber'): |
|
logging.debug("vn:"+repr(version[1].versionNumber)) |
if int(version[1].versionNumber) ==nr : |
if int(version[1].versionNumber) ==nr : |
return version[1] |
return version[1] |
|
logging.debug("nothing") |
return None |
return None |
|
|
security.declarePublic('getVersion') |
security.declarePublic('getVersion') |
Line 1197 class extVersionedFile(CatalogAware,Fold
|
Line 1210 class extVersionedFile(CatalogAware,Fold
|
|
|
if str(self.REQUEST['AUTHENTICATED_USER']) in ["Anonymous User"]: |
if str(self.REQUEST['AUTHENTICATED_USER']) in ["Anonymous User"]: |
return "please login first" |
return "please login first" |
if (self.lockedBy==self.REQUEST['AUTHENTICATED_USER']) or (self.lockedBy==''): |
if (self.lockedBy==self.REQUEST['AUTHENTICATED_USER']) or (self.lockedBy=='') or (self.lockedBy==None): |
ext=self.ZopeFind(self.aq_parent,obj_ids=["addNewVersion.dtml"]) |
ext=self.ZopeFind(self.aq_parent,obj_ids=["addNewVersion.dtml"]) |
if ext: |
if ext: |
return ext[0][1]('',globals(),version=self.getVersion(),lastComment=self.getContentObject().getVersionComment(),AUTHENTICATED_USER=self.REQUEST.AUTHENTICATED_USER) |
return ext[0][1]('',globals(),version=self.getVersion(),lastComment=self.getContentObject().getVersionComment(),AUTHENTICATED_USER=self.REQUEST.AUTHENTICATED_USER) |
Line 1269 class extVersionedFile(CatalogAware,Fold
|
Line 1282 class extVersionedFile(CatalogAware,Fold
|
|
|
if repr(self.REQUEST['AUTHENTICATED_USER'])=='Anonymous User': |
if repr(self.REQUEST['AUTHENTICATED_USER'])=='Anonymous User': |
return "please login first" |
return "please login first" |
if not self.lockedBy=="": |
if not ((self.lockedBy=="") or (self.lockedBy==None)): |
return "cannot be locked because is already locked by %s"%self.lockedBy |
return "cannot be locked because is already locked by %s"%self.lockedBy |
self.lockedBy=self.REQUEST['AUTHENTICATED_USER'] |
self.lockedBy=self.REQUEST['AUTHENTICATED_USER'] |
self.getContentObject().content_type="application/octet-stream" |
self.getContentObject().content_type="application/octet-stream" |