* Added /device/token handler with associated business logic and storage tests. Perform user code exchange, flag the device code as complete. Moved device handler code into its own file for cleanliness. Cleanup * Removed PKCE code * Rate limiting for /device/token endpoint based on ietf standards * Configurable Device expiry Signed-off-by: justin-slowik <justin.slowik@thermofisher.com>
		
			
				
	
	
		
			24 lines
		
	
	
		
			934 B
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			934 B
		
	
	
	
		
			HTML
		
	
	
	
	
	
| {{ template "header.html" . }}
 | |
| 
 | |
| <div class="theme-panel">
 | |
|   <h2 class="theme-heading">Enter User Code</h2>
 | |
|   <form method="post" action="{{ .PostURL }}" method="get">
 | |
|     <div class="theme-form-row">
 | |
|       {{ if( .UserCode  )}}
 | |
|       <input tabindex="2" required id="user_code" name="user_code" type="text" class="theme-form-input" autocomplete="off" value="{{.UserCode}}" {{ if .Invalid }} autofocus {{ end }}/>
 | |
|       {{ else }}
 | |
|       <input tabindex="2" required id="user_code" name="user_code" type="text" class="theme-form-input" placeholder="XXXX-XXXX" autocomplete="off"  {{ if .Invalid }} autofocus {{ end }}/>
 | |
|       {{ end }}
 | |
|     </div>
 | |
| 
 | |
|     {{ if .Invalid }}
 | |
|     <div id="login-error" class="dex-error-box">
 | |
|       Invalid or Expired User Code
 | |
|     </div>
 | |
|     {{ end }}
 | |
|     <button tabindex="3" id="submit-login" type="submit" class="dex-btn theme-btn--primary">Submit</button>
 | |
|   </form>
 | |
| </div>
 | |
| 
 | |
| {{ template "footer.html" . }}
 |