Trivial replaces in openid_fas.py (even though we'll probably replace the whole thing).

This commit is contained in:
Ricky Zhou (周家杰) 2008-03-02 22:30:41 -05:00
parent 150810f06f
commit 7ba2cf704e
4 changed files with 20 additions and 15 deletions

View file

@ -11,7 +11,10 @@ from openid.store.filestore import FileOpenIDStore
from fas.auth import * from fas.auth import *
from fas.user import knownUser, userNameExists from fas.user import KnownUser
class UserID(validators.Schema):
targetname = KnownUser
class OpenID(controllers.Controller): class OpenID(controllers.Controller):
@ -28,8 +31,8 @@ class OpenID(controllers.Controller):
@expose(template="fas.templates.openid.about") @expose(template="fas.templates.openid.about")
def about(self): def about(self):
'''Display an explanatory message about the OpenID service''' '''Display an explanatory message about the OpenID service'''
userName = turbogears.identity.current.user_name username = turbogears.identity.current.user_name
return dict(userName=userName) return dict(username=username)
@expose(template="genshi-text:fas.templates.openid.auth", format="text", content_type='text/plain; charset=utf-8') @expose(template="genshi-text:fas.templates.openid.auth", format="text", content_type='text/plain; charset=utf-8')
def server(self, **query): def server(self, **query):
@ -58,10 +61,10 @@ class OpenID(controllers.Controller):
else: else:
openid_response = None openid_response = None
if openid_request.mode in BROWSER_REQUEST_MODES: if openid_request.mode in BROWSER_REQUEST_MODES:
userName = turbogears.identity.current.user_name; username = turbogears.identity.current.user_name;
url = None url = None
if userName is not None: if username is not None:
url = config.get('base_url') + turbogears.url('/openid/id/%s' % userName) url = config.get('base_url') + turbogears.url('/openid/id/%s' % username)
if openid_request.identity == url: if openid_request.identity == url:
if openid_request.trust_root in session['openid_trusted']: if openid_request.trust_root in session['openid_trusted']:
openid_response = openid_request.answer(True) openid_response = openid_request.answer(True)
@ -95,16 +98,15 @@ class OpenID(controllers.Controller):
@expose() @expose()
def login(self): def login(self):
'''This exists only to make the user login and then redirect to /openid/server''' '''This exists only to make the user login and then redirect to /openid/server'''
userName = turbogears.identity.current.user_name;
turbogears.redirect('/openid/server') turbogears.redirect('/openid/server')
return dict() return dict()
@expose(template="fas.templates.openid.id") @expose(template="fas.templates.openid.id")
@validate(validators=userNameExists()) @validate(validators=UserID())
def id(self, userName): def id(self, username):
'''The "real" OpenID URL''' '''The "real" OpenID URL'''
user = Person.byUserName(userName) person = Person.by_username(username)
server = config.get('base_url') + turbogears.url('/openid/server') server = config.get('base_url') + turbogears.url('/openid/server')
return dict(user=user, server=server) return dict(person=person, server=server)

View file

@ -8,13 +8,13 @@
<link rel="openid.server" href="${server}" /> <link rel="openid.server" href="${server}" />
</head> </head>
<body> <body>
<h2>${_('User %s') % user.cn}</h2> <h2>${_('User %s') % person.username}</h2>
<div class="userbox"> <div class="userbox">
<dl> <dl>
<dt>${_('Username:')}</dt> <dt>${_('Username:')}</dt>
<dd>${user.cn}</dd> <dd>${person.username}</dd>
<dt>${_('Name:')}</dt> <dt>${_('Name:')}</dt>
<dd>${user.givenName}</dd> <dd>${person.human_name}</dd>
</dl> </dl>
</div> </div>
</body> </body>

View file

@ -372,6 +372,9 @@ class User(controllers.Controller):
Please go to https://admin.fedoraproject.org/fas/ to change it. Please go to https://admin.fedoraproject.org/fas/ to change it.
''')) % newpass['pass'] ''')) % newpass['pass']
if encrypted: if encrypted:
# TODO: Move this out to a single function (same as
# CLA one), think of how to make sure this doesn't get
# full of random keys (keep a clean Fedora keyring)
try: try:
subprocess.check_call([config.get('gpgexec'), '--keyserver', config.get('gpg_keyserver'), '--recv-keys', person.gpg_keyid]) subprocess.check_call([config.get('gpgexec'), '--keyserver', config.get('gpg_keyserver'), '--recv-keys', person.gpg_keyid])
except subprocess.CalledProcessError: except subprocess.CalledProcessError: