--- cdli/cdli_files.py 2007/03/19 18:34:34 1.68 +++ cdli/cdli_files.py 2007/03/20 10:49:15 1.69 @@ -425,11 +425,13 @@ class uploadATFThread(Thread): #if not than add filename to the list of newfiles data=file(os.path.join(dir,fn)).read() - #status,msg=checkFile(fn,data,dir) - status=True - msg="" + status,msg=checkFile(fn,data,dir) + #status=True + + if not status: # error errors.append((fn,msg)) + else: if len(founds)==0: newPs.append(fn) @@ -453,7 +455,7 @@ class uploadATFThread(Thread): stObj.returnValue={} stObj.returnValue['errors']=errors - + stObj.returnValue['newPs']=newPs stObj.returnValue['tmpdir']=dir stObj.returnValue['basketLen']=basketLen @@ -1420,7 +1422,14 @@ def manage_addCDLIFile(self,id,title,loc if RESPONSE is not None: RESPONSE.redirect('manage_main') - +def checkUTF8(data): + """check utf 8""" + try: + data.encode('utf-8') + return True + except: + return False + def checkFile(filename,data,folder): """check the files""" @@ -1431,17 +1440,22 @@ def checkFile(filename,data,folder): return False,"P missing in the filename" elif len(fn[0])!=7: return False,"P number has not the right length 6" + elif not checkUTF8(data): + return False,"not utf-8" else: - fn=os.path.join(folder,filename) - stin,out=os.popen4("/usr/bin/atfcheck.plx %s"%fn) - value=out.read() - ret= out.close() - - if value: - - return False,"atf checker error: %s"%value - else: - return True,"" + return True,"" + +# else: +# fn=os.path.join(folder,filename) +# stin,out=os.popen4("/usr/bin/atfcheck.plx %s"%fn) +# value=out.read() +# ret= out.close() +# +# if value: +# +# return False,"atf checker error: %s"%value +# else: +# return True,"" def splitatf(fh,dir=None,ext=None): """split it""" @@ -2024,7 +2038,7 @@ class CDLIRoot(Folder): def uploadATF(self,repeat=None,upload=None,basketId=0,RESPONSE=None): - """standard ausgabe""" + """upload an atf file / basket file""" #self._v_uploadATF.returnValue=None from random import randint if (not self.REQUEST.SESSION.get('idTmp',None)):