version 1.4, 2006/02/02 19:19:24
|
version 1.5, 2006/02/13 20:35:35
|
Line 250 class CDLIBasketContainer(OrderedFolder)
|
Line 250 class CDLIBasketContainer(OrderedFolder)
|
|
|
meta_type="CDLIBasketContainer" |
meta_type="CDLIBasketContainer" |
|
|
|
def getBasketIdfromName(self,basketname): |
|
"""get id from name""" |
|
|
|
for basket in self.ZopeFind(self,obj_metatypes=["CDLIBasket"]): |
|
if basket[1].title==basketname: |
|
return basket[0] |
|
else: |
|
None |
def uploadBasket_html(self,basketId='0'): |
def uploadBasket_html(self,basketId='0'): |
"""upload an atf file, html form""" |
"""upload an atf file, html form""" |
basketId=str(basketId) |
basketId=str(basketId) |
Line 408 def manage_addCDLIBasketContainer(self,i
|
Line 415 def manage_addCDLIBasketContainer(self,i
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
class CDLIBasket(Folder): |
class CDLIBasket(Folder,CatalogAware): |
"""basket""" |
"""basket""" |
|
|
meta_type="CDLIBasket" |
meta_type="CDLIBasket" |
|
default_catalog="CDLIBasketCatalog" |
|
|
def getFile(self,obj): |
def getFile(self,obj): |
return obj[1] |
return obj[1] |
Line 419 class CDLIBasket(Folder):
|
Line 427 class CDLIBasket(Folder):
|
def getFileLastVersion(self,obj): |
def getFileLastVersion(self,obj): |
return obj[0] |
return obj[0] |
|
|
|
def getFileNamesInLastVersion(self): |
|
"""get content of the last version as list""" |
|
|
|
return [x[1].getId() for x in self.getLastVersion().getContent()] |
|
|
def isActual(self,obj): |
def isActual(self,obj): |
"""teste ob im basket die aktuelle version ist""" |
"""teste ob im basket die aktuelle version ist""" |
actualNo=obj[1].getLastVersion().getVersionNumber() |
actualNo=obj[1].getLastVersion().getVersionNumber() |
Line 707 class CDLIFile(versionedFile,CatalogAwar
|
Line 720 class CDLIFile(versionedFile,CatalogAwar
|
meta_type="CDLI file" |
meta_type="CDLI file" |
default_catalog='CDLICatalog' |
default_catalog='CDLICatalog' |
|
|
|
def isContainedInBaskets(self): |
|
"""check is this file is part of any basket""" |
|
|
|
return [x.getObject() for x in self.CDLIBasketCatalog.search({'getFileNamesInLastVersion':self.getId()})] |
|
|
|
|
|
def addCDLIFileObjectForm(self): |
|
"""add a new version""" |
|
|
|
if str(self.REQUEST['AUTHENTICATED_USER']) in ["Anonymous User"]: |
|
return "please login first" |
|
if (self.lockedBy==self.REQUEST['AUTHENTICATED_USER']) or (self.lockedBy==''): |
|
out=DTMLFile('dtml/fileAdd', globals(),Kind='CDLIFileObject',kind='CDLIFileObject',version=self.getVersion()).__of__(self) |
|
return out() |
|
else: |
|
return "Sorry file is locked by somebody else" |
|
|
def manage_addCDLIFileObject(self,id,vC,author,file='',title='',precondition='', content_type='',changeName='no',newName='', RESPONSE=None): |
def manage_addCDLIFileObject(self,id,vC,author,file='',title='',precondition='', content_type='',changeName='no',newName='', RESPONSE=None): |
"""add""" |
"""add""" |
try: #TODO: der ganze vC unsinn muss ueberarbeitet werden |
try: #TODO: der ganze vC unsinn muss ueberarbeitet werden |
Line 785 def splitatf(fh,dir=None):
|
Line 815 def splitatf(fh,dir=None):
|
#check if basket name is in the first line |
#check if basket name is in the first line |
if line.find("#atf basket")>=0: |
if line.find("#atf basket")>=0: |
ret=line.replace('#atf basket ','') |
ret=line.replace('#atf basket ','') |
|
ret=ret.split('_')[0] |
else: |
else: |
if (len(line.lstrip())>0) and (line.lstrip()[0]=="&"): #newfile |
if (len(line.lstrip())>0) and (line.lstrip()[0]=="&"): #newfile |
if nf: |
if nf: |
Line 800 def splitatf(fh,dir=None):
|
Line 831 def splitatf(fh,dir=None):
|
|
|
nf.close() |
nf.close() |
fh.close() |
fh.close() |
return ret.split('_')[0],len(os.listdir(dir)) |
return ret,len(os.listdir(dir)) |
|
|
class CDLIFileFolder(versionedFileFolder): |
class CDLIFileFolder(versionedFileFolder): |
"""CDLI File Folder""" |
"""CDLI File Folder""" |
Line 873 class CDLIFileFolder(versionedFileFolder
|
Line 904 class CDLIFileFolder(versionedFileFolder
|
return pt(changed=changed,errors=errors,dir=dir,newPs=newPs,basketLen=basketLen,numberOfFiles=numberOfFiles, |
return pt(changed=changed,errors=errors,dir=dir,newPs=newPs,basketLen=basketLen,numberOfFiles=numberOfFiles, |
basketNameFromId=basketNameFromId,basketNameFromFile=basketNameFromFile,basketId=basketId) |
basketNameFromId=basketNameFromId,basketNameFromFile=basketNameFromFile,basketId=basketId) |
|
|
def uploadATFfinally(self,procedure,comment="",basketId='0',unlock=None,RESPONSE=None): |
def uploadATFfinally(self,procedure,comment="",basketname='',unlock=None,RESPONSE=None): |
"""upload the files""" |
"""upload the files""" |
|
|
if procedure=="uploadchanged": |
if procedure=="uploadchanged": |
Line 917 class CDLIFileFolder(versionedFileFolder
|
Line 948 class CDLIFileFolder(versionedFileFolder
|
|
|
founds[0].getObject().lockedBy="" |
founds[0].getObject().lockedBy="" |
|
|
if not (basketId =='0'): |
if not (basketname ==''): |
|
basketId=self.basketFolder.getBasketIdfromName(basketname) |
|
|
basket=getattr(self.basketFolder,basketId) |
basket=getattr(self.basketFolder,basketId) |
ids=os.listdir(self.REQUEST.SESSION['tmpdir']) |
ids=os.listdir(self.REQUEST.SESSION['tmpdir']) |
basket.addObjects(ids,deleteOld=True) |
basket.addObjects(ids,deleteOld=True) |