Diff for /ZSQLExtend/ZSQLExtend.py between versions 1.10 and 1.13

version 1.10, 2004/02/05 20:31:42 version 1.13, 2004/03/10 15:06:53
Line 18  class ZSQLExtendFolder(Persistent, Impli Line 18  class ZSQLExtendFolder(Persistent, Impli
     """Folder"""      """Folder"""
     meta_type="ZSQLExtendFolder"      meta_type="ZSQLExtendFolder"
   
       def getSAttribute(self,obj,atribute,pref=''):
           """get Attribute or emptystring"""
           
           #print "obj",obj
           try:
               return pref+getattr(obj,atribute)
           except:
               return ""
           
       def getS(self,str):
           """make none to empty string"""
           if str:
               return str
           else:
               return ""
   
     def actualPath(self,url=None):      def actualPath(self,url=None):
     """path"""      """path"""
   
Line 188  class ZSQLExtendFolder(Persistent, Impli Line 204  class ZSQLExtendFolder(Persistent, Impli
                                 
                qs=self.REQUEST.SESSION['query']                 qs=self.REQUEST.SESSION['query']
         else:          else:
               self.REQUEST['QUERY_STRING']=qs
             qs=string.join(qs.split("&"),",")              qs=string.join(qs.split("&"),",")
           
   
         qs=re.sub("\\+"," ",qs)# Austauschen da Leerzeichen bei http-get durch + ersetzt wird, generell sollte alles auf post umgeschrieben werden. vom search formular.          qs=re.sub("\\+"," ",qs)# Austauschen da Leerzeichen bei http-get durch + ersetzt wird, generell sollte alles auf post umgeschrieben werden. vom search formular.
         #print "QS",qs  
         if storename:          if storename:
             """store"""              """store"""
         else:          else:
             storename="foundCount"              storename="foundCount"
                   #print "QS",qs
         ret=self.parseQueryString(qs,"-",select=select,storemax="yes",storename=storename)          ret=self.parseQueryString(qs,"-",select=select,storemax="yes",storename=storename)
         #print self.REQUEST.SESSION["foundCount"]          #print self.REQUEST.SESSION["foundCount"]
                   
Line 261  class ZSQLExtendFolder(Persistent, Impli Line 278  class ZSQLExtendFolder(Persistent, Impli
         #print "NO",nostore          #print "NO",nostore
         lop="AND" # standardsuche mit and          lop="AND" # standardsuche mit and
         max="ALL" #standard alle auswählen          max="ALL" #standard alle auswählen
           maxstr=""
         whereList=[]          whereList=[]
         sort=""          sort=""
         op="bw"          op="bw"
         opfields={}          opfields={}
         skip=""          skip=""
         rangeStart=0          rangeStart=0
           limit=0
           searchFields={}
                   
         if not select:          if not select:
             select="oid,*"              select="oid,*"
Line 279  class ZSQLExtendFolder(Persistent, Impli Line 299  class ZSQLExtendFolder(Persistent, Impli
         for q in splitted:          for q in splitted:
                                   
                 name=re.sub("r'+'"," ",q.split("=")[0].lower())                  name=re.sub("r'+'"," ",q.split("=")[0].lower())
                 value=urllib.unquote(q.split("=")[1])                  value=urllib.unquote(q.split("=",1)[1])
   
                 if name[0:3]==iCT+"op":                  if name[0:3]==iCT+"op":
                     op=value                      op=value
Line 294  class ZSQLExtendFolder(Persistent, Impli Line 314  class ZSQLExtendFolder(Persistent, Impli
             #try:              #try:
   
             name=re.sub("r'+'"," ",q.split("=")[0].lower())              name=re.sub("r'+'"," ",q.split("=")[0].lower())
             value=urllib.unquote(q.split("=")[1])              value=urllib.unquote(q.split("=",1)[1])
             #value=libpq.PgQuoteString(value)              #value=libpq.PgQuoteString(value)
                           
                           
Line 305  class ZSQLExtendFolder(Persistent, Impli Line 325  class ZSQLExtendFolder(Persistent, Impli
             elif name==iCT+"select":              elif name==iCT+"select":
                 select=value                  select=value
             elif name==iCT+"max":              elif name==iCT+"max":
                 max="LIMIT "+str(value)                  maxstr="LIMIT "+str(value)
                 limit=str(value)                  limit=str(value)
             elif name==iCT+"skip":              elif name==iCT+"skip":
                 skip="OFFSET "+str(value)                  skip="OFFSET "+str(value)
Line 327  class ZSQLExtendFolder(Persistent, Impli Line 347  class ZSQLExtendFolder(Persistent, Impli
                                   
         #print "OP",op,name          #print "OP",op,name
                 value=value.lower()                  value=value.lower()
   
                   searchFields[name]=value
                   
                 if opfields.has_key(name):                  if opfields.has_key(name):
                     op=opfields[name]                      op=opfields[name]
         else:          else:
Line 354  class ZSQLExtendFolder(Persistent, Impli Line 377  class ZSQLExtendFolder(Persistent, Impli
             where=""              where=""
         #print "QE",table          #print "QE",table
                   
         query="SELECT %s FROM %s %s %s %s %s"%(select,table,where,sort,max,skip)          query="SELECT %s FROM %s %s %s %s %s"%(select,table,where,sort,maxstr,skip)
           
         if not nostore=="yes":          if not nostore=="yes":
                           
             self.REQUEST.SESSION['qs']=opfields              self.REQUEST.SESSION['qs']=opfields
Line 386  class ZSQLExtendFolder(Persistent, Impli Line 410  class ZSQLExtendFolder(Persistent, Impli
             else:              else:
                 self.REQUEST.SESSION[storename]['rangeEnd']=int(rangeStart)+int(limit)                  self.REQUEST.SESSION[storename]['rangeEnd']=int(rangeStart)+int(limit)
             self.REQUEST.SESSION[storename]['rangeSize']=limit              self.REQUEST.SESSION[storename]['rangeSize']=limit
               self.REQUEST.SESSION[storename]['searchFields']=searchFields
                           
     #print query                  #print "Q",query            
         return self.search(var=query)          return self.search(var=query)
           
       
     def ZSQLSearch(self):      def ZSQLSearch(self):
         """To be done"""          """To be done"""
         rq=self.REQUEST['QUERY_STRING']          rq=self.REQUEST['QUERY_STRING']
Line 415  class ZSQLExtendFolder(Persistent, Impli Line 441  class ZSQLExtendFolder(Persistent, Impli
         except:          except:
             return 0              return 0
   
       def getZSQLSearchFieldsList(self,storename="foundCount"):
           """get searchfieldList"""
           #print self.REQUEST.SESSION[storename]['searchFields'].keys()
           return  self.REQUEST.SESSION[storename]['searchFields'].keys()
   
       def getZSQLSearchFields(self,storename="foundCount"):
           """get searchfield"""
           #print "SF",self.REQUEST.SESSION[storename]['searchFields']
           return  self.REQUEST.SESSION[storename]['searchFields']
   
                                                   
     def nextLink(self,html,storename="foundCount"):      def nextLink(self,html,storename="foundCount"):
         """nextLink"""          """nextLink"""
         try:          try:

Removed from v.1.10  
changed lines
  Added in v.1.13


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