version 1.15, 2005/03/03 20:41:00
|
version 1.16, 2005/03/07 19:33:42
|
Line 41 class OSAS_storeOnline(SimpleItem):
|
Line 41 class OSAS_storeOnline(SimpleItem):
|
|
|
objects=self.readObjectsFromPath(realPath) |
objects=self.readObjectsFromPath(realPath) |
|
|
|
try: |
return objects[os.path.join(realPath,".")][0] |
return objects[os.path.join(realPath,".")][0] |
|
except: |
|
return "" |
|
def getHandlersOfPath(self): |
|
"""handler des actullen path""" |
|
path=self.REQUEST['path'] |
|
objects=self.readObjectsFromPath(path) |
|
|
|
typeObject=objects.get(os.path.join(path,"."),None) |
|
if not typeObject: |
|
return("",[],"") |
|
type=typeObject[0] |
|
|
|
handler=self.giveHandlers(path,type) |
|
|
|
|
|
return (os.path.split(path)[1],handler,objects[os.path.join(path,".")][1],type) |
|
|
|
|
def getMetaFile(self,path): |
def getMetaFile(self,path): |
"""get index.meta and translate it to HTML""" |
"""get index.meta and translate it to HTML""" |
Line 116 class OSAS_storeOnline(SimpleItem):
|
Line 134 class OSAS_storeOnline(SimpleItem):
|
@param path: Pfad auf das Object relativ zum rootFolderName |
@param path: Pfad auf das Object relativ zum rootFolderName |
@return: metadata als html |
@return: metadata als html |
""" |
""" |
print "search for ",path |
|
xmlInfos=self.findEntryInIndexMeta(path) |
xmlInfos=self.findEntryInIndexMeta(path) |
print "RRRRRRRRRRRR",xmlInfos |
|
if xmlInfos: |
if xmlInfos: |
return OSAS_helpers.getMetaInfoFromXML(path,xmlInfos) |
return OSAS_helpers.getMetaInfoFromXML(path,xmlInfos) |
else: |
else: |
Line 132 class OSAS_storeOnline(SimpleItem):
|
Line 150 class OSAS_storeOnline(SimpleItem):
|
|
|
server=xmlrpclib.Server(self.serverUrl) |
server=xmlrpclib.Server(self.serverUrl) |
indexMeta=server.findIndexMeta(path) # suche index.meta |
indexMeta=server.findIndexMeta(path) # suche index.meta |
print "found indexMeta",indexMeta |
|
if not indexMeta: |
if not indexMeta: |
return None |
return None |
|
|
Line 182 class OSAS_storeOnline(SimpleItem):
|
Line 200 class OSAS_storeOnline(SimpleItem):
|
ret={} |
ret={} |
server=xmlrpclib.Server(self.serverUrl) |
server=xmlrpclib.Server(self.serverUrl) |
indexMeta,stats=server.findIndexMetaWithStats(path)#findex index.meta zu path. |
indexMeta,stats=server.findIndexMetaWithStats(path)#findex index.meta zu path. |
print "checking",path,indexMeta |
|
if not indexMeta: |
if not indexMeta: |
return ret |
return ret |
|
|
Line 193 class OSAS_storeOnline(SimpleItem):
|
Line 211 class OSAS_storeOnline(SimpleItem):
|
|
|
|
|
|
|
#teste ob schon im cache |
#teste ob schon im cache zur Zeit kein chache wenn index.meta file nicht im selben ordner wir path. |
|
print "PPP",path,"x",realPath |
if self._v_metaFiles.has_key(path) and (self._v_metaFiles[path][0]==stats[stat.ST_MTIME]): |
if self._v_metaFiles.has_key(realPath) and (self._v_metaFiles[realPath][0]==stats[stat.ST_MTIME]) and (path==""): |
return self._v_metaFiles[path][1] |
print "from cache" |
|
return self._v_metaFiles[realPath][1] |
|
|
try: |
try: |
dom=xml.dom.minidom.parseString(server.getFile(indexMeta)) |
dom=xml.dom.minidom.parseString(server.getFile(indexMeta)) |
Line 229 class OSAS_storeOnline(SimpleItem):
|
Line 248 class OSAS_storeOnline(SimpleItem):
|
object=os.path.join(realPath,pathX,name) |
object=os.path.join(realPath,pathX,name) |
ret[object.encode('utf-8')]=(fileType,'') |
ret[object.encode('utf-8')]=(fileType,'') |
|
|
self._v_metaFiles[path]=(stats[stat.ST_MTIME],ret) # speicher im chache |
self._v_metaFiles[realPath]=(stats[stat.ST_MTIME],ret) # speicher im chache |
|
|
return ret |
return ret |
|
|
Line 300 class OSAS_storeOnline(SimpleItem):
|
Line 319 class OSAS_storeOnline(SimpleItem):
|
return None |
return None |
|
|
#teste ob schon im cache |
#teste ob schon im cache |
#if self._v_fileSystem.has_key(realPath) and (self._v_fileSystem[realPath][0]==stats[stat.ST_MTIME]): |
if self._v_fileSystem.has_key(realPath) and (self._v_fileSystem[realPath][0]==stats[stat.ST_MTIME]): |
# |
|
# return self._v_fileSystem[realPath][1] |
return self._v_fileSystem[realPath][1] |
|
|
indexMetas=server.getAllIndexMetasOfSubDirs(realPath) |
indexMetas=server.getAllIndexMetasOfSubDirs(realPath) |
dir=indexMetas.keys() |
dir=indexMetas.keys() |
|
|
ret={} |
ret={} |
for filename in dir: |
for filename in dir: |
print "doing",filename,indexMetas |
|
object=os.path.join(realPath,filename) |
object=os.path.join(realPath,filename) |
fileType=indexMetas[filename][0] |
fileType=indexMetas[filename][0] |
|
|
if fileType: |
if fileType: |
if (fileType=='OSAS_dir') and indexMetas.has_key(".") and indexMetas["."][1]: |
if (fileType=='OSAS_dir') and indexMetas.has_key(".") and indexMetas["."][1]: |
print "TEEEEEEEEEE" |
|
if(OSAS_helpers.isImageFolder(object,decodeRPC(indexMetas["."][1]))): |
if(OSAS_helpers.isImageFolder(object,decodeRPC(indexMetas["."][1]))): |
fileType='OSAS_imageFolder' |
fileType='OSAS_imageFolder' |
elif(OSAS_helpers.isVideoFolder(object,decodeRPC(indexMetas["."][1]))): |
elif(OSAS_helpers.isVideoFolder(object,decodeRPC(indexMetas["."][1]))): |
fileType='OSAS_videoFolder' |
fileType='OSAS_videoFolder' |
if metaData and indexMetas[filename][1]: |
if metaData and indexMetas[filename][1]: |
print "do",filename |
|
ret[object]=(fileType,metaData.getDisplayFieldsAsStr(decodeRPC(indexMetas[filename][1]))) |
ret[object]=(fileType,metaData.getDisplayFieldsAsStr(decodeRPC(indexMetas[filename][1]))) |
else: |
else: |
metaDataStr=self.findEntryInIndexMeta(object) |
metaDataStr=self.findEntryInIndexMeta(object) |
print "MMMMMDDDDD",metaDataStr |
|
if metaDataStr: |
if metaDataStr: |
display=metaData.getDisplayFieldsAsStr(metaDataStr) |
display=metaData.getDisplayFieldsAsStr(metaDataStr) |
dom=xml.dom.minidom.parseString(metaDataStr) |
dom=xml.dom.minidom.parseString(metaDataStr) |
Line 335 class OSAS_storeOnline(SimpleItem):
|
Line 354 class OSAS_storeOnline(SimpleItem):
|
|
|
else: |
else: |
display="" |
display="" |
print object,fileType,display |
|
|
|
ret[object]=(fileType,display) |
ret[object]=(fileType,display) |
|
|
Line 397 class OSAS_storeOnline(SimpleItem):
|
Line 416 class OSAS_storeOnline(SimpleItem):
|
for object in objectSorted: |
for object in objectSorted: |
|
|
handler=self.giveHandlers(object,objects[object][0]) |
handler=self.giveHandlers(object,objects[object][0]) |
print "format",objects[object][0] |
if not(os.path.split(object)[1]=="."): |
if objects[object][0]=="OSAS_dir": |
if objects[object][0] in OSASDirObjects: |
|
|
string="""<a href="?path=%s">%s</a>"""%(object,os.path.split(object)[1]) |
string="""<a href="?path=%s">%s</a>"""%(object,os.path.split(object)[1]) |
|
|
Line 408 class OSAS_storeOnline(SimpleItem):
|
Line 427 class OSAS_storeOnline(SimpleItem):
|
|
|
ret.append((string,handler,objects[object][1])) |
ret.append((string,handler,objects[object][1])) |
else: |
else: |
|
|
ret.append((os.path.split(object)[1],handler,objects[object][1])) |
ret.append((os.path.split(object)[1],handler,objects[object][1])) |
|
|
|
|