prewikka/master: Fix multiple user configuration value deletion.

[email protected]
Newsgroups gmane.comp.security.ids.prelude.cvs
Message-ID <[email protected]>
commit 24ade8131e971325bcffadf2312bbcf0c8c7011b
Author: Yoann Vandoorselaere <[email protected]>
Date:   Fri May 22 12:14:00 2009 +0200

    Fix multiple user configuration value deletion.
    
    User.delConfigValueMatch() was correctly removing all matching entry
    from the database, but didn't update the configuration value dictionary
    according to the change.


========================================

 prewikka/User.py               |    5 +----
 prewikka/views/alertlisting.py |    6 +++---
 2 files changed, 4 insertions(+), 7 deletions(-)

========================================

diff --git a/prewikka/User.py b/prewikka/User.py
index 8cbeced..3513c81 100644
--- a/prewikka/User.py
+++ b/prewikka/User.py
@@ -71,12 +71,9 @@ class User:
     def delConfigValueMatch(self, view, key):
         login = self._db.escape(self.login)
 
-        self._db.query("DELETE FROM Prewikka_User_Configuration WHERE view = %s AND login = %s AND name LIKE %s"
-                       % (self._db.escape(view), login, self._db.escape(key)))
-
         for k in self.configuration[view].keys():
             if k.find(key) != -1:
-                self.configuration.pop(key)
+                self.delConfigValue(view, k)
 
     def getConfigValue(self, view, key):
         return self.configuration[view][key]
diff --git a/prewikka/views/alertlisting.py b/prewikka/views/alertlisting.py
index 3f6e349..cd5c858 100644
--- a/prewikka/views/alertlisting.py
+++ b/prewikka/views/alertlisting.py
@@ -231,9 +231,9 @@ class AlertListingParameters(MessageListingParameters):
 
 
         if do_save:
-            user.delConfigValueMatch(view_name, "%s_object_%%" % (column))
-            user.delConfigValueMatch(view_name, "%s_operator_%%" % (column))
-            user.delConfigValueMatch(view_name, "%s_value_%%" % (column))
+            user.delConfigValueMatch(view_name, "%s_object_" % (column))
+            user.delConfigValueMatch(view_name, "%s_operator_" % (column))
+            user.delConfigValueMatch(view_name, "%s_value_" % (column))
 
             for num, obj, operator, value in sorted:
                 user.setConfigValue(view_name, "%s_object_%d" % (column, num), obj)
_______________________________________________
Prelude-cvslog site list
[email protected]
http://lists.prelude-ids.org/mailman/listinfo/prelude-cvslog
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.