[java-idp-plugin-webauthn] branch main updated: JWEBAUTHN-59 - Closing main tag missing in webauthn-authn.vm

Phil Smart philip.smart at jisc.ac.uk
Fri Aug 8 14:44:36 UTC 2025


This is an automated email from the git hooks/post-receive script.

philsmart pushed a commit to branch main
in repository java-idp-plugin-webauthn.

View the commit online:
http://git.shibboleth.net/view/?p=java-idp-plugin-webauthn.git;a=commit;h=78d4080116f075824d6010a36ebdc86ef136fa9c

The following commit(s) were added to refs/heads/main by this push:
     new 78d4080  JWEBAUTHN-59 - Closing main tag missing in webauthn-authn.vm
78d4080 is described below

commit 78d4080116f075824d6010a36ebdc86ef136fa9c
Author: Phil Smart <philip.smart at jisc.ac.uk>
AuthorDate: Fri Aug 8 15:44:34 2025 +0100

    JWEBAUTHN-59 - Closing main tag missing in webauthn-authn.vm
    
     - Add missing </main> tags
     - Remove extra </div> tags
     - Some format cleanups
    
    https://shibboleth.atlassian.net/browse/JWEBAUTHN-59
---
 .../plugin/authn/webauthn/views/webauthn-authn.vm  | 139 ++++++++++-----------
 .../plugin/authn/webauthn/views/webauthn-end.vm    |  20 +--
 .../webauthn/views/webauthn-management-search.vm   |  11 +-
 .../authn/webauthn/views/webauthn-management.vm    |   5 +-
 .../webauthn/views/webauthn-register-username.vm   |   3 +-
 .../authn/webauthn/views/webauthn-register.vm      |   7 +-
 6 files changed, 88 insertions(+), 97 deletions(-)

diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-authn.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-authn.vm
index 6a4f8ba..d98f985 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-authn.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-authn.vm
@@ -88,82 +88,81 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
     </head>
     <body>
         <main class="main">
