Attachment 'userform.py.patch'
Download 1 --- userform.py.orig 2006-01-27 20:07:46.377487392 +0100
2 +++ userform.py 2006-01-27 20:07:53.370424304 +0100
3 @@ -157,12 +157,26 @@
4 if _debug:
5 result = result + util.dumpFormData(form)
6 return result
7 -
8 +
9 + ## Reimar Bauer 2006-01-24 ##
10 + if form.has_key('select_user'): # Select user profile (su user)
11 + if self.request.request_method != 'POST':
12 + return _("Use UserPreferences to change your settings or create an account.")
13 + su_user = form.get('selected_user', [''])[0]
14 + uid = user.getUserId(self.request, su_user)
15 + theuser = user.User(self.request, uid)
16 + theuser.disabled = None
17 + theuser.save()
18 + self.request.user = theuser
19 + self.request.setCookie()
20 + return _("Use UserPreferences to change settings of the selected user account")
21 + ###############################
22 +
23 if form.has_key('save'): # Save user profile
24 if self.request.request_method != 'POST':
25 return _("Use UserPreferences to change your settings or create an account.")
26 theuser = self.request.get_user()
27 -
28 +
29 if not 'name' in theuser.auth_attribs:
30 # Require non-empty name
31 theuser.name = form.get('name', [theuser.name])[0]
32 @@ -386,6 +400,21 @@
33
34 return util.web.makeSelection('language', options, cur_lang)
35
36 + ## Reimar Bauer 2006-01-24 ##
37 + def _user_select(self):
38 + from MoinMoin import user
39 +
40 + _ = self._
41 + cur_user = self.request.user.name
42 + users = user.getUserList(self.request)
43 + options = []
44 + for uid in users:
45 + name = user.User(self.request, id=uid).name
46 + options.append((name, name))
47 +
48 + return util.web.makeSelection('selected_user', options, cur_user)
49 + ###############################
50 +
51 def _theme_select(self):
52 """ Create theme selection. """
53 cur_theme = self.request.user.valid and self.request.user.theme_name or self.cfg.theme_default
54 @@ -443,7 +472,21 @@
55 """ Create the complete HTML form code. """
56 _ = self._
57 self.make_form()
58 -
59 +
60 + ## ReimarBauer 2006-01-24 ##
61 + if self.request.user.name in self.request.cfg.superuser:
62 + self.make_row(_('Select User'), [self._user_select()])
63 +
64 + buttons = [("select_user", _('Select User'))]
65 + button_cell = []
66 + for name, label in buttons:
67 + button_cell.extend([
68 + html.INPUT(type="submit", name=name, value=label),
69 + ' ',
70 + ])
71 + self.make_row('', button_cell)
72 + ############################
73 +
74 if self.request.user.valid and not create_only:
75 buttons = [('save', _('Save'))]
76 uf_remove = self.cfg.user_form_remove
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.