--- ZSQLExtend/ZSQLExtend.py 2003/12/11 17:22:51 1.3 +++ ZSQLExtend/ZSQLExtend.py 2003/12/23 17:56:01 1.4 @@ -58,7 +58,41 @@ class ZSQLExtendFolder(Persistent, Impli self.search(var=queryString) return self.REQUEST.RESPONSE.redirect(format) - def ZSQLChange(self): + def ZSQLChange(self,**argv): + """Ändern von Einträgen""" + #qs=self.REQUEST['QUERY_STRING'] + # very bad hack + qs_temp=[] + + for a in self.REQUEST.form.keys(): + qs_temp.append(a+"="+urllib.quote(str(self.REQUEST.form[a]))) + + qs=string.join(qs_temp,"&") + + + #print "CHANGE QS",self.REQUEST + #return self.REQUEST + changeList=[] + for q in qs.split("&"): + name=urllib.unquote(re.sub("r'+'"," ",q.split("=")[0].lower())) + value=q.split("=")[1] + value=re.sub(r'\+'," ",value) + value=urllib.unquote(value) + if name=="-table": + table=urllib.unquote(value) + elif name=="-identify": + identify=urllib.unquote(value) + identify=identify.split("=")[0]+"="+libpq.PgQuoteString(identify.split("=")[1]) + elif name=="-format": + format=urllib.unquote(value) + elif (not name[0]=="-") and (not len(value)==0): + changeList.append("\""+name+"\"="+libpq.PgQuoteString(urllib.unquote(value))) + changeString=string.join(changeList,",") + queryString="UPDATE %s SET %s WHERE %s"%(table,changeString,identify) + self.search(var=queryString) + return self.REQUEST.RESPONSE.redirect(format) + + def ZSQLChange_old(self): """Ändern von Einträgen""" qs=self.REQUEST['QUERY_STRING'] #print "CHANGE QS",self.REQUEST