--- cdli/cdli_files.py 2006/02/28 15:17:52 1.8 +++ cdli/cdli_files.py 2006/03/15 14:56:48 1.9 @@ -20,13 +20,13 @@ class Basket_old(Folder): def getObjUrl(self,objId): """getUrl""" - founds=self.CDLICatalog.search({'path':objId}) + founds=self.CDLICatalog.search({'title':objId}) if len(founds)>0: return founds[0].getObject().absolute_url() else: #assume version number splitted=objId.split("_") - founds=self.CDLICatalog.search({'path':splitted[1]}) + founds=self.CDLICatalog.search({'title':splitted[1]}) return founds[0].getObject().absolute_url()+'/'+objId def storeAllLink(self,results): @@ -142,7 +142,7 @@ class BasketObject_old(Folder): """addObjects""" for id in ids: - founds=self.CDLICatalog.search({'path':id}) + founds=self.CDLICatalog.search({'title':id}) for found in founds: if found.getObject() not in self.contents: tm=self.contents[0:] @@ -247,7 +247,7 @@ class CDLIBasketContainer(OrderedFolder) """contains the baskets""" - + security=ClassSecurityInfo() meta_type="CDLIBasketContainer" @@ -259,8 +259,13 @@ class CDLIBasketContainer(OrderedFolder) return basket[0] else: None + + security.declareProtected('manage','uploadBasket_html') + def uploadBasket_html(self,basketId='0'): """upload an atf file, html form""" + + basketId=str(basketId) if not basketId=='0': basketName=getattr(self.basketContainer,basketId).title @@ -274,6 +279,9 @@ class CDLIBasketContainer(OrderedFolder) def index_html(self): """stanadard ansicht""" + + + ext=self.ZopeFind(self,obj_ids=["index.html"]) if ext: return ext[0][1]() @@ -662,7 +670,7 @@ class CDLIBasketVersion(SimpleItem): else: #assume version number splitted=objId.split("_") - founds=self.CDLICatalog.search({'path':splitted[1]}) + founds=self.CDLICatalog.search({'title':splitted[1]}) return founds[0].getObject().absolute_url()+'/'+objId def manage_addCDLIBasketVersion(self,user,comment="",basketContent=[],RESPONSE=None): @@ -768,7 +776,7 @@ class CDLIFile(versionedFile,CatalogAwar except: pass - author=self.REQUEST['author'] + author=self.REQUEST.SESSION['author'] if changeName=="yes": filename=file.filename @@ -871,7 +879,7 @@ class CDLIFileFolder(versionedFileFolder ret=[] searchStr=" OR ".join(ids) - founds=self.CDLICatalog.search({'path':searchStr}) + founds=self.CDLICatalog.search({'title':searchStr}) for found in founds: lastVersion=found.getObject().getLastVersion() @@ -893,6 +901,12 @@ class CDLIFileFolder(versionedFileFolder errors=[] newPs=[] basketNameFromFile, numberOfFiles=splitatf(upload,dir) + + if basketId == '0': + basketObj=self.basketContainer.getActiveBasket() + if basketObj: + basketId=basketObj.getId() + if basketId == '0': basketNameFromId="" basketLen=0 @@ -943,10 +957,13 @@ class CDLIFileFolder(versionedFileFolder uploadFns=[] for fn in uploadFns: - founds=self.CDLICatalog.search({'path':fn}) + print "UP:",fn + founds=self.CDLICatalog.search({'title':fn}) + print " -----",founds if len(founds)>0: - self.REQUEST['author']=str(self.REQUEST['AUTHENTICATED_USER']) - founds[0].getObject().manage_addCDLIFileObject('',comment,self.REQUEST['author'],file=file(os.path.join(self.REQUEST.SESSION['tmpdir'],fn))) + self.REQUEST.SESSION['author']=str(self.REQUEST['AUTHENTICATED_USER']) + print "-------- author:",self.REQUEST.SESSION['author'] + founds[0].getObject().manage_addCDLIFileObject('',comment,self.REQUEST.SESSION['author'],file=file(os.path.join(self.REQUEST.SESSION['tmpdir'],fn))) @@ -966,16 +983,19 @@ class CDLIFileFolder(versionedFileFolder unlockFns.append(x) for fn in unlockFns: - founds=self.CDLICatalog.search({'path':fn}) + founds=self.CDLICatalog.search({'title':fn}) if len(founds)>0: - self.REQUEST['author']=str(self.REQUEST['AUTHENTICATED_USER']) + self.REQUEST.SESSION['author']=str(self.REQUEST['AUTHENTICATED_USER']) founds[0].getObject().lockedBy="" if not (basketname ==''): basketId=self.basketFolder.getBasketIdfromName(basketname) - basket=getattr(self.basketFolder,basketId) + if not basketId: # create new basket + ob=self.basketContainer.addBasket(basketname) + basketId=ob.getId() + basket=getattr(self.basketFolder,str(basketId)) ids=os.listdir(self.REQUEST.SESSION['tmpdir']) basket.addObjects(ids,deleteOld=True)