--- ECHO_content/ECHO_collection.py 2010/10/13 13:10:19 1.310 +++ ECHO_content/ECHO_collection.py 2012/09/03 14:48:22 1.310.2.10 @@ -9,11 +9,7 @@ class ECHO_externalLink contains informa """ -try: - from reportlab.pdfgen import canvas - from reportlab.lib.pagesizes import A4 -except: - print "PDF generation will not work" + import urlparse import string @@ -40,6 +36,8 @@ from Globals import Persistent, package_ from Acquisition import Implicit from Products.ZCatalog.CatalogPathAwareness import CatalogAware from Products.ZCTextIndex.ZCTextIndex import manage_addLexicon +import ECHO_helpers +from Acquisition import aq_parent try: from Products.MetaDataProvider.MetaDataClient import MetaDataClient except: @@ -49,11 +47,11 @@ import urllib2 import cgi import smtplib import time -from Ft.Xml.Domlette import NonvalidatingReader -from Ft.Xml.Domlette import PrettyPrint, Print -from Ft.Xml import EMPTY_NAMESPACE - -import Ft.Xml.XPath +#from Ft.Xml.Domlette import NonvalidatingReader +#from Ft.Xml.Domlette import PrettyPrint, Print +#from Ft.Xml import EMPTY_NAMESPACE +# +#import Ft.Xml.XPath import cStringIO import sys @@ -83,11 +81,13 @@ except: pass from ECHO_movie import * -import vlp_xmlhelpers #TODO: vlp elemente aus echo herausnehmen +#import vlp_xmlhelpers #TODO: vlp elemente aus echo herausnehmen import xmlrpclib import logging +from ECHO_root import ECHO_root + #ersetzt logging.info def logger(txt,method,txt2): """logging""" @@ -544,6 +544,10 @@ class ECHO_link(ECHO_externalLink): {'label':'add links config','action':'ECHO_link_addLinksForm'}, ) + def getMDValueSimpleSearchField(self): + """returns value for simple search""" + return " ".join([self.getTitle(),self.getDescription()]) + def ECHO_link_addLinksForm(self): """Main configuration""" @@ -697,6 +701,8 @@ class ECHO_collection(CatalogAware, Fold meta_type='ECHO_collection' default_catalog='resourceCatalog' + rootMetaTypes = ['ECHO_root', 'ECHO_main', 'ECHO_nav'] + # viewClassificationList=viewClassificationListMaster displayTypes=displayTypes @@ -709,12 +715,11 @@ class ECHO_collection(CatalogAware, Fold return crumbs[0][2].getId() p = self - sec = None # descend parents to the root (and remember the last id) - while p is not None and p.meta_type != 'ECHO_root' and p.meta_type!='ECHO_main' and p.meta_type!='ECHO_nav': + while p is not None and p.meta_type not in self.rootMetaTypes: sec = p.getId() - p = p.aq_parent + p = aq_parent(p.context) return sec @@ -728,12 +733,21 @@ class ECHO_collection(CatalogAware, Fold sec = None subsec = None # descend parents to the root (and remember the last id) - while p is not None and p.meta_type != 'ECHO_root' and p.meta_type!='ECHO_main' and p.meta_type!='ECHO_nav': + while p is not None and p.meta_type not in self.rootMetaTypes: subsec = sec sec = p.getId() - p = p.aq_parent + p = aq_parent(p.context) return subsec + + + def getCrumb(self): + """returns breadcrumb for this object""" + return ECHO_helpers.getCrumb(self) + + def getHierCrumbs(self): + """returns a list of hierarchical breadcrumbs from self to the ECHO_root""" + return ECHO_helpers.getHierCrumbs(self) def exportImportObjects_html(self,RESPONSE): @@ -1078,39 +1092,18 @@ class ECHO_collection(CatalogAware, Fold if RESPONSE is not None: RESPONSE.redirect('manage_main') - def changeViewerTemplateSetsForm(self): + + def changeViewerForm(self): """change the viewer template set""" - pt=zptFile(self, 'zpt/changeViewerTemplateSet') + pt=zptFile(self, 'zpt/changeECHOViewer') return pt() - - def getViewerTemplateSets(self,obj_ids=None,RESPONSE=None): - """Get the ViewerTemplateSet title for configuration""" - ret=[] - - try: - viewerTemplateSets=self.ZopeFind(self.viewerTemplateSets,obj_metatypes=['OSAS_viewerTemplateSet'],obj_ids=obj_ids)#assumes viewerTemplateSets folder somewhere in the hierarchie. - - for viewerTemplateSet in viewerTemplateSets: - ret.append((viewerTemplateSet[1].title,viewerTemplateSet[0],viewerTemplateSet[1])) - - return ret - - except: - return [('no ViewerTemplateSetfolders','')] - + def getTextToolsField(self,name,default=''): - """Lese viewerTemplateSet der Collection not implemented yet!""" + """Lese text tool field der Collection not implemented yet!""" return default - def isSelectedViewerTemplateSet(self,obj,id): - """is ausgewaehlt""" - - if self.REQUEST['viewerTemplateSet']==id: - return 1 - else: - return None def changeViewer(self,newViewer,REQUEST=None,RESPONSE=None): """changes all ressources to the newViewer""" @@ -1134,38 +1127,7 @@ class ECHO_collection(CatalogAware, Fold if RESPONSE is not None: RESPONSE.write("
Done