mirror of
				https://github.com/steveiliop56/tinyauth.git
				synced 2025-10-31 06:05:43 +00:00 
			
		
		
		
	Compare commits
	
		
			9 Commits
		
	
	
		
			v3.2.0-bet
			...
			v3.2.0-bet
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 939919df39 | ||
|   | a579cf37ce | ||
|   | 2647aa07b4 | ||
|   | f68c580e11 | ||
|   | 9b39a2b856 | ||
|   | 6d17ce699a | ||
|   | 20dbb35d44 | ||
|   | 36d9dd7354 | ||
|   | 5129f9bff8 | 
							
								
								
									
										105
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										105
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
								
							| @@ -6,7 +6,85 @@ on: | |||||||
|       - "v*" |       - "v*" | ||||||
|  |  | ||||||
| jobs: | jobs: | ||||||
|   build: |   binary-build: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v4 | ||||||
|  |  | ||||||
|  |       - uses: oven-sh/setup-bun@v2 | ||||||
|  |         with: | ||||||
|  |           bun-version: latest | ||||||
|  |  | ||||||
|  |       - uses: actions/setup-go@v5 | ||||||
|  |         with: | ||||||
|  |           go-version: "^1.23.2" | ||||||
|  |  | ||||||
|  |       - name: Install frontend dependencies | ||||||
|  |         run: | | ||||||
|  |           cd frontend | ||||||
|  |           bun install | ||||||
|  |  | ||||||
|  |       - name: Install backend dependencies | ||||||
|  |         run: | | ||||||
|  |           go mod tidy | ||||||
|  |  | ||||||
|  |       - name: Build frontend | ||||||
|  |         run: | | ||||||
|  |           cd frontend | ||||||
|  |           bun run build | ||||||
|  |  | ||||||
|  |       - name: Build | ||||||
|  |         run: | | ||||||
|  |           cp -r frontend/dist internal/assets/dist | ||||||
|  |           CGO_ENABLED=0 go build -ldflags "-s -w" -o tinyauth-amd64 | ||||||
|  |  | ||||||
|  |       - name: Upload artifact | ||||||
|  |         uses: actions/upload-artifact@v4 | ||||||
|  |         with: | ||||||
|  |           name: tinyauth-amd64 | ||||||
|  |           path: tinyauth-amd64 | ||||||
|  |  | ||||||
|  |   binary-build-arm: | ||||||
|  |     runs-on: ubuntu-24.04-arm | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v4 | ||||||
|  |  | ||||||
|  |       - uses: oven-sh/setup-bun@v2 | ||||||
|  |         with: | ||||||
|  |           bun-version: latest | ||||||
|  |  | ||||||
|  |       - uses: actions/setup-go@v5 | ||||||
|  |         with: | ||||||
|  |           go-version: "^1.23.2" | ||||||
|  |  | ||||||
|  |       - name: Install frontend dependencies | ||||||
|  |         run: | | ||||||
|  |           cd frontend | ||||||
|  |           bun install | ||||||
|  |  | ||||||
|  |       - name: Install backend dependencies | ||||||
|  |         run: | | ||||||
|  |           go mod tidy | ||||||
|  |  | ||||||
|  |       - name: Build frontend | ||||||
|  |         run: | | ||||||
|  |           cd frontend | ||||||
|  |           bun run build | ||||||
|  |  | ||||||
|  |       - name: Build | ||||||
|  |         run: | | ||||||
|  |           cp -r frontend/dist internal/assets/dist | ||||||
|  |           CGO_ENABLED=0 go build -ldflags "-s -w" -o tinyauth-arm64 | ||||||
|  |  | ||||||
|  |       - name: Upload artifact | ||||||
|  |         uses: actions/upload-artifact@v4 | ||||||
|  |         with: | ||||||
|  |           name: tinyauth-arm64 | ||||||
|  |           path: tinyauth-arm64 | ||||||
|  |  | ||||||
|  |   image-build: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @@ -51,7 +129,7 @@ jobs: | |||||||
|           if-no-files-found: error |           if-no-files-found: error | ||||||
|           retention-days: 1 |           retention-days: 1 | ||||||
|  |  | ||||||
|   build-arm: |   image-build-arm: | ||||||
|     runs-on: ubuntu-24.04-arm |     runs-on: ubuntu-24.04-arm | ||||||
|     steps: |     steps: | ||||||
|       - name: Checkout |       - name: Checkout | ||||||
| @@ -96,11 +174,11 @@ jobs: | |||||||
|           if-no-files-found: error |           if-no-files-found: error | ||||||
|           retention-days: 1 |           retention-days: 1 | ||||||
|  |  | ||||||
|   merge: |   image-merge: | ||||||
|     runs-on: ubuntu-latest |     runs-on: ubuntu-latest | ||||||
|     needs: |     needs: | ||||||
|       - build |       - image-build | ||||||
|       - build-arm |       - image-build-arm | ||||||
|     steps: |     steps: | ||||||
|       - name: Download digests |       - name: Download digests | ||||||
|         uses: actions/download-artifact@v4 |         uses: actions/download-artifact@v4 | ||||||
| @@ -134,3 +212,20 @@ jobs: | |||||||
|         run: | |         run: | | ||||||
|           docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ |           docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \ | ||||||
|             $(printf 'ghcr.io/${{ github.repository_owner }}/tinyauth@sha256:%s ' *) |             $(printf 'ghcr.io/${{ github.repository_owner }}/tinyauth@sha256:%s ' *) | ||||||
|  |  | ||||||
|  |   update-release: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     needs: | ||||||
|  |       - binary-build | ||||||
|  |       - binary-build-arm | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/download-artifact@v4 | ||||||
|  |         with: | ||||||
|  |           pattern: tinyauth-* | ||||||
|  |           path: binaries | ||||||
|  |           merge-multiple: true | ||||||
|  |  | ||||||
|  |       - name: Release | ||||||
|  |         uses: softprops/action-gh-release@v2 | ||||||
|  |         with: | ||||||
|  |           files: binaries/* | ||||||
|   | |||||||
| @@ -1,6 +1,8 @@ | |||||||
|  | import { useColorScheme } from "@mantine/hooks"; | ||||||
| import type { SVGProps } from "react"; | import type { SVGProps } from "react"; | ||||||
|  |  | ||||||
| export function TailscaleIcon(props: SVGProps<SVGSVGElement>) { | export function TailscaleIcon(props: SVGProps<SVGSVGElement>) { | ||||||
|  |   const colorScheme = useColorScheme(); | ||||||
|   return ( |   return ( | ||||||
|     <svg |     <svg | ||||||
|       xmlns="http://www.w3.org/2000/svg" |       xmlns="http://www.w3.org/2000/svg" | ||||||
| @@ -9,47 +11,17 @@ export function TailscaleIcon(props: SVGProps<SVGSVGElement>) { | |||||||
|       height={24} |       height={24} | ||||||
|       {...props} |       {...props} | ||||||
|     > |     > | ||||||
|       <style>{".st0{opacity:0.2;fill:#CCCAC9;}.st1{fill:#FFFFFF;}"}</style> |       {colorScheme === "dark" ? ( | ||||||
|       <g> |         <> | ||||||
|         <g> |           <path xmlns="http://www.w3.org/2000/svg" d="M65.6 318.1c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9S1.8 219 1.8 254.2s28.6 63.9 63.8 63.9m191.6 0c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9m0 193.9c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9m189.2-193.9c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9" fill="#ffffff"/> | ||||||
|           <path |           <path xmlns="http://www.w3.org/2000/svg" d="M65.6 127.7c35.3 0 63.9-28.6 63.9-63.9S100.9 0 65.6 0 1.8 28.6 1.8 63.9s28.6 63.8 63.8 63.8m0 384.3c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.8 28.7-63.8 63.9S30.4 512 65.6 512m191.6-384.3c35.3 0 63.9-28.6 63.9-63.9S292.5 0 257.2 0s-63.9 28.6-63.9 63.9 28.6 63.8 63.9 63.8m189.2 0c35.3 0 63.9-28.6 63.9-63.9S481.6 0 446.4 0c-35.3 0-63.9 28.6-63.9 63.9s28.6 63.8 63.9 63.8m0 384.3c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9" fill="#CCCAC9" opacity="0.2"/> | ||||||
|             className="st0" |         </> | ||||||
|             d="M65.6,127.7c35.3,0,63.9-28.6,63.9-63.9S100.9,0,65.6,0S1.8,28.6,1.8,63.9S30.4,127.7,65.6,127.7z" |       ) : ( | ||||||
|           /> |         <> | ||||||
|           <path |           <path xmlns="http://www.w3.org/2000/svg" d="M65.6 318.1c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9S1.8 219 1.8 254.2s28.6 63.9 63.8 63.9m191.6 0c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9m0 193.9c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9m189.2-193.9c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9"/> | ||||||
|             className="st1" |           <path xmlns="http://www.w3.org/2000/svg" d="M65.6 127.7c35.3 0 63.9-28.6 63.9-63.9S100.9 0 65.6 0 1.8 28.6 1.8 63.9s28.6 63.8 63.8 63.8m0 384.3c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.8 28.7-63.8 63.9S30.4 512 65.6 512m191.6-384.3c35.3 0 63.9-28.6 63.9-63.9S292.5 0 257.2 0s-63.9 28.6-63.9 63.9 28.6 63.8 63.9 63.8m189.2 0c35.3 0 63.9-28.6 63.9-63.9S481.6 0 446.4 0c-35.3 0-63.9 28.6-63.9 63.9s28.6 63.8 63.9 63.8m0 384.3c35.3 0 63.9-28.6 63.9-63.9s-28.6-63.9-63.9-63.9-63.9 28.6-63.9 63.9 28.6 63.9 63.9 63.9" opacity=".2"/> | ||||||
|             d="M65.6,318.1c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9S1.8,219,1.8,254.2S30.4,318.1,65.6,318.1z" |         </> | ||||||
|           /> |       )} | ||||||
|           <path |  | ||||||
|             className="st0" |  | ||||||
|             d="M65.6,512c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9S1.8,412.9,1.8,448.1S30.4,512,65.6,512z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st1" |  | ||||||
|             d="M257.2,318.1c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9s-63.9,28.6-63.9,63.9S221.9,318.1,257.2,318.1z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st1" |  | ||||||
|             d="M257.2,512c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9s-63.9,28.6-63.9,63.9S221.9,512,257.2,512z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st0" |  | ||||||
|             d="M257.2,127.7c35.3,0,63.9-28.6,63.9-63.9S292.5,0,257.2,0s-63.9,28.6-63.9,63.9S221.9,127.7,257.2,127.7z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st0" |  | ||||||
|             d="M446.4,127.7c35.3,0,63.9-28.6,63.9-63.9S481.6,0,446.4,0c-35.3,0-63.9,28.6-63.9,63.9S411.1,127.7,446.4,127.7z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st1" |  | ||||||
|             d="M446.4,318.1c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9s-63.9,28.6-63.9,63.9S411.1,318.1,446.4,318.1z" |  | ||||||
|           /> |  | ||||||
|           <path |  | ||||||
|             className="st0" |  | ||||||
|             d="M446.4,512c35.3,0,63.9-28.6,63.9-63.9s-28.6-63.9-63.9-63.9s-63.9,28.6-63.9,63.9S411.1,512,446.4,512z" |  | ||||||
|           /> |  | ||||||
|         </g> |  | ||||||
|       </g> |  | ||||||
|     </svg> |     </svg> | ||||||
|   ); |   ); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -1,12 +1,12 @@ | |||||||
| { | { | ||||||
|     "loginTitle": "Welcome back, login with", |     "loginTitle": "Willkommen zurück, logge dich ein mit", | ||||||
|     "loginDivider": "Or continue with password", |     "loginDivider": "Oder mit Passwort fortfahren", | ||||||
|     "loginUsername": "Username", |     "loginUsername": "Benutzername", | ||||||
|     "loginPassword": "Password", |     "loginPassword": "Passwort", | ||||||
|     "loginSubmit": "Login", |     "loginSubmit": "Anmelden", | ||||||
|     "loginFailTitle": "Failed to log in", |     "loginFailTitle": "Login fehlgeschlagen", | ||||||
|     "loginFailSubtitle": "Please check your username and password", |     "loginFailSubtitle": "Bitte überprüfe deinen Benutzernamen und Passwort", | ||||||
|     "loginFailRateLimit": "You failed to login too many times, please try again later", |     "loginFailRateLimit": "Sie konnten sich zu oft nicht einloggen, bitte versuchen Sie es später erneut", | ||||||
|     "loginSuccessTitle": "Logged in", |     "loginSuccessTitle": "Logged in", | ||||||
|     "loginSuccessSubtitle": "Welcome back!", |     "loginSuccessSubtitle": "Welcome back!", | ||||||
|     "loginOauthFailTitle": "Internal error", |     "loginOauthFailTitle": "Internal error", | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Ανακατεύθυνση στην εφαρμογή σας", |     "totpSuccessSubtitle": "Ανακατεύθυνση στην εφαρμογή σας", | ||||||
|     "totpTitle": "Εισάγετε τον κωδικό TOTP", |     "totpTitle": "Εισάγετε τον κωδικό TOTP", | ||||||
|     "unauthorizedTitle": "Μη εξουσιοδοτημένο", |     "unauthorizedTitle": "Μη εξουσιοδοτημένο", | ||||||
|     "unauthorizedResourceSubtitle": "Ο χρήστης με όνομα χρήστη <Code>{{username}}<Code/> δεν έχει άδεια πρόσβασης στον πόρο <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "Ο χρήστης με όνομα χρήστη <Code>{{username}}</Code> δεν έχει άδεια πρόσβασης στον πόρο <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "Ο χρήστης με όνομα χρήστη <Code>{{username}}<Code/> δεν είναι εξουσιοδοτημένος να συνδεθεί.", |     "unaothorizedLoginSubtitle": "Ο χρήστης με όνομα χρήστη <Code>{{username}}</Code> δεν είναι εξουσιοδοτημένος να συνδεθεί.", | ||||||
|     "unauthorizedButton": "Προσπαθήστε ξανά" |     "unauthorizedButton": "Προσπαθήστε ξανά" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirection vers votre application", |     "totpSuccessSubtitle": "Redirection vers votre application", | ||||||
|     "totpTitle": "Saisissez votre code TOTP", |     "totpTitle": "Saisissez votre code TOTP", | ||||||
|     "unauthorizedTitle": "Non autorisé", |     "unauthorizedTitle": "Non autorisé", | ||||||
|     "unauthorizedResourceSubtitle": "L'utilisateur avec le nom d'utilisateur <Code>{{username}}<Code/> n'est pas autorisé à accéder à la ressource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "L'utilisateur avec le nom d'utilisateur <Code>{{username}}</Code> n'est pas autorisé à accéder à la ressource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "L'utilisateur avec le nom d'utilisateur <Code>{{username}}<Code/> n'est pas autorisé à se connecter.", |     "unaothorizedLoginSubtitle": "L'utilisateur avec le nom d'utilisateur <Code>{{username}}</Code> n'est pas autorisé à se connecter.", | ||||||
|     "unauthorizedButton": "Réessayer" |     "unauthorizedButton": "Réessayer" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -1,11 +1,11 @@ | |||||||
| { | { | ||||||
|     "loginTitle": "Welcome back, login with", |     "loginTitle": "Welkom terug, log in met", | ||||||
|     "loginDivider": "Or continue with password", |     "loginDivider": "Of ga door met wachtwoord", | ||||||
|     "loginUsername": "Username", |     "loginUsername": "Gebruikersnaam", | ||||||
|     "loginPassword": "Password", |     "loginPassword": "Wachtwoord", | ||||||
|     "loginSubmit": "Login", |     "loginSubmit": "Log in", | ||||||
|     "loginFailTitle": "Failed to log in", |     "loginFailTitle": "Mislukt om in te loggen", | ||||||
|     "loginFailSubtitle": "Please check your username and password", |     "loginFailSubtitle": "Gelieve uw gebruikersnaam en wachtwoord te controleren", | ||||||
|     "loginFailRateLimit": "You failed to login too many times, please try again later", |     "loginFailRateLimit": "You failed to login too many times, please try again later", | ||||||
|     "loginSuccessTitle": "Logged in", |     "loginSuccessTitle": "Logged in", | ||||||
|     "loginSuccessSubtitle": "Welcome back!", |     "loginSuccessSubtitle": "Welcome back!", | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Przekierowywanie do aplikacji", |     "totpSuccessSubtitle": "Przekierowywanie do aplikacji", | ||||||
|     "totpTitle": "Wprowadź kod TOTP", |     "totpTitle": "Wprowadź kod TOTP", | ||||||
|     "unauthorizedTitle": "Nieautoryzowany", |     "unauthorizedTitle": "Nieautoryzowany", | ||||||
|     "unauthorizedResourceSubtitle": "Użytkownik o nazwie <Code>{{username}}<Code/> nie jest upoważniony do uzyskania dostępu do zasobu <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "Użytkownik o nazwie <Code>{{username}}</Code> nie jest upoważniony do uzyskania dostępu do zasobu <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "Użytkownik o nazwie <Code>{{username}}<Code/> nie jest upoważniony do logowania.", |     "unaothorizedLoginSubtitle": "Użytkownik o nazwie <Code>{{username}}</Code> nie jest upoważniony do logowania.", | ||||||
|     "unauthorizedButton": "Spróbuj ponownie" |     "unauthorizedButton": "Spróbuj ponownie" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -40,7 +40,7 @@ | |||||||
|     "totpSuccessSubtitle": "Redirecting to your app", |     "totpSuccessSubtitle": "Redirecting to your app", | ||||||
|     "totpTitle": "Enter your TOTP code", |     "totpTitle": "Enter your TOTP code", | ||||||
|     "unauthorizedTitle": "Unauthorized", |     "unauthorizedTitle": "Unauthorized", | ||||||
|     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to access the resource <Code>{{resource}}</Code>.", |     "unauthorizedResourceSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to access the resource <Code>{{resource}}</Code>.", | ||||||
|     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}<Code/> is not authorized to login.", |     "unaothorizedLoginSubtitle": "The user with username <Code>{{username}}</Code> is not authorized to login.", | ||||||
|     "unauthorizedButton": "Try again" |     "unauthorizedButton": "Try again" | ||||||
| } | } | ||||||
| @@ -29,7 +29,7 @@ const queryClient = new QueryClient({ | |||||||
|  |  | ||||||
| createRoot(document.getElementById("root")!).render( | createRoot(document.getElementById("root")!).render( | ||||||
|   <StrictMode> |   <StrictMode> | ||||||
|     <MantineProvider forceColorScheme="dark"> |     <MantineProvider defaultColorScheme="auto"> | ||||||
|       <QueryClientProvider client={queryClient}> |       <QueryClientProvider client={queryClient}> | ||||||
|         <Notifications /> |         <Notifications /> | ||||||
|         <AppContextProvider> |         <AppContextProvider> | ||||||
|   | |||||||
| @@ -295,12 +295,11 @@ func (auth *Auth) ResourceAllowed(c *gin.Context, context types.UserContext) (bo | |||||||
| 	// Check if user is allowed | 	// Check if user is allowed | ||||||
| 	if len(labels.Users) != 0 { | 	if len(labels.Users) != 0 { | ||||||
| 		log.Debug().Msg("Checking users") | 		log.Debug().Msg("Checking users") | ||||||
| 		if len(labels.Users) == 0 { |  | ||||||
| 			return true, nil |  | ||||||
| 		} |  | ||||||
| 		if slices.Contains(labels.Users, context.Username) { | 		if slices.Contains(labels.Users, context.Username) { | ||||||
| 			return true, nil | 			return true, nil | ||||||
| 		} | 		} | ||||||
|  | 	} else { | ||||||
|  | 		return true, nil | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	// Not allowed | 	// Not allowed | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user