diff options
author | Leif Johansson <leifj@sunet.se> | 2010-07-18 23:01:42 +0200 |
---|---|---|
committer | Leif Johansson <leifj@sunet.se> | 2010-07-18 23:01:42 +0200 |
commit | 97825dc24f555d7f735b05d49216c174f9f13cb7 (patch) | |
tree | fe5e4bd1d17797b6ad64141fe4b07291f9656ea3 /src/main/webapp/wayf-sunet.jsp | |
parent | 422bdd121379076c4f3593d016b04b2a9574b43e (diff) |
major update for the sunet ds
Diffstat (limited to 'src/main/webapp/wayf-sunet.jsp')
-rw-r--r-- | src/main/webapp/wayf-sunet.jsp | 495 |
1 files changed, 126 insertions, 369 deletions
diff --git a/src/main/webapp/wayf-sunet.jsp b/src/main/webapp/wayf-sunet.jsp index e42e618..3e54c70 100644 --- a/src/main/webapp/wayf-sunet.jsp +++ b/src/main/webapp/wayf-sunet.jsp @@ -48,7 +48,7 @@ <logic:notPresent name="entityID" scope="request"> <logic:notPresent name="shire" scope="request"> -<jsp:forward page = "wayferror.jsp"/> +<jsp:forward page = "wayferror-swamid.jsp"/> </logic:notPresent> </logic:notPresent> @@ -140,56 +140,90 @@ </logic:present> <head> - <link rel="stylesheet" title="normal" type="text/css" - href="wayf-sunet.css" /> <title>Identity Provider Selection</title> - </head> - + <title>Identity Provider Selection</title> + <link href="css/reset.css" rel="stylesheet" type="text/css" /> + <link href="css/sunet.css" rel="stylesheet" type="text/css" /> + <link rel="stylesheet" title="normal" type="text/css" href="css/ui-lightness/jquery-ui-1.8.2.custom.css"/> + <script language="javascript" type="text/javascript" src="js/jquery-1.4.2.min.js"></script> + <script language="javascript" type="text/javascript" src="js/jquery-ui-1.8.2.custom.min.js"></script> + <link href="wayf-sunet.css" rel="stylesheet" type="text/css" /> +</head> <body> - <div id="container"> - <div class="head"> - <img src="images/swami2.png" alt="SWAMI logotype"> - </div> - - <div class="content"> - <div class="content-left"> - <img src="images/swedish-flag.png" alt="Swedish flag"> - <h2>Välj en identitetsutgivare</h2> - <p>Tjänsten du försöker nå kräver att du väljer en identitetsutgivare (tex ditt universitet/högskola) från nedanstående lista innan du kan logga in. </p> - <p><a title="Länken öppnas i ett nytt fönster" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940&a=25649" class="external-link" rel="external">Vad är en identitetsutgivare?</a><br/> - <a title="Länken öppnas i ett nytt fönster" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940" class="external-link" rel="external">Vad är SWAMID?</a></p> - </div> - <div class="content-right"> - <img src="images/flagga_uk.gif" alt="English flag"> - <h2>Choose an identity provider</h2> - <p>The Service you are trying to access requires you to choose an identityprovider (e.g. your university/college) from the list below before you can log in. </p> - <p><a title="Link will open in a new window" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940&a=25650" target="wayf-info" class="external-link" rel="external">What is an identity provider?</a><br/> - <a title="Link will open in a new window" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940" class="external-link" target="wayf-info" rel="external">What is SWAMID?</a> - </p> - </div> - - <div class="selector"> + <div class="wCont"> + <div class="header"> + <a href="#" id="logo"> </a> + <div id="menuContL"></div> + <div id="menuContR"></div> + </div> + + <div class="content"> + <div class="contL"> + <h1>Authentication required</h1> + <p class="intro">Type the name of your home organization or select from the list below</p> + + <logic:present name="sites" scope="request"><logic:notPresent name="siteLists" scope="request"> + <form style="margin-bottom: 10px;" id="originform" method="get" action="<bean:write name="requestURL" />"> + <div> + <logic:notPresent name="entityID" scope="request"> + <input type="hidden" name="shire" value="<bean:write name="shire" />" /> + <input type="hidden" name="target" value="<bean:write name="target" />" /> + <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> + <logic:present name="time" scope="request"> + <input type="hidden" name="time" value="<bean:write name="time" />" /> + </logic:present> + </logic:notPresent> + <logic:present name="entityID" scope="request"> + <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> + <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> + <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> + </logic:present> + <input type="hidden" name="action" value="selection" /> + <input type="text" id="originSearch" name="string" value="" tabindex="25" size="30"/> + <select name="origin" id="origin" tabindex="40"> + <logic:iterate id="site" name="sites"> + <option value="<jsp:getProperty name="site" property="name" />"> + <jsp:getProperty name="site" property="displayName" /> + </option> + </logic:iterate> + </select> + <input type="submit" value="Select" tabindex="50" /> + <select name="cache" tabindex="60"> + <option value="false"> Do not remember</option> + <option value="session" selected="selected"> Remember for session</option> + <option value="perm"> Remember for a week</option> + </select> + </div> + </form> + </logic:notPresent></logic:present> + <div class="blockCont"> + <div class="infoBlock"> + <img src="images/swedish-flag.png" alt="Swedish flag"></img> + <h2>Välj en identitetsutgivare</h2> + <p>Tjänsten du försöker nå kräver att du väljer en identitetsutgivare (tex ditt universitet/högskola) från nedanstående lista innan du kan logga in. </p> + <p><a title="Länken öppnas i ett nytt fönster" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940&a=25649" class="external-link" rel="external">Vad är en identitetsutgivare?</a><br/> + <a title="Länken öppnas i ett nytt fönster" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940" class="external-link" rel="external">Vad är SWAMID?</a></p> + </div> + <div class="infoBlock"> + <img src="images/flagga_uk.gif" alt="English flag"></img> + <h2>Choose an identity provider</h2> + <p>The Service you are trying to access requires you to choose an identityprovider (e.g. your university/college) from the list below before you can log in. </p> + <p><a title="Link will open in a new window" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940&a=25650" target="wayf-info" class="external-link" rel="external">What is an identity provider?</a><br/> + <a title="Link will open in a new window" href="http://www.swamid.se/pub/jsp/polopoly.jsp?d=6940" class="external-link" target="wayf-info" rel="external">What is SWAMID?</a></p> + </div> + <div class="infoBlock"> <logic:present name="cookieList" scope="request"> - - <h2>Recently used:</h2> - -<logic:present name="showComments" scope="Request"> - -<!-- PROGRAMMING NOTE - - Generate a hyperlink back to the WAYF. Note that we are - simulating the user having specified a permanent cookie --> - -</logic:present> - + <img src="images/flagga_uk.gif" alt="English flag"></img> + <h2>Recently used identity providers</h2> + <ul> <logic:iterate id="site" name="cookieList"> - <p class="text"> + <li> <logic:present name="entityID" scope="request"> <bean:define id="returnIDParam" name="returnIDParam"/> <bean:define id="ei" name="entityID" /> <bean:define id="re" name="returnX"/> - <a tabindex="10" href="<bean:write name="requestURL" />?entityID=<%= java.net.URLEncoder.encode(ei.toString(), "utf-8") %>&return=<%= java.net.URLEncoder.encode(re.toString(), "utf-8") %>&returnIDxParam=<%= java.net.URLEncoder.encode( returnIDParam.toString(), "utf-8" ) %>&cache=perm&action=selection&origin=<jsp:getProperty name="site" property="name" />"> + <a tabindex="10" href="<bean:write name="requestURL" />?entityID=<%= java.net.URLEncoder.encode(ei.toString(), "utf-8") %>&return=<%= java.net.URLEncoder.encode(re.toString(), "utf-8") %>&returnIDxParam=<%= java.net.URLEncoder.encode( returnIDParam.toString(), "utf-8" ) %>&cache=perm&action=selection&origin=<jsp:getProperty name="site" property="name" />"> <jsp:getProperty name="site" property="displayName" /> </a> </logic:present> @@ -198,21 +232,12 @@ <bean:define id="shire" name="shire" /> <bean:define id="pid" name="providerId" /> <a tabindex="10" href="<bean:write name="requestURL" />?target=<%= java.net.URLEncoder.encode(targ.toString(),"utf-8") %>&shire=<%= java.net.URLEncoder.encode(shire.toString(),"utf-8") %>&providerId=<%= java.net.URLEncoder.encode(pid.toString(),"utf-8") %>&time=<bean:write name="time" />&cache=perm&action=selection&origin=<jsp:getProperty name="site" property="name" />"> - <jsp:getProperty name="site" - property="displayName" /> + <jsp:getProperty name="site" property="displayName" /> </a> </logic:notPresent> - </p> + </li> </logic:iterate> - -<logic:present name="showComments" scope="Request"> - -<!-- PROGRAMMING NOTE - - We defined the ClearCache.Wayf service in wayfconfig. So we know - it is here. This will empty the cookie and loop --> - -</logic:present> + </ul> <form method="get" action="ClearCache.wayf" > <div> @@ -221,306 +246,41 @@ <input type="hidden" name="target" value="<bean:write name="target" />" /> <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> + <input type="hidden" name="time" value="<bean:write name="time" />" /> + </logic:present> </logic:notPresent> <logic:present name="entityID" scope="request"> <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> </logic:present> - <input tabindex="20" type="submit" value="Clear" /> + <br/> + <input tabindex="20" type="submit" value="Clear List" /> </div> </form> - </logic:present> <!-- Previous Selections --> + </logic:present> + </div> + </div> + <img class="fr" src="img/globe.jpg" style="clear: both;"></img> + <div class="clr"/> -<logic:present name="showComments" scope="Request"> - -<!-- PROGRAMMING NOTE - - Add the "instant serach" dialogue. -</logic:present> + </div> - <div class="list"> - <logic:present name="sites" scope="request"> - <h2>Enter institution name:</h2> - <form autocomplete="OFF" action=""> - <div> - <logic:notPresent name="entityID" scope="request"> - <input type="hidden" name="shire" value="<bean:write name="shire" />" /> - <input type="hidden" name="target" value="<bean:write name="target" />" /> - <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> - <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> - </logic:notPresent> - <logic:present name="entityID" scope="request"> - <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> - <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> - <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> - </logic:present> - <input type="hidden" id="enterOrigin" name="origin" value="unspec" /> - <input type="hidden" id="enterType" name="action" value="search" /> - <input type="text" id="enterText" name="string" value="" tabindex="25" size="54"/> - <input type="submit" id="enterSubmit" value="Search"/> - <input type="hidden" name="cache" value="perm"/> + <div style="display:none;" class="contR"></div> + <div class="clr"></div> </div> - </form> - </logic:present> - - <h2> - -<logic:present name="showComments" scope="Request"> - -Provide a static drop down or a dynamically republished one. - you may wish to remove this code - -</logic:present> - -Or choose from a list: - - </h2> - - <logic:present name="sites" scope="request"> - <logic:notPresent name="siteLists" scope="request"> - - <form method="get" action="<bean:write name="requestURL" />"> - <div> - <logic:notPresent name="entityID" scope="request"> - <input type="hidden" name="shire" value="<bean:write name="shire" />" /> - <input type="hidden" name="target" value="<bean:write name="target" />" /> - <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> - <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> - </logic:notPresent> - <logic:present name="entityID" scope="request"> - <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> - <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> - <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> - </logic:present> - <input type="hidden" name="action" value="selection" /> - <select name="origin" id="hackForie6" tabindex="40"> - <logic:iterate id="site" name="sites"> - <option value="<jsp:getProperty name="site" property="name" />"> - <jsp:getProperty name="site" property="displayName" /> - </option> - </logic:iterate> - </select> - <input type="submit" value="Select" tabindex="50" /> - <select name="cache" tabindex="60"> - <option value="false"> Do not remember</option> - <option value="session" selected="selected"> Remember for session</option> - <option value="perm"> Remember for a week</option> - </select> - </div> - </form> - </logic:notPresent> - </logic:present> - -<logic:present name="showComments" scope="Request"> - -<!-- PROGRAMMING NOTE - Build two tables side by side, one with the Federation names and 'ALL' (if apposite) - and the other will be dynamically populated with the members of that federation. - - This needs to work in the face of no javascript, so we initially populate the - Right hand list with all the IdPs. The first Selection in the Left hand Table will - shrink this list - - The 'lists of all IdPs' is derived from the one which java gives us (if it did) - otherwise it is derived by a double iteration through the List of Lists. This - makes for complicated looking code, but it's dead simple really. - - --> - -</logic:present> - - <logic:present name="siteLists" scope="request"> - <form method="get" action="<bean:write name="requestURL" />"> - <div> - <logic:notPresent name="entityID" scope="request"> - <input type="hidden" name="shire" value="<bean:write name="shire" />" /> - <input type="hidden" name="target" value="<bean:write name="target" />" /> - <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> - <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> - </logic:notPresent> - <logic:present name="entityID" scope="request"> - <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> - <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> - <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> - </logic:present> - <table id="tab"> - <tr> - <th>Federation </th> - <th>organization</th> - </tr> - <tr><td> - <select name="FedSelector" size="10" id="FedSelect" tabindex="30" - onchange="changedFed(this.form.origin, - this.form.FedSelector[this.form.FedSelector.selectedIndex].value);"> - <logic:iterate id="siteset" name="siteLists"> - <logic:present name="singleSiteList" scope="request"> - - <!-- Only One site so select it --> - - <option value="<jsp:getProperty name="siteset" property="name"/>" selected="selected"> - <jsp:getProperty name="siteset" property="name"/> - </option> - </logic:present> - <logic:notPresent name="singleSiteList" scope="request"> - <option value="<jsp:getProperty name="siteset" property="name"/>"> - <jsp:getProperty name="siteset" property="name"/> - </option> - </logic:notPresent> - </logic:iterate> - <logic:notPresent name="singleSiteList" scope="request"> - - <!-- More than one site so select the 'All' --> - - <option value="ALL" selected="selected"> - All Sites - </option> - </logic:notPresent> - </select></td><td> - <input type="hidden" name="action" value="selection" /> - <select name="origin" size="10" id="originIdp" tabindex="40"> - <logic:present name="sites" scope="request"> - <logic:iterate id="site" name="sites"> - <option value="<jsp:getProperty name="site" property="name" />"> - <jsp:getProperty name="site" property="displayName" /> - </option> - </logic:iterate> - </logic:present> - - <logic:notPresent name="sites" scope="request"> - <logic:iterate id="siteset" name="siteLists"> - <logic:iterate id="site" name="siteset" property="sites"> - <option value="<jsp:getProperty name="site" property="name" />"> - <jsp:getProperty name="site" property="displayName" /> - </option> - </logic:iterate> - </logic:iterate> - </logic:notPresent> - </select> - </td></tr> - </table> - <p> - <input type="submit" value="Select" tabindex="50" /> - <select name="cache" tabindex="60" > - <option value="false"> Do not remember</option> - <option value="session" selected="selected"> Remember for session</option> - <option value="perm"> Remember for a week</option> - </select> - </p> - </div> - </form> - </logic:present> </div> - - - <div class="search"> - -<logic:present name="showComments" scope="Request"> - -<!-- This is here for completeness - it shows the "old fashioned way" to do search --> - - <span class="option">or</span> - - <h2>Sök på nyckelord:/Search by keyword:</h2> - - <form method="get" action="<bean:write name="requestURL" />"> - <div> - <p> - - <logic:notPresent name="entityID" scope="request"> - <input type="hidden" name="shire" value="<bean:write name="shire" />" /> - <input type="hidden" name="target" value="<bean:write name="target" />" /> - <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> - <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> - </logic:notPresent> - <logic:present name="entityID" scope="request"> - <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> - <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> - <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> - </logic:present> - - <input type="hidden" name="action" value="search" /> - <input type="text" name="string" tabindex="70" /> - <input type="submit" value="Search" tabindex="80" /> - </p> - </div> - </form> - -<!-- The end of the old code. Below is where search results go 00> - -</logic:present> - <logic:present name="searchResultsEmpty" scope="request"> - <p class="error"> - -No provider was found that matches your search criteria, please try again. - - </p> - </logic:present> - - <logic:present name="searchresults" scope="request"> - <h3> - -Search results: - - </h3> - <form method="get" action="<bean:write name="requestURL" />"> - <div> - <ul> - <logic:iterate id="currResult" name="searchresults"> - <li> - <input type="radio" name="origin" tabindex="90" value="<jsp:getProperty name="currResult" property="name" />" /> - <jsp:getProperty name="currResult" property="displayName" /> - </li> - </logic:iterate> - </ul> - <p> - <logic:notPresent name="entityID" scope="request"> - <input type="hidden" name="shire" value="<bean:write name="shire" />" /> - <input type="hidden" name="target" value="<bean:write name="target" />" /> - <input type="hidden" name="providerId" value="<bean:write name="providerId" />" /> - <logic:present name="time" scope="request"> - <input type="hidden" name="time" value="<bean:write name="time" />" /> - </logic:present> - </logic:notPresent> - <logic:present name="entityID" scope="request"> - <input type="hidden" name="entityID" value="<bean:write name="entityID" />" /> - <input type="hidden" name="returnX" value="<bean:write name="returnX" />" /> - <input type="hidden" name="returnIDParam" value="<bean:write name="returnIDParam" />" /> - </logic:present> - <input type="hidden" name="action" value="selection" /> - <input type="submit" value="Select" tabindex="100" /> - <select name="cache" tabindex="100" > - <option value="false"> Do not remember</option> - <option value="session" selected="selected"> Remember for session</option> - <option value="perm"> Remember for a week</option> - </select> - </p> - </div> - </form> - </logic:present> + <div class="clr"></div> + </div> + <div class="push"></div> + <div class="footer"> + <div class="wCont"> + <div id="footerText"> + </div> </div> - </div> - - <div class="footer"> - <p class="text"> -<!--CONFIG--> -The <a href="http://www.swamid.se">SWAMID federation</a> is an activity of the <a href="http://www.swami.se">Swedish Alliance for Middleware Infrastructure</a>. -<a href="http://www.swamid.se">SWAMID</a> is in part based on <a href="http://shibboleth.internet2.edu">Shibboleth</a> from <a href="http://www.internet2.edu">Internet2</a>. -If you need assistance or require information send an e-mail to <a href="mailto:info@swamid.se?subject=WAYF+support+request">SWAMID support</a> with a description of the problem. - </p> - </div> - + </div> <logic:present name="showComments" scope="Request"> <!--PROGRAMMING NOTE @@ -602,37 +362,35 @@ function changedFed(X, Selected) { empty array. --> </logic:present> - <script language="javascript" type="text/javascript" src="Suggest.js"></script> + <script language="javascript" type="text/javascript"> <!-- -window.onload = function() { - -<logic:notPresent name="siteLists" scope="request"> - var ie6Hack = [ document.getElementById("hackForie6")]; -</logic:notPresent> - -<logic:present name="siteLists" scope="request"> - var ie6Hack = [ document.getElementById("FedSelect"), document.getElementById("originIdp")]; -</logic:present> - var control = new TypeAheadControl(theElements, - document.getElementById("enterText"), - document.getElementById("enterOrigin"), - document.getElementById("enterSubmit"), - document.getElementById("enterType"), - ie6Hack); - - - document.getElementById("enterText").focus(); -} - - -var theElements = [ - <logic:iterate id="site" name="sites"> - ["<%= ((edu.internet2.middleware.shibboleth.wayf.IdPSite)site).getDisplayName().replace("\n","").toString() %>", - "<jsp:getProperty name="site" property="name" />"], - </logic:iterate> - ]; - +$(function() { + var idps = [ +<logic:iterate id="site" name="sites"> + { + label: "<%= ((edu.internet2.middleware.shibboleth.wayf.IdPSite)site).getDisplayName().replace("\n","").toString() %>", + value: "<jsp:getProperty name="site" property="name" />" + }, +</logic:iterate> + ]; + $('#originSearch').autocomplete({ + minLength: 0, + source: idps, + focus: function(event, ui) { + $('#originSearch').val(ui.item.label); + return false; + }, + select: function(event, ui) { + $('#originSearch').val(ui.item.label); + $('#origin').val(ui.item.value); + return false; + } + }); + $('#originSearch').focus(); + //$('.button').button(); + //$('select').selectmenu({style: 'dropdown'}); +}); --> </script> </logic:present> @@ -640,4 +398,3 @@ var theElements = [ </body> </html> - |