Diff for /ECHO_content/ECHO_collection.py between versions 1.224 and 1.231

version 1.224, 2005/06/09 08:34:49 version 1.231, 2005/07/29 11:17:08
Line 1 Line 1
   
   
 """New version of the product started February, 8th. Without scientific classification, use content-type for further classification."""  """New version of the product started February, 8th. Without scientific classification, use content-type for further classification."""
 """Echo collection provides the classes for the ECHO content web-site.  """Echo collection provides the classes for the ECHO content web-site.
   
Line 39  from Globals import Persistent, package_ Line 41  from Globals import Persistent, package_
 from Acquisition import Implicit  from Acquisition import Implicit
   
 import urllib  import urllib
   import cgi
 import smtplib  import smtplib
 import time  import time
 from Ft.Xml.Domlette import NonvalidatingReader  from Ft.Xml.Domlette import NonvalidatingReader
Line 86  def setECHO_collectionInformation(self,t Line 89  def setECHO_collectionInformation(self,t
         self.credits=toList(credits)          self.credits=toList(credits)
         self.weight=weight          self.weight=weight
   
   class ECHO_locale(ZopePageTemplate):
       """localisierung"""
   
       meta_type="ECHO_locale"
   
       def __init__(self,id,lang,title,label,text=None,content_type=None):
           self.lang=lang
           self.title=title
           self.label=label
           if text:
               self.pt_edit(text, content_type)
           self.id=id
   
       manage_options = ZopePageTemplate.manage_options+(
           {'label':'Main Config','action':'change_ECHO_localeForm'},
           )
   
       def change_ECHO_localeForm(self):
           """change form"""
           pt=zptFile(self, 'zpt/ChangeECHO_localeForm.zpt')
           return pt()
       
       def change_ECHO_locale(self,lang,title,label,text=None,content_type=None,RESPONSE=None):
           """change echo locale"""
           self.lang=lang
           self.title=title
           self.label=label
           if not text is None:
               self.pt_edit(text, content_type)
   
           if RESPONSE is not None:
               RESPONSE.redirect('manage_main')
   
           
   def manage_addECHO_localeForm(self):
        """Form for adding"""
        pt=zptFile(self, 'zpt/AddECHO_localeForm.zpt')
        return pt()
   
   def manage_addECHO_locale(self,lang,title,label,text=None,content_type=None,RESPONSE=None):
       """add echo locale"""
   
       id="locale_"+lang
       
       self._setObject(id, ECHO_locale(id,lang,title,label,text,content_type))
       if RESPONSE is not None:
           RESPONSE.redirect('manage_main')
   
                           
 class ECHO_copyright(Folder,ECHO_basis):  class ECHO_copyright(Folder,ECHO_basis):
     """Copyright informationen"""      """Copyright informationen"""
Line 1406  class ECHO_link(ECHO_externalLink): Line 1457  class ECHO_link(ECHO_externalLink):
         else:          else:
             return ECHO_basis.content_html(self,'collection')              return ECHO_basis.content_html(self,'collection')
           
       def index_html(self):
           """standard link"""
           if self.link:
            splitted=self.link.split("?")
            if len(splitted)>1:
               params=cgi.parse_qs(splitted[1])
   
               for x in params.keys():
                   if type(params[x]) is ListType:
                       params[x]=params[x][0]
           
   
            else:
               params={}
           
            params['backLink']=self.aq_parent.absolute_url()
            params['startLink']=splitted[0]+"?"+urllib.urlencode(params)
           
           
            return self.REQUEST.RESPONSE.redirect(splitted[0]+"?"+urllib.urlencode(params))
           else:
            return ""
   
 def manage_addECHO_linkForm(self):  def manage_addECHO_linkForm(self):
         """Form for external Links"""          """Form for external Links"""
         pt=zptFile(self, 'zpt/AddECHO_linkForm.zpt')          pt=zptFile(self, 'zpt/AddECHO_linkForm.zpt')
Line 1433  class ECHO_collection(Folder, Persistent Line 1507  class ECHO_collection(Folder, Persistent
   
     path="/mpiwg/online/permanent/shipbuilding"      path="/mpiwg/online/permanent/shipbuilding"
   
       def localizeObjects(self):
           """localize all objects"""
           contents=self.ZopeFind(self,obj_metatypes=['ECHO_link','ECHO_mapText'])
           find=self.ZopeFind(self,obj_ids=('locale_en'))
           if not find:
           self.manage_addECHO_locale("en",'','')
           for content in contents:
               if content[1].meta_type=='ECHO_link':
                   find=content[1].ZopeFind(content[1],obj_metatypes=('ECHO_mapText'))
                   if find:
                       root=find[0][1]
   
                       locale=find[0][1].ZopeFind(find[0][1],obj_ids=('locale_en'))
                   else:
                       root=None
               else:
                   root=content[1]
                   locale=content[1].ZopeFind(content[1],obj_ids=('locale_en'))
               if root and not locale:
                   root.manage_addECHO_locale("en",'','')
               
           pt=zptFile(self, 'zpt/localizeObjects.zpt')
           return pt()
   
   
       def localize(self,REQUEST,RESPONSE):
           """localize"""
           for key in REQUEST.form.keys():
               splitted=key.split("!")
   
               if splitted[0]=="" or splitted[0]=="en" or splitted[0]=="title" or splitted[0]=="label":
                   if splitted[0]=="en":
                       setattr(self.locale_en,splitted[1],REQUEST.form[key])
                   else:
                       setattr(self,splitted[0],REQUEST.form[key])
               else:
                   obj=getattr(self,splitted[0])
   
                   if obj.meta_type=="ECHO_mapText":
                       if splitted[1]=="en":
                           obj.locale_en.pt_edit(REQUEST.form[key],None)
                       else:
                           obj.pt_edit(REQUEST.form[key],None)
                   else:
                       text=obj.ZopeFind(obj,obj_metatypes=['ECHO_mapText'])
                       if splitted[1]=="en":
                           
                           text[0][1].locale_en.pt_edit(REQUEST.form[key],None)
                       else:
                           text[0][1].pt_edit(REQUEST.form[key],None)
           if RESPONSE is not None:
               RESPONSE.redirect('manage_main')
   
   
     def getRDF(self,urn=None):      def getRDF(self,urn=None):
         """rdf of the collection"""          """rdf of the collection"""
                   
Line 1793  class ECHO_collection(Folder, Persistent Line 1921  class ECHO_collection(Folder, Persistent
   
     def addMovie(self,id,title,label,description,contentType,responsible,link,thumbUrl,rawFile,lowresFile,metalink,weight,credits=None,coords=None,RESPONSE=None):      def addMovie(self,id,title,label,description,contentType,responsible,link,thumbUrl,rawFile,lowresFile,metalink,weight,credits=None,coords=None,RESPONSE=None):
         """SSS"""          """SSS"""
     print "we are here"  
     #manage_addECHO_movie(self,id,title,label,description,responsible,link,thumbUrl,rawFile,metalink,weight,credits=None,coords=None,RESPONSE=None)      #manage_addECHO_movie(self,id,title,label,description,responsible,link,thumbUrl,rawFile,metalink,weight,credits=None,coords=None,RESPONSE=None)
     if not hasattr(self,id):      if not hasattr(self,id):
         try:          try:
Line 1927  class ECHO_collection(Folder, Persistent Line 2055  class ECHO_collection(Folder, Persistent
         {'label':'Main Config','action':'ECHO_collection_config'},          {'label':'Main Config','action':'ECHO_collection_config'},
         {'label':'Change Labels','action':'changeLabels'},          {'label':'Change Labels','action':'changeLabels'},
         {'label':'Change Titles','action':'changeTitles'},          {'label':'Change Titles','action':'changeTitles'},
       {'label':'Localize','action':'localizeObjects'},
     {'label':'Change Weights','action':'changeWeights'},      {'label':'Change Weights','action':'changeWeights'},
         {'label':'Rerender Labels and Titles','action':'ECHO_rerenderLinksMDWarning'},          {'label':'Rerender Labels and Titles','action':'ECHO_rerenderLinksMDWarning'},
         {'label':'Graphic Coords','action':'ECHO_graphicEntry'},          {'label':'Graphic Coords','action':'ECHO_graphicEntry'},
Line 1962  class ECHO_collection(Folder, Persistent Line 2091  class ECHO_collection(Folder, Persistent
   
                   
     security.declarePublic('changeECHO_collection')           security.declarePublic('changeECHO_collection')     
     def changeECHO_collection(self,title,label,description,contentType,responsible,weight,secondaryLink,secondaryLinkTitle,credits=None,sortfield="weight",coords=None,RESPONSE=None,imageTag="",bgcolour="",location=None,isAlwaysClickable=None):      def changeECHO_collection(self,title,label,description,contentType,responsible,weight,secondaryLink,secondaryLinkTitle,credits=None,sortfield="weight",coords=None,RESPONSE=None,imageTag="",bgcolour="",location=None,isAlwaysClickable=None,prefix="",suffix=""):
         """Aenderung der Properties"""          """Aenderung der Properties"""
   
         self.secondaryLink=secondaryLink          self.secondaryLink=secondaryLink
Line 1971  class ECHO_collection(Folder, Persistent Line 2100  class ECHO_collection(Folder, Persistent
     self.bgcolour=bgcolour      self.bgcolour=bgcolour
         self.location=location          self.location=location
     self.isAlwaysClickable=isAlwaysClickable      self.isAlwaysClickable=isAlwaysClickable
       self.prefix=prefix[0:]
       self.suffix=suffix[0:]
                           
         setECHO_collectionInformation(self,title,label,description,contentType,responsible,credits,weight)          setECHO_collectionInformation(self,title,label,description,contentType,responsible,credits,weight)
                   
Line 2065  class ECHO_collection(Folder, Persistent Line 2196  class ECHO_collection(Folder, Persistent
         """javascript"""          """javascript"""
         return sendFile(self, 'js/hl_add.js', 'text/plain')          return sendFile(self, 'js/hl_add.js', 'text/plain')
   
     def getAllMapAreas(self):      def getAllMapAreas(self,mapColTypes=['ECHO_collection','ECHO_resource','ECHO_link','ECHO_externalLink']):
         """Give list of coordinates"""          """Give list of coordinates"""
         mapColTypes=['ECHO_collection','ECHO_resource','ECHO_link','ECHO_externalLink']          
         areas=[]          areas=[]
         for entry in self.getSubCols(subColTypes=mapColTypes):          for entry in self.getSubCols(subColTypes=mapColTypes):
             object=entry              object=entry
Line 2400  class ECHO_root(Folder,Persistent,Implic Line 2531  class ECHO_root(Folder,Persistent,Implic
     def item2(self,txt):      def item2(self,txt):
         return txt[2]          return txt[2]
                   
       def setLanguage(self,lang):
           """Set language cookie"""
           self.REQUEST.RESPONSE.setCookie('lang_exhibition',lang,path="")
   
       def switchLanguage(self):
           """Set language cookie"""
           if self.getLanguage()=="en":
               lang="de"
           else:
               lang="en"
           
           self.REQUEST.RESPONSE.setCookie('lang_exhibition',lang,path="")
           self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1'])
       def getLanguage(self):
           """get language cookie"""
           lang= self.REQUEST.cookies.get('lang_exhibition','de')
           if lang == '':
               lang="de"
           return lang
       
     def getContentOverviewTemplate(self):      def getContentOverviewTemplate(self):
     """produces overview template with macro"""      """produces overview template with macro"""
     pt = zptObjectOrFile(self, 'content_overview_template')      pt = zptObjectOrFile(self, 'content_overview_template')

Removed from v.1.224  
changed lines
  Added in v.1.231


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