-        <header>
-            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText(" idp.logo.alt-text", "logo" )" />
-            #set ($serviceName = $rpUIContext.serviceName)
-            #if ($serviceName && !$rpContext.getRelyingPartyId().contains($serviceName))
-                <h1>#springMessageText("idp.login.loginTo", "Login to") $encoder.encodeForHTML($serviceName)</h1>
-            #end
-        </header>
-        <section>
-            #*
-            //
-            // SP Description & Logo (optional)
-            // These idpui lines will display added information (if available
-            // in the metadata) about the Service Provider (SP) that requested
-            // authentication. These idpui lines are "active" in this example
-            // (not commented out) - this extra SP info will be displayed.
-            // Remove or comment out these lines to stop the display of the
-            // added SP information.
-            //
-            *#
-            #set ($logo = $rpUIContext.getLogo())
-            #if ($logo)
-                <img class="service-logo" src="$encoder.encodeForHTMLAttribute($logo)"
-                    alt="$encoder.encodeForHTMLAttribute($serviceName)">
-            #end
-            #set ($desc = $rpUIContext.getServiceDescription())
-            #if ($desc)
-                <p>$encoder.encodeForHTML($desc)</p>
-            #end
-            <div id="supportedDiv">
-                <div class="content">
-                    #set ($errorMessage = $errorMessageFunction.apply($profileRequestContext))
-                    #if ($errorMessage)
-                        <p class="output-message output--error">$encoder.encodeForHTML($errorMessage)</p>        
-                    #end
-                    <form id="authenticator_assertion_form" action="$flowExecutionUrl" method="post">
-                        #parse("csrf/csrf.vm")
-                        <input type="hidden" id="publicKeyCredential" name="publicKeyCredential" />
-                        <button class="hidden" id="authenticationSubmit" type="submit"
-                            name="_eventId_proceed">#springMessageText("idp.webauthn.authn.submit", "Submit
-                        authentication")</button>
-                    </form>
-                    <div class="centre">
-                        <button id="authenticate"
-                            class="form-element form-button">#springMessageText("idp.webauthn.authn.authenticate",
-                        "Login with passkey or security key")</button>
-                    </div>
-                    
-                    #if($debug == "true")
-                        <hr />
-                        <button type="button" class="collapsible-debug">#springMessageText("idp.webauthn.debug.title","Debugging")</button>    
-                        <div class="debug" id="debug-div">
-                            <label for="publicKeyCredentialRequestOptions">#springMessageText("idp.webauthn.debug.request",
-                            "Request Options")</label>
-                            <textarea id="publicKeyCredentialRequestOptions" name="publicKeyCredentialRequestOptions"
-                                rows="20" cols="50">
-                            $webAuthnEncoder.serializePublicKeyCredentialRequestOptionsAsJSON($webauthnContext.publicKeyCredentialRequestOptions)</textarea>
+            <header>
+                <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText(" idp.logo.alt-text", "logo" )" />
+                #set ($serviceName = $rpUIContext.serviceName)
+                #if ($serviceName && !$rpContext.getRelyingPartyId().contains($serviceName))
+                    <h1>#springMessageText("idp.login.loginTo", "Login to") $encoder.encodeForHTML($serviceName)</h1>
+                #end
+            </header>
+            <section>
+                #*
+                //
+                // SP Description & Logo (optional)
+                // These idpui lines will display added information (if available
+                // in the metadata) about the Service Provider (SP) that requested
+                // authentication. These idpui lines are "active" in this example
+                // (not commented out) - this extra SP info will be displayed.
+                // Remove or comment out these lines to stop the display of the
+                // added SP information.
+                //
+                *#
+                #set ($logo = $rpUIContext.getLogo())
+                #if ($logo)
+                    <img class="service-logo" src="$encoder.encodeForHTMLAttribute($logo)"
+                        alt="$encoder.encodeForHTMLAttribute($serviceName)">
+                #end
+                #set ($desc = $rpUIContext.getServiceDescription())
+                #if ($desc)
+                    <p>$encoder.encodeForHTML($desc)</p>
+                #end
+                <div id="supportedDiv">
+                    <div class="content">
+                        #set ($errorMessage = $errorMessageFunction.apply($profileRequestContext))
+                        #if ($errorMessage)
+                            <p class="output-message output--error">$encoder.encodeForHTML($errorMessage)</p>        
+                        #end
+                        <form id="authenticator_assertion_form" action="$flowExecutionUrl" method="post">
+                            #parse("csrf/csrf.vm")
+                            <input type="hidden" id="publicKeyCredential" name="publicKeyCredential" />
+                            <button class="hidden" id="authenticationSubmit" type="submit"
+                                name="_eventId_proceed">#springMessageText("idp.webauthn.authn.submit", "Submit
+                            authentication")</button>
+                        </form>
+                        <div class="centre">
+                            <button id="authenticate"
+                                class="form-element form-button">#springMessageText("idp.webauthn.authn.authenticate",
+                            "Login with passkey or security key")</button>
                         </div>
-                    #end
-                    
+                        
+                        #if($debug == "true")
+                            <hr />
+                            <button type="button" class="collapsible-debug">#springMessageText("idp.webauthn.debug.title","Debugging")</button>    
+                            <div class="debug" id="debug-div">
+                                <label for="publicKeyCredentialRequestOptions">#springMessageText("idp.webauthn.debug.request",
+                                "Request Options")</label>
+                                <textarea id="publicKeyCredentialRequestOptions" name="publicKeyCredentialRequestOptions"
+                                    rows="20" cols="50">
+                                $webAuthnEncoder.serializePublicKeyCredentialRequestOptionsAsJSON($webauthnContext.publicKeyCredentialRequestOptions)</textarea>
+                            </div>
+                        #end                        
+                    </div>
                 </div>
-            </div>
-            <div id="unsupportedDiv" class="hidden">
-                #springMessageText("idp.webauthn.authn.unsupported", "Your browser is not WebAuthn compatible")
-            </div>
-             <ul>
-                    #if ($inlineReg)
-                        <li><a href="#springMessageText('idp.webauthn.enrollment.url', '/idp/profile/admin/webauthn-registration')?reg=inline">#springMessageText("idp.webauthn.enrollment", "Register a new credential")</a></li>
-                    #end
-                    <li><a href="#springMessageText('idp.url.helpdesk', '#')">#springMessageText("idp.login.needHelp", "Need Help?")</a></li>
-                </ul>
-        </section>
+                <div id="unsupportedDiv" class="hidden">
+                    #springMessageText("idp.webauthn.authn.unsupported", "Your browser is not WebAuthn compatible")
+                </div>
+                 <ul>
+                        #if ($inlineReg)
+                            <li><a href="#springMessageText('idp.webauthn.enrollment.url', '/idp/profile/admin/webauthn-registration')?reg=inline">#springMessageText("idp.webauthn.enrollment", "Register a new credential")</a></li>
+                        #end
+                        <li><a href="#springMessageText('idp.url.helpdesk', '#')">#springMessageText("idp.login.needHelp", "Need Help?")</a></li>
+                    </ul>
+            </section>
+        </main>
         <footer>
             <div class="cc">
                 <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
             </div>
         </footer>
