Mercurial > hg > bitsyauth
comparison bitsyauth/__init__.py @ 6:40fa556252a7
fix playing nice with paste auth
author | k0s <k0scist@gmail.com> |
---|---|
date | Sat, 26 Dec 2009 23:09:19 -0500 |
parents | 2693b81f5960 |
children | c958eb9300da |
comparison
equal
deleted
inserted
replaced
5:2693b81f5960 | 6:40fa556252a7 |
---|---|
119 multi_auth.add_method('digest', digest.middleware, | 119 multi_auth.add_method('digest', digest.middleware, |
120 self.realm, self.digest_authfunc) | 120 self.realm, self.digest_authfunc) |
121 multi_auth.set_query_argument('digest', key='auth') | 121 multi_auth.set_query_argument('digest', key='auth') |
122 | 122 |
123 # form authentication | 123 # form authentication |
124 template = self.login(wrap=True) | 124 template = self.login(wrap=True, action='%s') |
125 multi_auth.add_method('form', form.middleware, self.authfunc, | 125 multi_auth.add_method('form', form.middleware, self.authfunc, |
126 template=template) | 126 template=template) |
127 multi_auth.set_default('form') | 127 multi_auth.set_default('form') |
128 | 128 |
129 return multi_auth | 129 return multi_auth |
184 ### forms and their display methods | 184 ### forms and their display methods |
185 | 185 |
186 ### login | 186 ### login |
187 | 187 |
188 def login_form(self, referer=None, action=None): | 188 def login_form(self, referer=None, action=None): |
189 if action is None: | 189 form = Form(action=action or '', submit='Login') |
190 action = self.urls['login'] | |
191 form = Form(action='', submit='Login') | |
192 form.add_element('textfield', 'Name', input_name='username') | 190 form.add_element('textfield', 'Name', input_name='username') |
193 form.add_element('password', 'Password', input_name='password') | 191 form.add_element('password', 'Password', input_name='password') |
194 if referer: | 192 if referer: |
195 form.add_element('hidden', 'referer', value=referer) | 193 form.add_element('hidden', 'referer', value=referer) |
196 return form | 194 return form |
198 def login(self, errors=None, wrap=False, action=None): | 196 def login(self, errors=None, wrap=False, action=None): |
199 """login div""" | 197 """login div""" |
200 referer = None | 198 referer = None |
201 if hasattr(self, 'request'): | 199 if hasattr(self, 'request'): |
202 referer = self.request.referer | 200 referer = self.request.referer |
203 | |
204 form = self.login_form(action=action, referer=referer) | 201 form = self.login_form(action=action, referer=referer) |
205 join = self.urls.get('join') | 202 join = self.urls.get('join') |
206 retval = form(errors) | 203 retval = form(errors) |
207 if join: | 204 if join: |
208 retval += '<br/>\n' + markup.a('join', href="%s" % join) | 205 retval += '<br/>\n' + markup.a('join', href="%s" % join) |