diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml
new file mode 100644
index 0000000..51e555c
--- /dev/null
+++ b/.gitea/workflows/release.yml
@@ -0,0 +1,27 @@
+name: Release
+on:
+ push:
+ branches:
+ - "main"
+
+env:
+ GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
+
+permissions:
+ contents: read
+
+jobs:
+ release:
+ name: Release
+ runs-on: remote
+ permissions:
+ contents: write
+ issues: write
+ pull-requests: write
+ id-token: write
+ steps:
+ - name: Create Release
+ uses: https://git.kjan.de/actions/semantic-release@main
+ with:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
\ No newline at end of file
diff --git a/frontend/src/app/app.config.ts b/frontend/src/app/app.config.ts
index 6fd038e..e7761ba 100644
--- a/frontend/src/app/app.config.ts
+++ b/frontend/src/app/app.config.ts
@@ -1,4 +1,8 @@
-import { APP_INITIALIZER, ApplicationConfig, provideExperimentalZonelessChangeDetection } from '@angular/core';
+import {
+ APP_INITIALIZER,
+ ApplicationConfig,
+ provideExperimentalZonelessChangeDetection,
+} from '@angular/core';
import { provideRouter } from '@angular/router';
import { routes } from './app.routes';
diff --git a/frontend/src/app/app.routes.ts b/frontend/src/app/app.routes.ts
index 3a96b8f..2d53d28 100644
--- a/frontend/src/app/app.routes.ts
+++ b/frontend/src/app/app.routes.ts
@@ -1,6 +1,16 @@
import { Routes } from '@angular/router';
-import {LandingPageComponent} from "./landing-page/landing-page.component";
+import { LandingPageComponent } from './landing-page/landing-page.component';
+import { HomepageComponent } from './homepage/homepage/homepage.component';
+import { authGuard } from './auth.guard';
export const routes: Routes = [
- { path: '', component: LandingPageComponent }
+ {
+ path: '',
+ component: LandingPageComponent,
+ },
+ {
+ path: 'home',
+ component: HomepageComponent,
+ canActivate: [authGuard],
+ }
];
diff --git a/frontend/src/app/auth.guard.ts b/frontend/src/app/auth.guard.ts
index dd78a48..cb2cbe9 100644
--- a/frontend/src/app/auth.guard.ts
+++ b/frontend/src/app/auth.guard.ts
@@ -2,15 +2,14 @@ import { CanActivateFn } from '@angular/router';
import { inject } from '@angular/core';
import { KeycloakService } from 'keycloak-angular';
-export const authGuard: CanActivateFn = async (route, state) => {
+export const authGuard: CanActivateFn = async () => {
const keycloakService = inject(KeycloakService);
-
const isLoggedIn = keycloakService.isLoggedIn();
if (isLoggedIn) {
return true;
- } else {
- keycloakService.login();
- return false;
}
+
+ keycloakService.login();
+ return false;
};
diff --git a/frontend/src/app/homepage/homepage/homepage.component.html b/frontend/src/app/homepage/homepage/homepage.component.html
new file mode 100644
index 0000000..6a710c5
--- /dev/null
+++ b/frontend/src/app/homepage/homepage/homepage.component.html
@@ -0,0 +1,29 @@
+
+
+
+
+
Spiel Vorschau
+
Spiel Name
+
+
+
+
Spiel Vorschau
+
Spiel Name
+
+
+
+
Spiel Vorschau
+
Spiel Name
+
+
+
diff --git a/frontend/src/app/homepage/homepage/homepage.component.ts b/frontend/src/app/homepage/homepage/homepage.component.ts
new file mode 100644
index 0000000..1f01382
--- /dev/null
+++ b/frontend/src/app/homepage/homepage/homepage.component.ts
@@ -0,0 +1,17 @@
+import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
+import { KeycloakService } from 'keycloak-angular';
+
+@Component({
+ selector: 'app-homepage',
+ standalone: true,
+ imports: [],
+ templateUrl: './homepage.component.html',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+})
+export class HomepageComponent {
+ private keycloakService: KeycloakService = inject(KeycloakService);
+
+ logout() {
+ this.keycloakService.logout();
+ }
+}
diff --git a/frontend/src/app/landing-page/landing-page.component.html b/frontend/src/app/landing-page/landing-page.component.html
index e69de29..aa8bbd8 100644
--- a/frontend/src/app/landing-page/landing-page.component.html
+++ b/frontend/src/app/landing-page/landing-page.component.html
@@ -0,0 +1 @@
+
diff --git a/frontend/src/app/landing-page/landing-page.component.ts b/frontend/src/app/landing-page/landing-page.component.ts
index ed8aba1..ff25911 100644
--- a/frontend/src/app/landing-page/landing-page.component.ts
+++ b/frontend/src/app/landing-page/landing-page.component.ts
@@ -1,4 +1,5 @@
-import { Component } from '@angular/core';
+import { Component, inject } from '@angular/core';
+import { KeycloakService } from 'keycloak-angular';
@Component({
selector: 'app-landing-page',
@@ -7,5 +8,9 @@ import { Component } from '@angular/core';
templateUrl: './landing-page.component.html',
})
export class LandingPageComponent {
+ private keycloakService: KeycloakService = inject(KeycloakService);
+ login() {
+ this.keycloakService.login();
+ }
}
diff --git a/frontend/src/styles.css b/frontend/src/styles.css
index f1d8c73..22329e3 100644
--- a/frontend/src/styles.css
+++ b/frontend/src/styles.css
@@ -1 +1,8 @@
-@import "tailwindcss";
+@import 'tailwindcss';
+
+.btn-primary {
+ @apply px-4 py-2 cursor-pointer relative font-bold rounded-lg transition-all duration-300 ease-out transform-gpu hover:scale-105 will-change-transform bg-gradient-to-r from-emerald-500 to-emerald-400 text-black hover:shadow-xl hover:shadow-emerald-500/20;
+}
+.btn-secondary {
+ @apply px-4 py-2 cursor-pointer relative font-bold rounded-lg transition-all duration-300 ease-out transform-gpu hover:scale-105 will-change-transform bg-white/10 text-white hover:bg-white/20;
+}
diff --git a/release.config.cjs b/release.config.cjs
new file mode 100644
index 0000000..e09738f
--- /dev/null
+++ b/release.config.cjs
@@ -0,0 +1,15 @@
+module.exports = {
+
+ branches: ['main'],
+ plugins: [
+ '@semantic-release/commit-analyzer',
+ '@semantic-release/release-notes-generator',
+ '@semantic-release/changelog',
+ ["@saithodev/semantic-release-gitea", {
+ "giteaUrl": "https://git.simonis.lol"
+ }],
+ ],
+ };
+
+
+
\ No newline at end of file