added real landing page
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 416 KiB |
@@ -3758,4 +3758,130 @@ a,
|
||||
.prop-input:focus {
|
||||
outline: none;
|
||||
border-color: #0056b3;
|
||||
}
|
||||
|
||||
/* ===================================
|
||||
LANDING PAGE STYLES
|
||||
=================================== */
|
||||
|
||||
.landing-page {
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
background-image: url('/Abgrund-DD2.jpg');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-attachment: fixed;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.landing-page::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background-color: rgba(0, 0, 0, 0.5);
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.landing-content {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
max-width: 800px;
|
||||
padding: 2rem;
|
||||
text-align: center;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.dragon-container {
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
.dragon-image {
|
||||
max-width: 300px;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
|
||||
animation: float 3s ease-in-out infinite;
|
||||
}
|
||||
|
||||
@keyframes float {
|
||||
0%, 100% {
|
||||
transform: translateY(0);
|
||||
}
|
||||
50% {
|
||||
transform: translateY(-10px);
|
||||
}
|
||||
}
|
||||
|
||||
.info-container h1 {
|
||||
font-size: 2.5rem;
|
||||
margin-bottom: 1.5rem;
|
||||
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
.info-container .description {
|
||||
font-size: 1.2rem;
|
||||
line-height: 1.6;
|
||||
margin-bottom: 2rem;
|
||||
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.7);
|
||||
}
|
||||
|
||||
.version-info {
|
||||
margin-bottom: 2rem;
|
||||
font-size: 0.9rem;
|
||||
opacity: 0.9;
|
||||
}
|
||||
|
||||
.version-info p {
|
||||
margin: 0.5rem 0;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
.action-links {
|
||||
display: flex;
|
||||
gap: 1rem;
|
||||
justify-content: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.action-links .btn {
|
||||
min-width: 150px;
|
||||
font-size: 1.1rem;
|
||||
padding: 12px 24px;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.landing-content {
|
||||
padding: 1rem;
|
||||
}
|
||||
|
||||
.dragon-image {
|
||||
max-width: 200px;
|
||||
}
|
||||
|
||||
.info-container h1 {
|
||||
font-size: 1.8rem;
|
||||
}
|
||||
|
||||
.info-container .description {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.action-links {
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.action-links .btn {
|
||||
width: 100%;
|
||||
max-width: 300px;
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,9 @@
|
||||
<template>
|
||||
<nav class="top-nav"><!---<nav class="menu"> --->
|
||||
<ul>
|
||||
<li>
|
||||
<router-link to="/" active-class="active">{{ $t('menu.Home') }}</router-link>
|
||||
</li>
|
||||
<li>
|
||||
<router-link to="/dashboard" active-class="active">{{ $t('menu.Dashboard') }}</router-link>
|
||||
</li>
|
||||
|
||||
@@ -44,6 +44,15 @@ export default {
|
||||
Register:'Registrieren',
|
||||
Maintenance:'Wartung',
|
||||
UserManagement:'Benutzerverwaltung',
|
||||
Home:'Startseite',
|
||||
},
|
||||
landing:{
|
||||
title:'BaMoRT - Charakterverwaltung für Rollenspiele',
|
||||
description:'Bamort ist ein modernes Werkzeug zur Charakterverwaltung für Rollenspiele. Es bietet umfassende Funktionen zur Charaktererstellung, -entwicklung und -verwaltung mit Unterstützung für Fertigkeiten, Zauber, Ausrüstung und mehr.',
|
||||
version:'Version',
|
||||
commit:'Commit',
|
||||
login:'Zum Login',
|
||||
github:'Projekt auf GitHub',
|
||||
},
|
||||
Equipment:'Ausrüstung',
|
||||
equipment:{
|
||||
|
||||
+11
-1
@@ -42,7 +42,17 @@ export default {
|
||||
ImportData:'Import Data',
|
||||
Logout:'Logout',
|
||||
Register:'Register',
|
||||
Maintenance:'Maintenance', UserManagement:'User Management', },
|
||||
Maintenance:'Maintenance', UserManagement:'User Management',
|
||||
Home:'Home',
|
||||
},
|
||||
landing:{
|
||||
title:'BaMoRT - Character Management for Role-Playing Games',
|
||||
description:'Bamort is a modern character management tool for role-playing games. It provides comprehensive features for character creation, development, and management with support for skills, spells, equipment, and more.',
|
||||
version:'Version',
|
||||
commit:'Commit',
|
||||
login:'Login',
|
||||
github:'Project on GitHub',
|
||||
},
|
||||
Equipment:'Equipment',
|
||||
equipment:{
|
||||
id:'ID',
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { createRouter, createWebHistory } from "vue-router";
|
||||
import { isLoggedIn } from "../utils/auth"; // Import the helper function
|
||||
import LandingView from "../views/LandingView.vue";
|
||||
import LoginView from "../views/LoginView.vue";
|
||||
import RegisterView from "../views/RegisterView.vue";
|
||||
import ForgotPasswordView from "../views/ForgotPasswordView.vue";
|
||||
@@ -18,7 +19,8 @@ import CharacterCreation from "@/components/CharacterCreation.vue";
|
||||
|
||||
|
||||
const routes = [
|
||||
{ path: "/", name: "Login", component: LoginView },
|
||||
{ path: "/", name: "Landing", component: LandingView },
|
||||
{ path: "/login", name: "Login", component: LoginView },
|
||||
{ path: "/register", name: "Register", component: RegisterView },
|
||||
{ path: "/forgot-password", name: "ForgotPassword", component: ForgotPasswordView },
|
||||
{ path: "/reset-password", name: "ResetPassword", component: ResetPasswordView },
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
<template>
|
||||
<div class="landing-page">
|
||||
<div class="landing-content">
|
||||
<div class="dragon-container">
|
||||
<img src="/Drache.png" alt="Bamort Dragon" class="dragon-image" />
|
||||
</div>
|
||||
|
||||
<div class="info-container">
|
||||
<h1>{{ $t('landing.title') }}</h1>
|
||||
<p class="description">{{ $t('landing.description') }}</p>
|
||||
|
||||
<div class="version-info">
|
||||
<p>{{ $t('landing.version') }}: {{ version }}</p>
|
||||
<p>{{ $t('landing.commit') }}: {{ commit }}</p>
|
||||
</div>
|
||||
|
||||
<div class="action-links">
|
||||
<router-link to="/login" class="btn btn-primary">
|
||||
{{ $t('landing.login') }}
|
||||
</router-link>
|
||||
<a :href="githubUrl" target="_blank" rel="noopener noreferrer" class="btn btn-secondary">
|
||||
{{ $t('landing.github') }}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
/* Component-specific styles moved to main.css as per project conventions */
|
||||
</style>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "LandingView",
|
||||
data() {
|
||||
return {
|
||||
version: "0.1.0",
|
||||
commit: "9775290",
|
||||
githubUrl: "https://github.com/Bardioc26/bamort"
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// Fetch version and commit from API if available
|
||||
this.fetchVersionInfo()
|
||||
},
|
||||
methods: {
|
||||
async fetchVersionInfo() {
|
||||
try {
|
||||
// For now, using static values
|
||||
// In future, could fetch from backend API endpoint
|
||||
this.version = import.meta.env.VITE_APP_VERSION || "0.1.0"
|
||||
this.commit = import.meta.env.VITE_GIT_COMMIT || "9775290"
|
||||
} catch (error) {
|
||||
console.warn("Could not fetch version info:", error)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user