60 def delete_user(self, userid): |
60 def delete_user(self, userid): |
61 self.crs.execute(""" |
61 self.crs.execute(""" |
62 DELETE FROM users WHERE id = %d; |
62 DELETE FROM users WHERE id = %d; |
63 DELETE FROM bookmarks_keywords WHERE userid = %d; |
63 DELETE FROM bookmarks_keywords WHERE userid = %d; |
64 DELETE FROM bookmarks WHERE userid = %d; |
64 DELETE FROM bookmarks WHERE userid = %d; |
|
65 DELETE FROM preferences WHERE userid = %d; |
65 DELETE FROM keywords WHERE userid = %d; |
66 DELETE FROM keywords WHERE userid = %d; |
66 DELETE FROM db_sequence WHERE userid = %d; |
67 DELETE FROM db_sequence WHERE userid = %d; |
67 """ % (userid,userid,userid,userid,userid)) |
68 """ % (userid,userid,userid,userid,userid)) |
68 self.cnx.commit() |
69 self.cnx.commit() |
69 def get_preferences(self): |
70 def get_preferences(self): |
70 self.crs.execute(""" |
71 self.crs.execute(""" |
71 SELECT p.keywords_box, |
72 SELECT p.keywords_box, |
72 p.keywords_sort, p.keywords_reverse, |
73 p.keywords_sort, p.keywords_reverse, |
73 u.full_name |
74 u.full_name, p.default_view |
74 FROM preferences p, users u |
75 FROM preferences p, users u |
75 WHERE u.id = %d AND p.userid = u.id; |
76 WHERE u.id = %d AND p.userid = u.id; |
76 """ % (self.userid,)) |
77 """ % (self.userid,)) |
77 res = self.crs.fetchone() |
78 res = self.crs.fetchone() |
78 return { |
79 return { |
79 'keywords_box' : res[0], |
80 'keywords_box' : res[0], |
80 'keywords_sort' : res[1], |
81 'keywords_sort' : res[1], |
81 'keywords_reverse': res[2], |
82 'keywords_reverse': res[2], |
82 'fullname': res[3] |
83 'fullname': res[3], |
|
84 'default_view': res[4] |
83 } |
85 } |
84 def set_preferences(self, prefs): |
86 def set_preferences(self, prefs): |
85 if prefs['keywords_reverse']: |
87 if prefs['keywords_reverse']: |
86 rev = 'TRUE' |
88 rev = 'TRUE' |
87 else: |
89 else: |
88 rev = 'FALSE' |
90 rev = 'FALSE' |
89 self.crs.execute(""" |
91 self.crs.execute(""" |
90 UPDATE preferences |
92 UPDATE preferences |
91 SET keywords_box = %d, |
93 SET keywords_box = %d, |
92 keywords_sort = %s, |
94 keywords_sort = %s, |
93 keywords_reverse = %s |
95 keywords_reverse = %s, |
|
96 default_view = %d |
94 WHERE userid = %d; |
97 WHERE userid = %d; |
95 """ % (prefs['keywords_box'], |
98 """ % (prefs['keywords_box'], |
96 sql_quote(prefs['keywords_sort']), |
99 sql_quote(prefs['keywords_sort']), |
97 rev, self.userid)) |
100 rev, prefs['default_view'], self.userid)) |
98 self.crs.execute(""" |
101 self.crs.execute(""" |
99 UPDATE users |
102 UPDATE users |
100 SET full_name = %s |
103 SET full_name = %s |
101 WHERE id = %d; |
104 WHERE id = %d; |
102 """ % (sql_quote(prefs["fullname"]), |
105 """ % (sql_quote(prefs["fullname"]), |
320 """ % (self.userid, id, keyword, parent)) |
323 """ % (self.userid, id, keyword, parent)) |
321 self.cnx.commit() |
324 self.cnx.commit() |
322 def remove_folders(self, id, commit = 1): |
325 def remove_folders(self, id, commit = 1): |
323 if id == 0: |
326 if id == 0: |
324 raise "Can't erase base folder!" |
327 raise "Can't erase base folder!" |
325 subs = self.get_subfolders(self, id) |
328 subs = self.get_subfolders(id) |
326 for sub in subs: |
329 for sub in subs: |
327 self.remove_folder(sub[0], 0) |
330 self.remove_folder(sub[0], 0) |
328 self.crs.execute(""" |
331 self.crs.execute(""" |
329 DELETE FROM folders |
332 DELETE FROM folders |
330 WHERE id = %d AND userid = %d; |
333 WHERE id = %d AND userid = %d; |