--- versionedFile/extVersionedFile.py 2008/01/21 17:36:45 1.19 +++ versionedFile/extVersionedFile.py 2008/06/27 17:46:45 1.22 @@ -613,6 +613,13 @@ class extVersionedFileObject(ExtFile): self.time = time self.author = author + security.declareProtected('manage','changeObject') + def changeObject(self,**args): + """modify object""" + for arg in args: + if hasattr(self, arg): + logging.debug("changeObject arg:%s = %s"%(arg,args[arg])) + setattr(self, arg, args[arg]) security.declarePublic('getTitle') def getTitle(self): @@ -1018,6 +1025,19 @@ class extVersionedFile(CatalogAware,Fold ret.sort(sortv) return ret + def getVersionList(self): + """get a list of dicts with author, comment, filename, etc, of all versions""" + vl = [] + for v in self.objectValues(self.content_meta_type): + vl.append({'versionNumber':getattr(v,'versionNumber',0), + 'title':v.getTitle(), + 'id':v.getId(), + 'date':v.getTime(), + 'author':getattr(v,'author',''), + 'comment':getattr(v,'versionComment','') + }) + return vl + security.declareProtected('AUTHENTICATED_USER','forceunlock') def forceunlock(self,RESPONSE=None): """unlock"""