--- ZSQLExtend/ZSQLExtend.py 2004/10/22 13:32:24 1.44
+++ ZSQLExtend/ZSQLExtend.py 2005/10/11 13:15:01 1.66
@@ -1,17 +1,23 @@
from OFS.Folder import Folder
-from Globals import Persistent
from Acquisition import Implicit
-from Globals import DTMLFile
+from Globals import DTMLFile,package_home,Persistent
import urllib
import re
import string
+import sys
#from pyPgSQL import libpq
from AccessControl import getSecurityManager
-import os.path
+from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
from Products.PageTemplates.PageTemplateFile import PageTemplateFile
from Products.ZSQLMethods.SQL import SQLConnectionIDs
+from xml.sax.saxutils import escape
+from types import *
import Shared.DC.ZRDB.DA
+import zLOG
+import os.path
+import os
+
def analyseIntSearch(word):
#analyse integer searches
@@ -46,6 +52,7 @@ class ZSQLExtendFolder(Folder,Persistent
"""Folder"""
meta_type="ZSQLExtendFolder"
+
def testneu(self):
"""test"""
relStatement="""period like '%s%%'"""
@@ -53,7 +60,10 @@ class ZSQLExtendFolder(Folder,Persistent
wherePart="museum_no like 'VAT%'"
classes=['Uruk III','Uruk IV']
return self.searchRel(relStatement,statement,wherePart,classes)
-
+
+ def URLquote(self,txt):
+ """urlquote"""
+ return urllib.quote(txt)
def searchRel(self,relStatement,statement,wherePart,classes):
"""suche relative haufigkeiten"""
ret={}
@@ -71,7 +81,7 @@ class ZSQLExtendFolder(Folder,Persistent
obj=getattr(self,"ZSQLBibliography_template")
return obj()
except:
- pt=PageTemplateFile('Products/ZSQLExtend/zpt/ZSQLBibliography_template_standard.zpt',content_type='text/htm').__of__(self)
+ pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','ZSQLBibliography_template_standard.zpt'),content_type='text/html').__of__(self)
pt.content_type="text/html"
return pt()
@@ -104,7 +114,7 @@ class ZSQLExtendFolder(Folder,Persistent
def changeZSQLExtendForm(self):
"""change folder config"""
- pt=PageTemplateFile('Products/ZSQLExtend/zpt/changeZSQLExtendForm.zpt').__of__(self)
+ pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeZSQLExtendForm.zpt')).__of__(self)
return pt()
@@ -195,7 +205,7 @@ class ZSQLExtendFolder(Folder,Persistent
return ret
def ZSQLSelectionFromCRList(self,fieldname,listField,boxType="checkbox",checked=None):
- """generate select oprions form a cr seperated list"""
+ """generate select options from a cr seperated list"""
fields=listField.split("\n")
ret=""
for field in fields:
@@ -205,35 +215,85 @@ class ZSQLExtendFolder(Folder,Persistent
ret+="""%s"""%(fieldname,boxType,field.encode('utf-8'),field.encode('utf-8'))
return ret
+ def ZSQLSelectionFromSearchList(self,fieldname,results,fieldnameResult,boxType="checkbox",checked=None):
+ """generate select options from a cr seperated list"""
+
+ ret=""
+ if not results: return ""
+
+ for result in results:
+ field=getattr(result,fieldnameResult)
+ if field:
+ if checked and (getattr(result,fieldnameResult) in checked.split("\n")):
+ ret+="""%s"""%(fieldname,boxType,field.encode('utf-8'),field.encode('utf-8'))
+ else:
+ ret+="""%s"""%(fieldname,boxType,field.encode('utf-8'),field.encode('utf-8'))
+ return ret
+
- def ZSQLOptionsFromCRList(self,fieldname,listField, multiple=''):
+ def ZSQLOptionsFromCRList(self,fieldname,listField, multiple='',start=None,startValue=None,size=None):
"""generate select oprions form a cr seperated list"""
fields=listField.split("\n")
- ret="""