--- cdli/cdli_files.py 2011/04/27 16:19:27 1.117 +++ cdli/cdli_files.py 2011/12/05 12:39:31 1.120 @@ -195,6 +195,12 @@ class CDLIFile(extVersionedFile,CatalogA return pt() + def historyXML(self): + """history""" + + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','versionHistoryXML')).__of__(self) + return pt() + def getBasketFromId(self,basketid, context=None): """get basket from id""" @@ -763,6 +769,13 @@ class CDLIRoot(Folder): RESPONSE.redirect(ob[0].absolute_url+"/history") return "not found" + def historyXML(self,id,RESPONSE): + """view an Object""" + ob = self.CDLICatalog({'title':id}) + if len(ob)>0: + RESPONSE.redirect(ob[0].absolute_url+"/historyXML") + return "not found" + def downloadLocked(self,id,RESPONSE): """view an Object""" @@ -808,7 +821,8 @@ class CDLIRoot(Folder): return fileId x=self.v_files.get(fileId) logging.debug("obj: "+repr(x)) - if x==None: + if x is None: + logging.debug("fileId"+repr(fileId)) folder=fileId[0:3] f2=fileId[0:5] fObj = getattr(self.cdliRoot.cdli_main,folder); @@ -1243,7 +1257,39 @@ class CDLIRoot(Folder): return generateXMLReturn(stObj.returnValue) + + def uploadATFAsync(self,repeat=None,upload=None,basketId=0,RESPONSE=None): + """upload an atf file / basket file""" + #self._v_uploadATF.returnValue=None + + + idTmp=str(randint(0,1000000000)) + if upload is None: + return "ERROR NO FILE!" + + tmpFile = File("/tmp/idTmp","w") + # sicher basket in file + for x in upload.read(): + tmpFile.write(x) + + tmpFile.close(); + uploadATFAsync(baskerId,idTmp,basketId,self.REQUEST['AUTHENTICATED_USER'],idTmp,serverport=self.REQUEST['SERVER_PORT']) + + return idTMP + + def viewTicketAsync(self,ticketNr=1): + """viewticket""" + + tmp = pickle.load(file("/tmp/"+str(ticketNr)+".result")) + + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','uploadCheckAsync.zpt')).__of__(self) + + return pt(changed=tmp['changed'],lockerrors=tmp['lockerrors'],errors=tmp['errors'],dir=tmp['dir'],newPs=tmp['newPs'],basketLen=tmp['basketLen'],numberOfFiles=tmp['numberOfFiles'], + basketNameFromId=tmp['basketNameFromId'],basketNameFromFile=tmp['basketNameFromFile'],basketId=tmp['basketId']) + + + def uploadATF(self,repeat=None,upload=None,basketId=0,RESPONSE=None): """upload an atf file / basket file""" #self._v_uploadATF.returnValue=None @@ -1315,6 +1361,7 @@ class CDLIRoot(Folder): return pt(changed=tmp['changed'],lockerrors=tmp['lockerrors'],errors=tmp['errors'],dir=tmp['dir'],newPs=tmp['newPs'],basketLen=tmp['basketLen'],numberOfFiles=tmp['numberOfFiles'], basketNameFromId=tmp['basketNameFromId'],basketNameFromFile=tmp['basketNameFromFile'],basketId=tmp['basketId']) + def redoUpload(self,threadName): """redo the upload""" tmp=self.cdli_main.tmpStore2[threadName] @@ -1407,7 +1454,11 @@ class CDLIRoot(Folder): obj=self.ZopeFind(root,obj_ids=[folder]) logging.debug("importFiles: folder=%s f2=%s obj=%s"%(folder,f2,obj)) if ext: - ext.result="

adding: %s

"%f+ext.result + + if type(ext.result) is types.FileType: + ext.result.write("

adding: %s

\n"%f) + else: + ext.result="

adding: %s

"%f+ext.result if not obj: # if not create it