-        </div>    
     </body>
 </html>
\ No newline at end of file
diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-end.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-end.vm
index 5ab8c04..f515fd8 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-end.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-end.vm
@@ -34,19 +34,19 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
     </head>
     <body>
         <main class="main">
-        <header>
-            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText(" idp.logo.alt-text", "logo" )" />
-        </header>
-        <section>
-            <div class="content">
-                    #springMessageText("idp.webauthn.ended", "Your session has ended.")                    
-            </div>
-        </section>
+            <header>
+                <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText("idp.logo.alt-text", "logo")" />
+            </header>
+            <section>
+                <div class="content">
+                        #springMessageText("idp.webauthn.ended", "Your session has ended.")                    
+                </div>
+            </section>
+        </main>
         <footer>
             <div class="cc">
                 <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
             </div>
-        </footer>
-        </div>    
+        </footer>    
     </body>
 </html>
\ No newline at end of file
diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management-search.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management-search.vm
index faf6fda..6af6118 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management-search.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management-search.vm
@@ -35,7 +35,7 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
    <body>
       <main class="main">
          <header>
-            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText(" idp.logo.alt-text", "logo" )" />
+            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText("idp.logo.alt-text", "logo" )" />
          </header>
          <section>
            
@@ -63,10 +63,8 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
                                 <button id="search_button" type="submit" name="_eventId_proceed">#springMessageText("idp.webauthn.admin.button.search", "Lookup")</button>
                                 <button id="finish_button" type="submit" name="_eventId_finish">#springMessageText("idp.webauthn.admin.button.finish", "Finish")</button>
                             </div> 
-                          </div>
-                    
-                      </form>
-                    
+                          </div>                    
+                      </form>                    
                   </div>
             </div>
          </section>
@@ -75,7 +73,6 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
          <div class="cc">
             <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
          </div>
-      </footer>
-      </div>    
+      </footer> 
    </body>
 </html>
\ No newline at end of file
diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management.vm
index 4dfb1a2..ac5beca 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-management.vm
@@ -39,7 +39,7 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
    <body>
       <main class="main">
          <header>
-            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText(" idp.logo.alt-text", "logo" )" />
+            <img class="main-logo" src="$request.getContextPath()#springMessageText("idp.logo", "/images/placeholder-logo.png" )" alt="#springMessageText("idp.logo.alt-text", "logo" )" />
          </header>
          <section>
             <div id="supportedDiv">
@@ -137,7 +137,6 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
          <div class="cc">
             <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
          </div>
-      </footer>
-      </div>    
+      </footer>    
    </body>
 </html>
\ No newline at end of file
diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register-username.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register-username.vm
index 661ba3f..c5a50b5 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register-username.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register-username.vm
@@ -53,8 +53,7 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
                                 >#springMessageText("idp.webauthn.register.username.proceed", "Next")</button>
                         </div>
                     </div>
-                </form>
-    
+                </form>    
                 <ul>
                     <li><a href="#springMessageText('idp.url.helpdesk', '#')">#springMessageText("idp.login.needHelp", "Need Help?")</a></li>
                 </ul>
diff --git a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register.vm b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register.vm
index a483604..7586fe0 100644
--- a/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register.vm
+++ b/webauthn-impl/src/main/resources/net/shibboleth/idp/plugin/authn/webauthn/views/webauthn-register.vm
@@ -197,8 +197,7 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
                                #end
                             </form>
                         </div>                        
-                     </div>
-                    
+                     </div>                    
                      
                      <form id="publicKeyCredentialAttestationForm" action="$flowExecutionUrl" method="post">
                         #parse("csrf/csrf.vm")
@@ -220,14 +219,12 @@ $response.addHeader("Content-Security-Policy", "default-src 'none'; style-src 's
                <div id="unsupportedDiv" class="hidden">
                   #springMessageText("idp.webauthn.register.unsupported", "Your browser is not WebAuthn compatible")
                </div>
-            </div>
          </section>
       </main>
       <footer>
          <div class="cc">
             <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
          </div>
-      </footer>
-      </div>    
+      </footer>   
    </body>
 </html>
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list