Admin Panel Startseite funktioniert jetzt

This commit is contained in:
R40fendt
2026-01-03 21:30:37 +01:00
parent a964ef4f0f
commit b94e84ff62
3 changed files with 35 additions and 7 deletions

16
src/adminpanellib.ts Normal file
View File

@@ -0,0 +1,16 @@
import RitzenbergenLib from "./ritzenbergenlib";
class AdminPanelLib {
static async getUserInfo(token:string){
const url=new URL(RitzenbergenLib.RitzenbergenLib.api("/admin/userinfo.php"));
return fetch(url.toString(), {
headers: {
"Authorization": "Bearer "+token
},
})
.then((response)=>response.json());
}
}
export default {
AdminPanelLib
}

View File

@@ -1,17 +1,25 @@
<script lang="ts" setup>
import Navbar from "../../components/Navbar.vue";
import { ref } from "vue";
import bcrypt from "bcryptjs";
import { useRouter } from 'vue-router'
import RitzenbergenLib from "../../ritzenbergenlib.ts";
const router = useRouter()
const saltRounds = 12;
async function login(){
const username2=username.value;
const password2=await bcrypt.hash(password.value,saltRounds);
router.push({ name: "adminpanel-main", params: { token: password2 } })
const url=new URL(RitzenbergenLib.RitzenbergenLib.api("/admin/login.php"));
url.searchParams.append("username",username.value);
url.searchParams.append("password",password.value);
const token=await fetch(url)
.then((result)=>result.json())
.then((result)=>{
if(result.success) return result.token;
else{
window.alert(result.error);
return "";
}
});
if(token!="") router.push({ name: "adminpanel-main", params: { token } })
}
const username=ref("");

View File

@@ -1,12 +1,16 @@
<script lang="ts" setup>
import { useRoute } from 'vue-router'
import { ref } from "vue";
import AdminPanelLib from "../../adminpanellib.ts";
const route = useRoute();
const token=ref(route.params.token);
const userinfo=ref({})
AdminPanelLib.AdminPanelLib.getUserInfo(token.value).then((result)=>userinfo.value=result);
</script>
<template>
<h1>Admin Panel</h1>
<p>Token: {{ token }}</p>
<h2>Moin {{ userinfo.username }}!</h2>
</template>