source: TI12-security/trunk/NDGSecurity/python/ndg_security_server/ndg/security/server/wsgi/openid/provider/renderinginterface/genshi/templates/decide.html @ 6272

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI12-security/trunk/NDGSecurity/python/ndg_security_server/ndg/security/server/wsgi/openid/provider/renderinginterface/genshi/templates/decide.html@6272
Revision 6272, 3.5 KB checked in by pjkersha, 10 years ago (diff)

Fix to OpenID Provider decide page template for tests with ESG RP requested attributes.

Line 
1<html xmlns="http://www.w3.org/1999/xhtml" 
2        xmlns:py="http://genshi.edgewall.org/"
3        xmlns:xi="http://www.w3.org/2001/XInclude">       
4    <head>
5        <xi:include href="base.html"/>
6            <replace py:replace="pagehead()"/>
7    </head>
8    <body>
9        <div id="main">
10            <div py:replace="header()"/>
11            <div id="decideFormContent"> 
12                <form method="POST" action="${c.urls['url_allow']}">
13                        <table>
14                                <input type="hidden" name="identity" value="$c.identityURI" />
15                                <tr>
16                                        <td>
17                                                The website <b>$c.oidRequest.trust_root</b> has requested
18                                                your OpenID for sign in:
19                                        </td>
20                                </tr>
21                                <tr>
22                                <td>
23                                        <div id="identityUriBox">$c.identityURI</div>
24                                </td>
25                        </tr>
26                                <tr py:if="len(axRequestedAttr) > 0">
27                                    <td>
28                                                This site has also requested some additional information:
29                                         <table id="opAXRequestedAttributes">
30                                                <tr>
31                                                    <th>Item</th>
32                                                    <th>Value</th>
33                                                    <th>Return Item to Requesting Site?</th>
34                                                </tr>
35                                                                        <tr py:for="i in axRequestedAttr.values()">
36                                                                            <td>${i.alias or i.type_uri}</td>
37                                                                            <?python
38                                                                               defaultVal = "<information not available from this site>"
39                                                                               attrVal = axFetchResponse.getSingle(i.type_uri, default=defaultVal)
40                                                                               
41                                                                               # Disable checkbox if attribute is required and not optional
42                                                                               nameAttr = 'ax.%s' % i.alias
43                                                                               if i.required:
44                                                                                   inputAttr = {'disabled': 'disabled'}
45                                                                               else:
46                                                                                   inputAttr = {'id': i.alias, 'name': nameAttr, 'value': i.type_uri}
47                                                                               
48                                                                               if attrVal == defaultVal:
49                                                                                   inputAttr.update({'disabled': 'disabled'})
50                                                                               else:
51                                                                                   inputAttr.update({'checked': "checked"})
52                                                                            ?>
53                                                                                <td>${attrVal}</td>
54                                                                                <!-- hidden input is required to force the setting of disabled checkbox values -->
55                                                                            <td><input type="checkbox"  py:attrs="inputAttr"/>
56                                                                                <input py:if="i.required" type="hidden" value="${i.type_uri}" name="$nameAttr"/></td>
57                                                                        </tr> 
58                                                            </table>
59                                    </td>
60                                </tr>
61                                <tr>
62                                        <td>                                           
63                                                Would you like to pass your OpenID credential
64                                                information back to $c.oidRequest.trust_root and
65                                                return to this site? 
66                                        </td>
67                                </tr>
68                                <tr>
69                                        <td align="right">
70                                                <input type="submit" name="$c.APPROVE_RP_SUBMIT" value="Yes" />
71                                                <input type="submit" name="$c.REJECT_RP_SUBMIT" value="No" />
72                                        </td>
73                                </tr>
74                                <tr>
75                                        <td align="right">
76                                                <div py:if="c.oidRequest.trust_root not in c.session.get('approved', {})">
77                                                        <input type="checkbox" id="remember" name="remember" value="Yes"/>
78                                                        <label for="remember">Remember this decision for session duration</label>
79                                                </div>
80                                        </td>
81                                </tr>
82                        </table>
83                </form>
84            </div>
85            <div py:replace="footer()"/>
86        </div>
87    </body>
88</html>
Note: See TracBrowser for help on using the repository browser.