Added about page, cleaned up web config.
This commit is contained in:
parent
75c0fdcff6
commit
c7e327ff1e
|
@ -13,13 +13,15 @@ import java.util.Arrays;
|
|||
|
||||
@Configuration
|
||||
public class WebConfig {
|
||||
@Value("${app.web-origin}")
|
||||
private String webOrigin;
|
||||
|
||||
@Bean
|
||||
public CorsFilter corsFilter() {
|
||||
final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
|
||||
final CorsConfiguration config = new CorsConfiguration();
|
||||
config.setAllowCredentials(true);
|
||||
// Don't do this in production, use a proper list of allowed origins
|
||||
config.addAllowedOriginPattern("*");
|
||||
config.addAllowedOriginPattern(webOrigin);
|
||||
config.setAllowedHeaders(Arrays.asList("Origin", "Content-Type", "Accept"));
|
||||
config.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "OPTIONS", "DELETE", "PATCH"));
|
||||
source.registerCorsConfiguration("/**", config);
|
||||
|
|
|
@ -8,3 +8,5 @@ spring.jpa.show-sql=false
|
|||
|
||||
spring.task.execution.pool.core-size=3
|
||||
spring.task.execution.pool.max-size=10
|
||||
|
||||
app.web-origin=http://localhost:9000
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
export default {
|
||||
mainLayout: {
|
||||
language: 'Sprache',
|
||||
pages: 'Seiten',
|
||||
},
|
||||
indexPage: {
|
||||
searchHint: 'Suche nach einem Gym',
|
||||
},
|
||||
gymPage: {
|
||||
home: 'Home',
|
||||
submit: 'Einreichen',
|
||||
leaderboard: 'Bestenliste',
|
||||
homePage: {
|
||||
overview: 'Überblick über dieses Fitnessstudio:',
|
||||
recentLifts: 'Letzten Aufzüge'
|
||||
},
|
||||
submitPage: {
|
||||
name: 'Dein Name',
|
||||
exercise: 'Übung',
|
||||
weight: 'Gewicht',
|
||||
reps: 'Wiederholungen',
|
||||
date: 'Datum',
|
||||
upload: 'Videodatei zum Hochladen',
|
||||
submit: 'Einreichen',
|
||||
},
|
||||
},
|
||||
};
|
||||
|
|
@ -1,7 +1,9 @@
|
|||
import enUS from './en-US';
|
||||
import nlNL from './nl-NL';
|
||||
import de from './de';
|
||||
|
||||
export default {
|
||||
'en-US': enUS,
|
||||
'nl-NL': nlNL,
|
||||
'de': de,
|
||||
};
|
||||
|
|
|
@ -41,8 +41,9 @@
|
|||
<q-item-label header>
|
||||
{{ $t('mainLayout.pages') }}
|
||||
</q-item-label>
|
||||
<q-item clickable>Gyms</q-item>
|
||||
<q-item clickable to="/">Gyms</q-item>
|
||||
<q-item clickable>Global Leaderboard</q-item>
|
||||
<q-item clickable to="/about">About</q-item>
|
||||
</q-list>
|
||||
</q-drawer>
|
||||
|
||||
|
@ -60,6 +61,7 @@ const i18n = useI18n({ useScope: 'global' });
|
|||
const localeOptions = [
|
||||
{ value: 'en-US', label: 'English' },
|
||||
{ value: 'nl-NL', label: 'Nederlands' },
|
||||
{ value: 'de', label: 'Deutsch' },
|
||||
];
|
||||
|
||||
const leftDrawerOpen = ref(false);
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
<template>
|
||||
<StandardCenteredPage>
|
||||
<h3 class="text-center">About Gymboard</h3>
|
||||
<p>
|
||||
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Error fugit quia laboriosam eaque? Deserunt, accusantium dicta assumenda debitis incidunt eius provident magnam, est quasi officia voluptas, nam neque omnis reiciendis.
|
||||
</p>
|
||||
</StandardCenteredPage>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import StandardCenteredPage from 'src/components/StandardCenteredPage.vue';
|
||||
</script>
|
|
@ -1,16 +1,14 @@
|
|||
<template>
|
||||
<div
|
||||
class="fullscreen bg-blue text-white text-center q-pa-md flex flex-center"
|
||||
class="fullscreen text-center q-pa-md flex flex-center"
|
||||
>
|
||||
<div>
|
||||
<div style="font-size: 30vh">404</div>
|
||||
|
||||
<div class="text-h2" style="opacity: 0.4">Oops. Nothing here...</div>
|
||||
<div class="text-h2" style="opacity: 0.4">Page not found.</div>
|
||||
|
||||
<q-btn
|
||||
class="q-mt-xl"
|
||||
color="white"
|
||||
text-color="blue"
|
||||
unelevated
|
||||
to="/"
|
||||
label="Go Home"
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import { RouteRecordRaw } from 'vue-router';
|
||||
import MainLayout from 'layouts/MainLayout.vue';
|
||||
import IndexPage from 'pages/IndexPage.vue';
|
||||
import AboutPage from 'pages/AboutPage.vue';
|
||||
import GymPage from 'pages/gym/GymPage.vue';
|
||||
import GymSubmissionPage from 'pages/gym/GymSubmissionPage.vue';
|
||||
import GymHomePage from 'pages/gym/GymHomePage.vue';
|
||||
|
@ -21,6 +22,7 @@ const routes: RouteRecordRaw[] = [
|
|||
{ path: 'leaderboard', component: GymLeaderboardsPage },
|
||||
],
|
||||
},
|
||||
{ path: 'about', component: AboutPage }
|
||||
],
|
||||
},
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
package nl.andrewlalis.gymboardsearch.config;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.web.cors.CorsConfiguration;
|
||||
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
|
||||
import org.springframework.web.filter.CorsFilter;
|
||||
|
@ -10,14 +12,15 @@ import java.util.Arrays;
|
|||
|
||||
@Configuration
|
||||
public class WebConfig {
|
||||
@Value("${app.web-origin}")
|
||||
private String webOrigin;
|
||||
|
||||
@Bean
|
||||
public CorsFilter corsFilter() {
|
||||
final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
|
||||
final CorsConfiguration config = new CorsConfiguration();
|
||||
config.setAllowCredentials(true);
|
||||
// Don't do this in production, use a proper list of allowed origins
|
||||
config.addAllowedOriginPattern("*");
|
||||
config.addAllowedOriginPattern(webOrigin);
|
||||
config.setAllowedHeaders(Arrays.asList("Origin", "Content-Type", "Accept"));
|
||||
config.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "OPTIONS", "DELETE", "PATCH"));
|
||||
source.registerCorsConfiguration("/**", config);
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
server.port=8081
|
||||
app.web-origin=http://localhost:9000
|
||||
|
|
Loading…
Reference in New Issue