version 1.51, 2004/11/27 22:38:43
|
version 1.60, 2005/10/26 11:18:19
|
Line 1
|
Line 1
|
# Objekte zur Erzeugung von Navigationselementen |
# Objekte zur Erzeugung von Navigationselement |
|
from AccessControl import ClassSecurityInfo |
from Globals import DTMLFile |
from Globals import DTMLFile |
from OFS.Image import Image,cookId |
from OFS.Image import Image,cookId |
from OFS.Folder import Folder |
from OFS.Folder import Folder |
Line 27 import re
|
Line 27 import re
|
import string |
import string |
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate |
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate |
import os.path |
import os.path |
from Globals import package_home |
|
import urllib |
import urllib |
from ECHO_helpers import displayTypes,checkOnlyOneInGroup |
from ECHO_helpers import displayTypes,checkOnlyOneInGroup |
from ECHO_collection import content_html |
from ECHO_collection import content_html |
Line 268 class ECHO_sqlElement(SimpleItem):
|
Line 268 class ECHO_sqlElement(SimpleItem):
|
def getNavList(self): |
def getNavList(self): |
"""ausgabe der treffer list für navigation""" |
"""ausgabe der treffer list für navigation""" |
|
|
records=self.searchQuery() |
#naechste schritte sind trial and error, warum geht mal das eine mal das andere 2.3 / 2.4 ?? |
|
try: |
|
records=self.searchQuery(self.aq_parent,query=self.query) #python 2.4 version (??) |
|
except: |
|
records=self.serchQuery()#python 2.3 version(??) |
|
|
|
|
if not records: |
if not records: |
Line 300 def manage_addECHO_sqlElement(self,id,ti
|
Line 304 def manage_addECHO_sqlElement(self,id,ti
|
class ECHO_pageTemplate(ZopePageTemplate,ECHO_basis): |
class ECHO_pageTemplate(ZopePageTemplate,ECHO_basis): |
"""pageTemplate Objekt""" |
"""pageTemplate Objekt""" |
meta_type="ECHO_pageTemplate" |
meta_type="ECHO_pageTemplate" |
|
security=ClassSecurityInfo() |
|
|
|
|
_default_content_fn = os.path.join(package_home(globals()), |
_default_content_fn = os.path.join(package_home(globals()), |
'html/ECHO_pageTemplateDefault.html') |
'html/ECHO_pageTemplateDefault.html') |
|
|
manage_options=ZopePageTemplate.manage_options+ECHO_basis.manage_options+( |
manage_options=ZopePageTemplate.manage_options+ECHO_basis.manage_options+( |
{'label':'Main Config','action':'changeECHO_pageTemplateMainForm'}, |
{'label':'Main Config','action':'changeECHO_pageTemplateMainForm'}, |
|
{'label':'Graphic Coords','action':'ECHO_graphicEntry'}, |
) |
) |
|
|
|
security.declarePublic('content_html') |
|
|
|
def addChanges(self): |
|
"""do nothing leere methode, notwendig, da bei veerbung |
|
von dieser klasse nur ueberschrieben werden kann, |
|
falls methode per url aufgerufen werden soll""" |
|
|
|
return True |
|
|
def content_html(self): |
def content_html(self): |
"""content_html""" |
"""content_html""" |
return content_html(self,'pageTemplate') |
return content_html(self,'pageTemplate') |
Line 407 class ECHO_navigation(Folder):
|
Line 423 class ECHO_navigation(Folder):
|
"""Navigations Element""" |
"""Navigations Element""" |
meta_type="ECHO_Navigation" |
meta_type="ECHO_Navigation" |
|
|
|
def getNavInfo(self): |
|
"""root informationen""" |
|
if hasattr(self,'logo_image'): |
|
if hasattr(self.logo_image,'tag'): |
|
imageTag=self.logo_image.tag() |
|
else: |
|
imageTag='' |
|
return (self.title,imageTag) |
|
|
|
def linkBar(self,parent): |
|
"""linkbarer balken""" |
|
str="" |
|
|
|
|
|
while not(parent.meta_type == "ECHO_root"): |
|
fragment="""<a href="%s">%s</a>"""%(parent.absolute_url(),parent.label) |
|
str=fragment+"/"+str |
|
parent=parent.aq_parent |
|
|
|
return str |
|
|
|
def decode(self,str): |
|
"""decoder""" |
|
if not str: |
|
return "" |
|
if type(str)==StringType: |
|
|
|
return str |
|
else: |
|
try: |
|
return str.encode('utf-8') |
|
except: |
|
return str.encode('latin-1') |
def ECHOFormatListStr(self,list,search="\n",replace="<br>"): |
def ECHOFormatListStr(self,list,search="\n",replace="<br>"): |
"""formatiert liste im str""" |
"""formatiert liste im str""" |
if list: |
if list: |
Line 447 class ECHO_navigation(Folder):
|
Line 496 class ECHO_navigation(Folder):
|
if not obj: |
if not obj: |
obj = self |
obj = self |
|
|
entries=obj.ZopeFind(obj,obj_metatypes=['ECHO_collection'],search_sub=1) |
entries=obj.ZopeFind(obj,obj_metatypes=['ECHO_collection','VLP_resource'],search_sub=1) |
|
|
for entry in entries: |
for entry in entries: |
#print entry[0] |
|
entry[1].ZCacheable_setManagerId(managerName) |
entry[1].ZCacheable_setManagerId(managerName) |
|
|
|
|
Line 628 class ECHO_navigation(Folder):
|
Line 676 class ECHO_navigation(Folder):
|
for x in hash.keys(): |
for x in hash.keys(): |
#print hash[x][1] |
#print hash[x][1] |
if hasattr(hash[x][1],field): |
if hasattr(hash[x][1],field): |
|
try: |
|
weight=int(getattr(hash[x][1],field)) |
|
except: |
weight=getattr(hash[x][1],field) |
weight=getattr(hash[x][1],field) |
#print weight |
#print weight |
else: |
else: |
Line 682 class ECHO_navigation(Folder):
|
Line 733 class ECHO_navigation(Folder):
|
return 0 |
return 0 |
|
|
|
|
|
def getPathStyle(self, item, style=""): |
|
"""returns a string with the given style + 'sel' if the path is already selected.""" |
|
|
|
if self.isSelectedPath(item): |
|
return style + 'sel' |
|
else: |
|
return style |
|
|
|
|
def buttonsFromHash(self,hash,start=None,orientation="horizontal"): |
def buttonsFromHash(self,hash,start=None,orientation="horizontal"): |
Line 763 class ECHO_navigation(Folder):
|
Line 821 class ECHO_navigation(Folder):
|
return nr+1 |
return nr+1 |
|
|
def secondNavElements(self): |
def secondNavElements(self): |
"""Zweite Ordnung Navigationselemente |
"""Zweite Ordnung Navigationselemente""" |
|
|
""" |
|
|
|
hash=self.createNavHash(2,checkOnly="no") |
hash=self.createNavHash(2,checkOnly="no") |
actual_url=self.REQUEST['URL'] |
actual_url=self.REQUEST['URL'] |