Diff for /ECHO_content/ECHO_collection.py between versions 1.28 and 1.29

version 1.28, 2004/04/04 17:48:22 version 1.29, 2004/04/05 12:07:57
Line 11  class ECHO_externalLink contains informa Line 11  class ECHO_externalLink contains informa
 """  """
 import string  import string
 import re  import re
   import os
 import OFS.Image  import OFS.Image
 from types import *  from types import *
 from OFS.Image import Image  from OFS.Image import Image
Line 22  from Globals import InitializeClass Line 23  from Globals import InitializeClass
 from Globals import DTMLFile  from Globals import DTMLFile
 from Products.PageTemplates.PageTemplateFile import PageTemplateFile  from Products.PageTemplates.PageTemplateFile import PageTemplateFile
 from Products.PageTemplates.PageTemplate import PageTemplate  from Products.PageTemplates.PageTemplate import PageTemplate
 from Globals import Persistent  from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
   from Globals import Persistent, package_home
 from Acquisition import Implicit  from Acquisition import Implicit
   
 #from psycopg import libpq  #from psycopg import libpq
 #from pyPgSQL import libpq  #from pyPgSQL import libpq
 import xml.dom.minidom  import xml.dom.minidom
Line 35  from ECHO_graphicalOverview import javaH Line 38  from ECHO_graphicalOverview import javaH
 #List of different types for the graphical linking viewer  #List of different types for the graphical linking viewer
 viewClassificationListMaster=['view point','area']  viewClassificationListMaster=['view point','area']
   
   def content_html(self,type):
           """template fuer content"""
           #templates = self.ZopeFind(self.aq_parent,obj_ids=[type+"_template"])
           #
           #if templates:
           #    return templates[0][1]()
   
           try:
               obj=getattr(self,type+"_template")
               return obj()
           except:
               pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_%s_template_standard.zpt'%type).__of__(self)
               pt.content_type="text/html"
               return pt()
   
 def toList(field):  def toList(field):
     """Einzelfeld in Liste umwandeln"""      """Einzelfeld in Liste umwandeln"""
