--- ECHO_content/ECHO_language.py 2006/10/12 16:37:33 1.9
+++ ECHO_content/ECHO_language.py 2006/10/18 14:42:33 1.10
@@ -6,6 +6,7 @@ from OFS.SimpleItem import SimpleItem
from OFS.Folder import Folder
import xml.parsers
import os.path
+import urlparse,urllib
from Globals import package_home
class ECHO_language:
@@ -49,6 +50,14 @@ class Collection(SimpleItem):
"""delete an entry"""
del(self.entries[nr])
+ def changeEntry(self,nr,slaveUrl):
+ """change an entry, only slaveUrl"""
+ tmp=self.entries[nr]
+ tmp['slave']=(slaveUrl,"","")
+
+ entries=self.entries[0:]
+ entries[nr]=tmp
+ self.entries=entries[0:]
def appendEntry(self,fn,id,type,pagelink):
"""append an entry"""
@@ -109,20 +118,31 @@ class ECHO_linkCreator(Folder):
if entry.has_key('master'):
ms=entry['master']
+
+
try:
- ret+=""""""
+ if urlparse.urlparse(ms[0])[0]=="http": # url
+ ret+=""""""%urllib.quote(ms[0])
+ else:
+ ret+=""""""
except: #ohne pagelink&
ret+=""""""%ms
if entry.has_key('slave'):
ms=entry['slave']
try:
- ret+=""""""%(ms[0],ms[1])
- splitted=ms[2].split("/")
- ret+=""""""%(splitted[0],splitted[-1])
- ret+=""""""
+ if urlparse.urlparse(ms[0])[0]=="http": # url
+ ret+=""""""%urllib.quote(ms[0])
+ else:
+ ret+=""""""%(ms[0],ms[1])
+ splitted=ms[2].split("/")
+ if (len(splitted)>3):
+ ret+=""""""%(splitted[0],splitted[3])
+ ret+=""""""
except: #ohne pagelink
ret+=""""""%ms
@@ -163,7 +183,16 @@ class ECHO_linkCreator(Folder):
RESPONSE.setHeader("Expires",(DateTime()-1).rfc822())
RESPONSE.setHeader("Cache-Control", "no-cache")
RESPONSE.redirect(fromurl)
-
+
+
+ def changeEntry(self,collection,nr,slaveUrl,RESPONSE=None):
+ """change an entry 8only slaveUrl at the moment"""
+ col=getattr(self, collection,None)
+ col.changeEntry(nr,slaveUrl)
+
+ if RESPONSE:
+ RESPONSE.redirect(self.absolute_url()+"?collection="+collection)
+
def removeEntry(self,collection,nr,RESPONSE=None):
"""remove an entry"""
col=getattr(self, collection,None)