1.1 --- a/examples/Common/OpenIDLogin/__init__.py Fri Nov 27 01:58:47 2009 +0100
1.2 +++ b/examples/Common/OpenIDLogin/__init__.py Sat Nov 28 22:16:27 2009 +0100
1.3 @@ -7,6 +7,7 @@
1.4 from WebStack.Resources.ResourceMap import MapResource
1.5 from WebStack.Resources.Static import StringResource
1.6 from WebStack.Generic import ContentType
1.7 +import urllib
1.8
1.9 def get_site_map(app_url, deployment_url):
1.10
1.11 @@ -16,17 +17,22 @@
1.12 protocol, host and port, not including any path information.
1.13 """
1.14
1.15 + # NOTE: Support "special" username due to stupid HTML 4 restrictions.
1.16 +
1.17 + special_username = urllib.quote(u"זרו".encode("utf-8"))
1.18 +
1.19 login = OpenIDLoginResource(
1.20 app_url=app_url,
1.21 authenticator=Authenticator(
1.22 credentials=(
1.23 # Local identifier, username, password
1.24 - (( "badger", "badger"), "abc"),
1.25 - (( "vole", "vole"), "xyz"),
1.26 - ((u"זרו", u"זרו"), u"ֶ״ֵ"),
1.27 - (( "badger2", "badger"), "abc"),
1.28 - (( "vole2", "vole"), "xyz"),
1.29 - ((u"זרו2", u"זרו"), u"ֶ״ֵ"),
1.30 + ((deployment_url + "/badger", "badger"), "abc"),
1.31 + ((deployment_url + "/vole", "vole"), "xyz"),
1.32 + ((deployment_url + u"/זרו", u"זרו"), u"ֶ״ֵ"),
1.33 + ((deployment_url + "/badger2", "badger"), "abc"),
1.34 + ((deployment_url + "/vole2", "vole"), "xyz"),
1.35 + ((deployment_url + u"/זרו2", u"זרו"), u"ֶ״ֵ"),
1.36 + ((deployment_url + "/" + special_username, u"זרו"), u"ֶ״ֵ"),
1.37 )
1.38 )
1.39 )
1.40 @@ -43,42 +49,42 @@
1.41 <head>
1.42 <meta http-equiv="Content-Type" content="text/html; charset="iso-8859-1" />
1.43 <link rel="openid2.provider openid.server" href="%s/login" />
1.44 - <link rel="openid2.local_id openid.delegate" href="badger" />
1.45 + <link rel="openid2.local_id openid.delegate" href="%s/badger" />
1.46 <title>Badger's Home Page</title>
1.47 </head>
1.48 <body>
1.49 <p>Home page for the OpenID authenticated user, <code>badger</code>.</p>
1.50 </body>
1.51 </html>
1.52 - """ % deployment_url, ContentType("text/html")),
1.53 + """ % (deployment_url, deployment_url), ContentType("text/html")),
1.54 u"זרו" :
1.55 StringResource(u"""
1.56 <html>
1.57 <head>
1.58 <meta http-equiv="Content-Type" content="text/html; charset="iso-8859-1" />
1.59 <link rel="openid2.provider openid.server" href="%s/login" />
1.60 - <link rel="openid2.local_id openid.delegate" href="זרו" />
1.61 + <link rel="openid2.local_id openid.delegate" href="%s/%s" />
1.62 <title>Home Page for זרו</title>
1.63 </head>
1.64 <body>
1.65 <p>Home page for the OpenID authenticated user, <code>זרו</code>.</p>
1.66 </body>
1.67 </html>
1.68 - """ % deployment_url, ContentType("text/html", "iso-8859-1")),
1.69 + """ % (deployment_url, deployment_url, special_username), ContentType("text/html", "iso-8859-1")),
1.70 "vole" :
1.71 StringResource("""
1.72 <html>
1.73 <head>
1.74 <meta http-equiv="Content-Type" content="text/html; charset="iso-8859-1" />
1.75 <link rel="openid2.provider openid.server" href="%s/login" />
1.76 - <link rel="openid2.local_id openid.delegate" href="vole" />
1.77 + <link rel="openid2.local_id openid.delegate" href="%s/vole" />
1.78 <title>Vole's Home Page</title>
1.79 </head>
1.80 <body>
1.81 <p>Home page for the OpenID authenticated user, <code>vole</code>.</p>
1.82 </body>
1.83 </html>
1.84 - """ % deployment_url, ContentType("text/html")),
1.85 + """ % (deployment_url, deployment_url), ContentType("text/html")),
1.86
1.87 # OpenID 2.0 resources.
1.88 # See: http://docs.oasis-open.org/xri/2.0/specs/cd02/xri-resolution-V2.0-cd-02.html#_Ref129424065
1.89 @@ -92,27 +98,27 @@
1.90 <Service xmlns="xri://$xrd*($v*2.0)">
1.91 <Type>http://specs.openid.net/auth/2.0/signon</Type>
1.92 <URI>%s/login</URI>
1.93 - <LocalID>badger2</LocalID>
1.94 + <LocalID>%s/badger2</LocalID>
1.95 </Service>
1.96 - """ % deployment_url, ContentType("application/xrd+xml")),
1.97 + """ % (deployment_url, deployment_url), ContentType("application/xrd+xml")),
1.98 u"זרו2" :
1.99 StringResource(u"""
1.100 <?xml version="1.0" encoding="iso-8859-1"?>
1.101 <Service xmlns="xri://$xrd*($v*2.0)">
1.102 <Type>http://specs.openid.net/auth/2.0/signon</Type>
1.103 <URI>%s/login</URI>
1.104 - <LocalID>זרו2</LocalID>
1.105 + <LocalID>%s/זרו2</LocalID>
1.106 </Service>
1.107 - """ % deployment_url, ContentType("application/xrd+xml", "iso-8859-1")),
1.108 + """ % (deployment_url, deployment_url), ContentType("application/xrd+xml", "iso-8859-1")),
1.109 "vole2" :
1.110 StringResource("""
1.111 <?xml version="1.0"?>
1.112 <Service xmlns="xri://$xrd*($v*2.0)">
1.113 <Type>http://specs.openid.net/auth/2.0/signon</Type>
1.114 <URI>%s/login</URI>
1.115 - <LocalID>vole2</LocalID>
1.116 + <LocalID>%s/vole2</LocalID>
1.117 </Service>
1.118 - """ % deployment_url, ContentType("application/xrd+xml")),
1.119 + """ % (deployment_url, deployment_url), ContentType("application/xrd+xml")),
1.120 })
1.121
1.122 # vim: tabstop=4 expandtab shiftwidth=4