Line 173  class scientificInformation(Folder,Persi Line 190  class scientificInformation(Folder,Persi
     def get_period(self):      def get_period(self):
         return self.period          return self.period
   
   class ECHO_layoutTemplate(ZopePageTemplate):
       """Create a layout Template for different purposes"""
   
       meta_type="ECHO_layoutTemplate"
   
       manage_options=ZopePageTemplate.manage_options+(
           {'label':'Set back to Standard','action':'changeECHO_layoutTemplateToStandardForm'},
           )
   
   
       def __init__(self, id, text=None, content_type=None,EchoType=None):
           self.id = str(id)
   
   
   
           self.ZBindings_edit(self._default_bindings)
           if text is None:
               self._default_content_fn = os.path.join(package_home(globals()),
                                                  'zpt/ECHO_%s_template_standard.zpt'%EchoType)
               text = open(self._default_content_fn).read()
           self.pt_edit(text, content_type)
   
       def changeECHO_layoutTemplateToStandardForm(self):
           """change form"""
           pt=PageTemplateFile('Products/ECHO_content/zpt/changeECHO_pageTemplateWeightForm.zpt').__of__(self)
           return pt()
   
       def changeECHO_pageTemplateWeight(self,templateKind):
           """change form"""
   
   
   def manage_addECHO_layoutTemplateForm(self):
       """Form for adding"""
       pt=PageTemplateFile('Products/ECHO_content/zpt/AddECHO_layoutTemplate.zpt').__of__(self)
       return pt()
   
   from urllib import quote
   
   
   def manage_addECHO_layoutTemplate(self, EchoType,title=None,REQUEST=None):
       "Add a Page Template with optional file content."
       if type(EchoType)==StringType:
           EchoTypes=[EchoType]
       else:
           EchoTypes=EchoType
           
       for singleType in EchoTypes:
           id = str(singleType)+"_template"
           if REQUEST is None:
               self._setObject(id, ECHO_layoutTemplate(id, text,EchoType=singleType))
               ob = getattr(self, id)
               
               if title:
                   ob.pt_setTitle(title)
               return ob
           else:
               file = REQUEST.form.get('file')
               headers = getattr(file, 'headers', None)
               if headers is None or not file.filename:
                   zpt = ECHO_layoutTemplate(id,EchoType=singleType)
               else:
                   zpt = ECHO_layoutTemplate(id, file, headers.get('content_type'))
   
               self._setObject(id, zpt)
               ob = getattr(self, id)
               if title:
                   ob.pt_setTitle(title)
   
               try:
                   u = self.DestinationURL()
               except AttributeError:
                   u = REQUEST['URL1']
   
               
       REQUEST.RESPONSE.redirect(u+'/manage_main')
       return ''
   
 class ECHO_resource(Folder):  class ECHO_resource(Folder):
     """ECHO Ressource"""      """ECHO Ressource"""
Line 180  class ECHO_resource(Folder): Line 273  class ECHO_resource(Folder):
   
     viewClassificationList=viewClassificationListMaster      viewClassificationList=viewClassificationListMaster
   
       def content_html(self):
           """template fuer content"""
           return content_html(self,'resource')
       
     def getViewClassification(self):      def getViewClassification(self):
         if hasattr(self,'viewClassification'):          if hasattr(self,'viewClassification'):
             return self.viewClassification              return self.viewClassification
Line 344  class ECHO_externalLink(Folder): Line 441  class ECHO_externalLink(Folder):
     security=ClassSecurityInfo()      security=ClassSecurityInfo()
     meta_type='ECHO_externalLink'      meta_type='ECHO_externalLink'
   
       def content_html(self):
           """template fuer content"""
           return content_html(self,'externalLink')
   
     def __init__(self,id,link,title,label,description,contentType,responsible,credits,weight,coords):      def __init__(self,id,link,title,label,description,contentType,responsible,credits,weight,coords):
   
Line 639  class ECHO_collection(Folder, Persistent Line 739  class ECHO_collection(Folder, Persistent
                           
                   
         pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_content_standard.zpt').__of__(self)          pt=PageTemplateFile('Products/ECHO_content/zpt/ECHO_content_standard.zpt').__of__(self)
         pt.contentType="text/html"          pt.content_type="text/html"
         return pt()          return pt()
   
       def content_html(self):
           """template fuer content"""
           return content_html(self,'collection')
       
     def getCredits(self):      def getCredits(self):
         """Ausgabe der credits"""          """Ausgabe der credits"""
         if self.credits:          if self.credits:
Line 923  class ECHO_partner(Image,Persistent): Line 1027  class ECHO_partner(Image,Persistent):
   
     meta_type="ECHO_partner"      meta_type="ECHO_partner"
   
     def __init__(self, id, title,url, file, contentType='', precondition=''):      def __init__(self, id, title,url, file, content_type='', precondition=''):
         self.__name__=id          self.__name__=id
         self.title=title          self.title=title
         self.url=url          self.url=url
         self.precondition=precondition          self.precondition=precondition
   
         data, size = self._read_data(file)          data, size = self._read_data(file)
         contentType=self._get_contentType(file, data, id, contentType)          content_type=self._get_content_type(file, data, id, content_type)
         self.update_data(data, contentType, size)          self.update_data(data, content_type, size)
   
     manage_options = Image.manage_options+(      manage_options = Image.manage_options+(
         {'label':'Partner Information','action':'ECHO_partner_config'},          {'label':'Partner Information','action':'ECHO_partner_config'},
Line 958  manage_addECHO_partnerForm=DTMLFile('dtm Line 1062  manage_addECHO_partnerForm=DTMLFile('dtm
   
   
   
 def manage_addECHO_partner(self, id, file,url, title='', precondition='', contentType='',  def manage_addECHO_partner(self, id, file,url, title='', precondition='', content_type='',
                     REQUEST=None):                      REQUEST=None):
     """      """
     Add a new ECHO_partner object.      Add a new ECHO_partner object.
Line 969  def manage_addECHO_partner(self, id, fil Line 1073  def manage_addECHO_partner(self, id, fil
   
     id=str(id)      id=str(id)
     title=str(title)      title=str(title)
     contentType=str(contentType)      content_type=str(content_type)
     precondition=str(precondition)      precondition=str(precondition)
   
     id, title = OFS.Image.cookId(id, title, file)      id, title = OFS.Image.cookId(id, title, file)
Line 977  def manage_addECHO_partner(self, id, fil Line 1081  def manage_addECHO_partner(self, id, fil
     self=self.this()      self=self.this()
   
     # First, we create the image without data:      # First, we create the image without data:
     self._setObject(id, ECHO_partner(id,title,url,'',contentType, precondition))      self._setObject(id, ECHO_partner(id,title,url,'',content_type, precondition))
   
     # Now we "upload" the data.  By doing this in two steps, we      # Now we "upload" the data.  By doing this in two steps, we
     # can use a database trick to make the upload more efficient.      # can use a database trick to make the upload more efficient.
     if file:      if file:
         self._getOb(id).manage_upload(file)          self._getOb(id).manage_upload(file)
     if contentType:      if content_type:
         self._getOb(id).contentType=contentType          self._getOb(id).content_type=content_type
   
     if REQUEST is not None:      if REQUEST is not None:
         try:    url=self.DestinationURL()          try:    url=self.DestinationURL()

Removed from v.1.28  
changed lines
  Added in v.1.29


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>