More userstore fixes

ref #1
This commit is contained in:
Nicolai Ort 2021-08-21 08:34:54 +02:00
parent cd3508dcb6
commit 84ab757e11
Signed by: niggl
GPG Key ID: 13AFA55AF62F269F
6 changed files with 31 additions and 16 deletions

View File

@ -18,6 +18,7 @@ export default class Apiclient {
}
static async getUrls() {
console.log("APICALL")
return (
await axios.get('https://kauft.es/api?showVisits=true', {
headers: { Authorization: `Bearer ${UserStore.state.token}` }

View File

@ -1,21 +1,10 @@
<script>
import UserStore from '$lib/UserStore';
import { onDestroy, onMount } from 'svelte';
import * as localForage from 'localforage';
import { onDestroy } from 'svelte';
import Apiclient from './Apiclient';
$: logged_in = false;
onMount(() => {
localForage.getItem('userdata', (err, value) => {
if (value) {
if (value.token) {
UserStore.login(value);
}
}
});
});
const unsubscribe = UserStore.subscribe((value) => {
logged_in = value.isLoggedIn;
});

View File

@ -47,6 +47,9 @@ const userStore = () => {
return state;
});
location.replace("/");
},
getCurrent(){
return state;
}
};

View File

@ -2,8 +2,20 @@
import '../app.postcss';
import Sidebar from '$lib/Sidebar.svelte';
import UserStore from '$lib/UserStore';
import { onMount } from 'svelte';
import * as localForage from 'localforage';
onMount(() => {
UserStore.init();
localForage.getItem('userdata', (err, value) => {
if (value) {
if (value.token) {
UserStore.login(value);
}
}
});
});
UserStore.init();
</script>
<div style="min-height: 640px;" class="bg-white dark:bg-gray-800">

View File

@ -1,10 +1,21 @@
<script>
import Apiclient from '$lib/Apiclient';
import UserStore from '$lib/UserStore';
import { onDestroy } from 'svelte';
$: urls = [];
let urlQuery = Apiclient.getUrls().then((res) => {
urls = res;
let urlQuery;
const unsubscribe = UserStore.subscribe((value) => {
if (value.isLoggedIn) {
urlQuery = Apiclient.getUrls().then((res) => {
urls = res;
});
}
});
onDestroy(unsubscribe);
function deleteUrl(shortcode) {
Apiclient.deleteUrl(shortcode).then(() => {
urls = urls.filter((url) => url.shortcode != shortcode);

View File

@ -7,7 +7,6 @@ import Apiclient from '$lib/Apiclient';
$: password = "";
$: error = "";
UserStore.init();
async function login() {
try {
const login = await Apiclient.login(username, password);