| #produce("answer") |
| <!doctype html> |
| <html> |
| <head> |
| <meta charset="utf-8" /> |
| <title></title> |
| <style> |
| html, body { height: 100%; width: 100%; margin: 0; } |
| </style> |
| </head> |
| <body> |
| |
| <script type="text/javascript" src="$pmrpcUrl"></script> |
| |
| <script type="text/javascript"> |
| |
| var sites = {}; |
| |
| #foreach( $value in $loginSites ) |
| sites["${value.getName()}"] = "${value.getAuthorizeUrl(${interactionUrl})}"; |
| #end |
| |
| function forward() { |
| var chosenSiteName = document.myform.mySelect.options[document.myform.mySelect.selectedIndex].value; |
| window.open(sites[chosenSiteName]); |
| } |
| |
| function reply(token) { |
| pmrpc.call({ |
| destination : "publish", |
| publicProcedureName : "reply", |
| params : ["OK", {"answer" : token}], |
| onSuccess : function() {document.getElementsByTagName('body')[0].innerHTML='<h1>Data submitted</h1>';}, |
| onFailure: function() {document.getElementsByTagName('body')[0].innerHTML='<h1>Data submission failed</h1>';} |
| }); |
| } |
| |
| function considerReply() { |
| pmrpc.call({ |
| destination : "publish", |
| publicProcedureName : "getParameterValue", |
| params: ["oauth_token"], |
| onSuccess : function(retVal) { if ((retVal.returnValue != null) && (retVal.returnValue != '')) { reply(retVal.returnValue);}} |
| }); |
| } |
| |
| function cancel() { |
| pmrpc.call({ |
| destination : "publish", |
| publicProcedureName : "reply", |
| params : ["Cancelled", {}], |
| onSuccess : function() {document.getElementsByTagName('body')[0].innerHTML='<h1>Cancelled</h1>';}, |
| onFailure: function() {document.getElementsByTagName('body')[0].innerHTML='<h1>Cancellation failed</h1>';} |
| }); |
| return true; |
| } |
| |
| window.onload = considerReply(); |
| </script> |
| |
| <h2>Please select an authentication site</h2> |
| <form name="myform" onSubmit="forward(); return false;"> |
| <select name="mySelect"> |
| #foreach( $value in $loginSites ) |
| <option value="$value.getName()">$value.getName()</option> |
| #end |
| </select><br /> |
| <input type="button" value="Cancel" onClick = "cancel()"/> |
| <input type="button" value="Submit" onClick = "forward()"/> |
| </form> |
| </body> |
| </html> |
| |