Compare commits

...

2 Commits

Author SHA1 Message Date
710cad376e
Fix in auth 2023-04-19 11:44:00 +02:00
5a81cb64f5
Added runnerid as barcode 2023-04-19 11:40:24 +02:00
3 changed files with 53 additions and 11 deletions

View File

@ -34,7 +34,7 @@ const userStore = () => {
localStorage.setItem('userdata', JSON.stringify(state));
localStorage.setItem('access_token', state.access_token);
localStorage.setItem('refresh_token', state.refresh_token);
OpenAPI.TOKEN = resAuth.access_token;
return state;
});
},
@ -46,9 +46,9 @@ const userStore = () => {
this.logout();
}
},
loginFromStorage() {
async loginFromStorage() {
console.log('loginFromStorage');
const access_token = localStorage.getItem('token');
const access_token = localStorage.getItem('access_token');
if (!access_token) {
throw new Error('Unauthorized');
}
@ -63,10 +63,12 @@ const userStore = () => {
state.refreshInterval = setInterval(() => {
this.refreshAuth();
}, 2 * 60000);
OpenAPI.TOKEN = userdata.access_token;
return state;
});
this.refreshAuth
await this.refreshAuth();
},
async logout() {
update((state: UserState) => {

View File

@ -4,14 +4,14 @@
$: loginRendered = false;
onMount(() => {
onMount(async () => {
try {
userstore.loginFromStorage();
await userstore.loginFromStorage();
loginRendered = true;
} catch (error) {
console.log(error);
userstore.logout();
location.replace(`${location.pathname}/login`);
location.replace(`/login`);
}
});
</script>

View File

@ -1,9 +1,10 @@
<script lang="ts">
import { RunnerService, type ResponseRunner } from '@odit/lfk-client-js';
import bwipjs from 'bwip-js';
$: firstname = '';
$: lastname = '';
$: showResult = true;
$: showResult = false;
$: showError = false;
let response: ResponseRunner;
@ -17,11 +18,34 @@
group
})) as ResponseRunner;
showError = false;
showResult = true;
} catch (error) {
console.log(error);
showError = true;
showResult = false;
}
}
function textToBase64Barcode(text: string, is_qrcode: boolean) {
const canvas = document.createElement('canvas');
let bcid = 'ean13';
if (is_qrcode) {
bcid = 'qrcode';
}
let codeconfig = {
bcid,
text: `${text}`,
scale: 4,
includetext: true,
textxalign: 'center',
backgroundcolor: 'ffffff'
};
if (bcid == 'ean13') {
codeconfig.height = 10;
}
bwipjs.toCanvas(canvas, codeconfig);
return canvas.toDataURL('image/png');
}
</script>
<div class="dark:bg-slate-900 bg-gray-100 flex h-full items-center py-16">
@ -142,9 +166,25 @@
</form>
<!-- End Form -->
{:else}
<p class="block text-lg mb-2 dark:text-white">ID: {response.id}</p>
<p class="block text-lg mb-2 dark:text-white">Vorname: {response.firstname}</p>
<p class="block text-lg mb-2 dark:text-white">Nachname: {response.lastname}</p>
<div>
<p class="text-lg mb-2 dark:text-white">ID: {response.id}</p>
<p class="text-lg mb-2 dark:text-white">Vorname: {response.firstname}</p>
<p class="text-lg mb-2 dark:text-white">Nachname: {response.lastname}</p>
</div>
<img
class="w-full md:w-auto mb-2 mx-auto"
alt="Runnerid"
src={textToBase64Barcode(response.id.toString(), false)}
/>
<button
on:click={() => {
showResult = false;
}}
class="py-3 px-4 inline-flex justify-center items-center gap-2 rounded-md border border-transparent font-semibold bg-blue-500 text-white hover:bg-blue-600 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 transition-all text-sm dark:focus:ring-offset-gray-800"
>Fertig</button
>
{/if}
</div>
</div>