version 1.2, 2003/12/03 19:01:23
|
version 1.6, 2003/12/11 11:35:38
|
Line 30 import urllib
|
Line 30 import urllib
|
import xml.dom.minidom |
import xml.dom.minidom |
|
|
|
|
|
#List of different types for the graphical linking viewer |
|
viewClassificationListMaster=['view point','area'] |
|
|
|
|
def toList(field): |
def toList(field): |
"""Einzelfeld in Liste umwandeln""" |
"""Einzelfeld in Liste umwandeln""" |
if type(field)==StringType: |
if type(field)==StringType: |
Line 90 def readMetadata(url):
|
Line 94 def readMetadata(url):
|
return metadict,"" |
return metadict,"" |
|
|
|
|
def setECHO_CollectionInformation(self,context,science,practice,source_type,period,id,title,label,description,content_type,responsible,credits,weight,coords): |
def setECHO_CollectionInformation(self,context,science,practice,source_type,period,id,title,label,description,content_type,responsible,credits,weight,coordstrs,viewClassification=""): |
|
|
"""Allegemeine Informationen zu einer ECHO Collection""" |
"""Allegemeine Informationen zu einer ECHO Collection""" |
|
|
|
self.viewClassification=viewClassification |
|
|
self.label = label |
self.label = label |
self.title=title |
self.title=title |
self.description=description |
self.description=description |
Line 108 def setECHO_CollectionInformation(self,c
|
Line 114 def setECHO_CollectionInformation(self,c
|
self.scientific_Information.scientific_Classification.science=science |
self.scientific_Information.scientific_Classification.science=science |
self.scientific_Information.scientific_Classification.practice=practice |
self.scientific_Information.scientific_Classification.practice=practice |
|
|
|
coords=[] |
#coordinates of for rectangles |
#coordinates of for rectangles |
self.coords=coords |
for coordstr in coordstrs: |
|
|
|
temco=coordstr.split(",") |
|
#temco.append(angle) |
|
coords.append(temco) |
|
self.coords=coords[0:] |
|
|
|
|
class scientificClassification(SimpleItem,Persistent,Implicit): |
class scientificClassification(SimpleItem,Persistent,Implicit): |
Line 163 class ECHO_resource(Folder):
|
Line 174 class ECHO_resource(Folder):
|
"""ECHO Ressource""" |
"""ECHO Ressource""" |
meta_type='ECHO_resource' |
meta_type='ECHO_resource' |
|
|
|
viewClassificationList=viewClassificationListMaster |
|
|
|
def getViewClassification(self): |
|
if hasattr(self,'viewClassification'): |
|
return self.viewClassification |
|
else: |
|
return "" |
|
|
def __init__(self,id,link,metalink,title,label,description,content_type,responsible,credits,weight,coords): |
def __init__(self,id,link,metalink,title,label,description,content_type,responsible,credits,weight,coords): |
|
|
Line 182 class ECHO_resource(Folder):
|
Line 200 class ECHO_resource(Folder):
|
self.coords=coordsnew |
self.coords=coordsnew |
|
|
|
|
|
def getCoords(self): |
|
try: |
|
print |
|
return [string.join(x,",") for x in self.coords] |
|
except: |
|
return [] |
|
|
|
|
def ECHO_resource_config(self): |
def ECHO_resource_config(self): |
"""Main configuration""" |
"""Main configuration""" |
Line 195 class ECHO_resource(Folder):
|
Line 220 class ECHO_resource(Folder):
|
return pt() |
return pt() |
|
|
|
|
def changeECHO_resource(self,metalink,link,context,science,practice,source_type,period,title,label,description,content_type,responsible,credits,weight,coords,RESPONSE=None): |
def changeECHO_resource(self,metalink,link,context,science,practice,source_type,period,title,label,description,content_type,responsible,credits,weight,coords,viewClassification,RESPONSE=None): |
|
|
"""Änderung der Properties""" |
"""Änderung der Properties""" |
|
|
|
|
setECHO_CollectionInformation(self,context,science,practice,source_type,period,id,title,label,description,content_type,responsible,credits,weight,coords) |
setECHO_CollectionInformation(self,context,science,practice,source_type,period,id,title,label,description,content_type,responsible,credits,weight,coords,viewClassification) |
|
|
|
|
self.link=link |
self.link=link |
Line 213 class ECHO_resource(Folder):
|
Line 238 class ECHO_resource(Folder):
|
manage_options = Folder.manage_options+( |
manage_options = Folder.manage_options+( |
{'label':'Main Config','action':'ECHO_resource_config'}, |
{'label':'Main Config','action':'ECHO_resource_config'}, |
{'label':'Metadata','action':'ECHO_getResourceMD'}, |
{'label':'Metadata','action':'ECHO_getResourceMD'}, |
|
{'label':'Graphics','action':'ECHO_graphicEntry'}, |
) |
) |
|
|
|
def ECHO_graphicEntry(self): |
|
"""DO nothing""" |
|
if 'overview' in self.aq_parent.__dict__.keys(): |
|
pt=PageTemplateFile('Products/ECHO_content/ECHO_draw.zpt').__of__(self) |
|
return pt() |
|
else: |
|
return "NO OVERVIEW GRAPHICS" |
|
|
|
def ECHO_enterCoords(self,coordstr,angle="",RESPONSE=None): |
|
"""Enter coords""" |
|
coords=self.coords |
|
temco=coordstr.split(",") |
|
temco.append(angle) |
|
coords.append(temco) |
|
|
|
self.coords=coords[0:] |
|
#pt=PageTemplateFile('Products/ECHO_content/ECHO_draw.zpt').__of__(self) |
|
if RESPONSE is not None: |
|
RESPONSE.redirect('ECHO_graphicEntry') |
|
|
def ECHO_getResourceMD(self,template="yes"): |
def ECHO_getResourceMD(self,template="yes"): |
"""Einlesen der Metadaten und Anlegen dieser Metadaten als Informationen zur Resource""" |
"""Einlesen der Metadaten und Anlegen dieser Metadaten als Informationen zur Resource""" |
Line 418 class ECHO_collection(Folder, Persistent
|
Line 462 class ECHO_collection(Folder, Persistent
|
|
|
def getCoords(self): |
def getCoords(self): |
try: |
try: |
|
print self.coords |
return [ string.join(x,",") for x in self.coords] |
return [ string.join(x,",") for x in self.coords] |
|
|
|
|
except: |
except: |
return [] |
return [] |
|
|
def __init__(self,id,title,label,description,content_type,responsible,credits,weight,sortfield,coords): |
def __init__(self,id,title,label,description,content_type,responsible,credits,weight,sortfield,coords): |
print "CO",coords |
print "CO",coords |
|
|
Line 454 class ECHO_collection(Folder, Persistent
|
Line 502 class ECHO_collection(Folder, Persistent
|
else: |
else: |
return "NO OVERVIEW GRAPHICS" |
return "NO OVERVIEW GRAPHICS" |
|
|
def ECHO_enterCoords(self,coordstr,RESPONSE=None): |
def ECHO_enterCoords(self,coordstr,angle="",RESPONSE=None): |
"""Enter coords""" |
"""Enter coords""" |
coords=self.coords |
coords=self.coords |
coords.append(coordstr.split(",")) |
temco=coordstr.split(",") |
|
temco.append(angle) |
|
coords.append(temco) |
self.coords=coords[0:] |
self.coords=coords[0:] |
#pt=PageTemplateFile('Products/ECHO_content/ECHO_draw.zpt').__of__(self) |
#pt=PageTemplateFile('Products/ECHO_content/ECHO_draw.zpt').__of__(self) |
if RESPONSE is not None: |
if RESPONSE is not None: |
Line 507 class ECHO_collection(Folder, Persistent
|
Line 557 class ECHO_collection(Folder, Persistent
|
if 'index.html' in self.__dict__.keys(): |
if 'index.html' in self.__dict__.keys(): |
return getattr(self,'index.html')() |
return getattr(self,'index.html')() |
elif 'overview' in self.__dict__.keys(): |
elif 'overview' in self.__dict__.keys(): |
print "HI" |
#print "HI" |
return self.showOverview() |
return self.showOverview() |
|
|
|
|
Line 525 class ECHO_collection(Folder, Persistent
|
Line 575 class ECHO_collection(Folder, Persistent
|
#print "OB:",object |
#print "OB:",object |
|
|
try: |
try: |
print "MT:",object.meta_type |
#print "MT:",object.meta_type |
if object.meta_type in subColTypes: |
if object.meta_type in subColTypes: |
for coord in object.coords: |
#print "MT:",object.meta_type,object.getId() |
if len(coord)==4: |
for coordtemp in object.coords: |
ids.append([string.join(coord,", "),object.getId()]) |
if len(coordtemp)>3: |
|
coord=coordtemp[0:4] |
|
if hasattr(object,'title'): |
|
if not object.title=="": |
|
ids.append([string.join(coord,", "),object.getId(),object.title]) |
|
else: |
|
ids.append([string.join(coord,", "),object.getId(),object.getId()]) |
|
else: |
|
ids.append([string.join(coord,", "),object.getId(),object.getId()]) |
|
|
except: |
except: |
"""nothing""" |
"""nothing""" |