annotate framework/env/auth/openid/xrds_document.lua @ 473:981ebb743b36
Support proto = "main" in listen{...} call
 | author | jbe | 
 | date | Tue Jun 06 11:36:31 2017 +0200 (2017-06-06) | 
 | parents | 3a6fe8663b26 | 
 | children |  | 
 
 | rev | line source | 
| jbe/bsw@20 | 1 --[[-- | 
| jbe/bsw@20 | 2 auth.openid.xrds_document{ | 
| jbe/bsw@20 | 3   return_to_module = return_to_module, | 
| jbe/bsw@20 | 4   return_to_view   = return_to_view | 
| jbe/bsw@20 | 5 } | 
| jbe/bsw@20 | 6 | 
| jbe/bsw@20 | 7 This function returns an XRDS document with Content-Type | 
| jbe/bsw@20 | 8 application/xrds+xml. For more information see documentation on | 
| jbe/bsw@20 | 9 auth.openid.xrds_document{...}. | 
| jbe/bsw@20 | 10 | 
| jbe/bsw@20 | 11 --]]-- | 
| jbe/bsw@20 | 12 | 
| jbe/bsw@20 | 13 function auth.openid.xrds_document(args) | 
| jbe/bsw@20 | 14   slot.set_layout(nil, "application/xrds+xml") | 
| jbe/bsw@20 | 15   slot.put_into("data", | 
| jbe@23 | 16     '<?xml version="1.0" encoding="UTF-8"?>\n', | 
| jbe@23 | 17     '<xrds:XRDS xmlns:xrds="xri://$xrds" xmlns="xri://$xrd*($v*2.0)">\n', | 
| jbe@23 | 18     '  <XRD>\n', | 
| jbe@23 | 19     '    <Service>\n', | 
| jbe@23 | 20     '      <Type>http://specs.openid.net/auth/2.0/return_to</Type>\n', | 
| jbe@23 | 21     '      <URI>', | 
| jbe/bsw@20 | 22     encode.url{ | 
| jbe/bsw@20 | 23       base   = request.get_absolute_baseurl(), | 
| jbe/bsw@20 | 24       module = args.return_to_module, | 
| jbe/bsw@20 | 25       view   = args.return_to_view | 
| jbe/bsw@20 | 26     }, | 
| jbe@23 | 27     '</URI>\n', | 
| jbe@23 | 28     '    </Service>\n', | 
| jbe@23 | 29     '  </XRD>\n', | 
| jbe@23 | 30     '</xrds:XRDS>\n' | 
| jbe/bsw@20 | 31   ) | 
| jbe/bsw@20 | 32 end |