Compare commits

..

29 Commits
0.1.1 ... 0.4.4

Author SHA1 Message Date
9b62962758 🚀Bumped version to v0.4.4
Some checks reported errors
continuous-integration/drone/push Build was killed
2021-03-31 20:16:18 +02:00
84dc33bf14 🚑 hotfix - baseurl_selfservice -> baseurl 2021-03-31 20:14:58 +02:00
cad34d357b 🚀Bumped version to v0.4.3
Some checks reported errors
continuous-integration/drone/push Build was killed
2021-03-31 20:13:03 +02:00
2056ce1e62 🚑 hotfix - Profile api path 2021-03-31 20:11:40 +02:00
3b2c99c709 🚀Bumped version to v0.4.2
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-31 20:06:42 +02:00
f150821f0f 🚑 fix organization registration token 2021-03-31 20:06:20 +02:00
5191ecea1e 🚀Bumped version to v0.4.1
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-31 19:34:36 +02:00
2141f62dca Fixed registration routing 2021-03-31 19:34:13 +02:00
149fbdf581 🚀Bumped version to v0.4.0
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-31 19:07:43 +02:00
7e0108c739 Merge pull request 'bugfix/27-route-matching' (#28) from bugfix/27-route-matching into dev
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #28
close #27
2021-03-31 17:07:18 +00:00
ba604f77e9 added env config instructions
ref #27
2021-03-31 19:03:07 +02:00
c178932d94 Home - route fixes
ref #27
2021-03-31 18:56:34 +02:00
63d9ee2f86 favicon fix
ref #27
2021-03-31 18:55:30 +02:00
106bf4c0ff route fix for favicon + background
ref #27
2021-03-31 18:55:00 +02:00
2e7a718daa load main.js as deferred
ref #27
2021-03-31 18:45:23 +02:00
f603e53151 added missing routes
ref #27
2021-03-31 18:45:04 +02:00
6e0bf56289 🚀Bumped version to v0.3.1
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-31 17:14:20 +02:00
27b81d87ae 🐞 fixed Vite/ Tailwind build 2021-03-31 17:13:57 +02:00
cb5f48d913 🚀Bumped version to v0.3.0
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-30 18:17:31 +02:00
ae44d7e2e8 🐞 fix release config 2021-03-30 18:17:09 +02:00
69bfe9e585 Merge branch 'bugfix/23-broken-build' into dev
All checks were successful
continuous-integration/drone/push Build is passing
close #23
2021-03-30 18:12:04 +02:00
15b60f60b5 migrate to Tailwind JIT + views + router/ build fix
ref #23
2021-03-30 18:05:55 +02:00
83924a9416 🚀Bumped version to v0.2.0
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-27 19:44:28 +01:00
bd29d99120 Added image to docker-compose
All checks were successful
continuous-integration/drone/push Build is passing
ref #17
2021-03-27 19:38:36 +01:00
323ddc1c3d Now building latest from main [ci-skip]
All checks were successful
continuous-integration/drone/push Build is passing
ref #17
2021-03-27 19:34:03 +01:00
a174df19dd Added ci to build dev and tags
All checks were successful
continuous-integration/drone/push Build is passing
ref #17
2021-03-27 19:32:32 +01:00
eec6a358d8 Added releaseit config
ref #17
2021-03-27 19:29:47 +01:00
5253fb1832 🚀Bumped version to v0.1.2 2021-03-27 19:02:19 +01:00
00f8d8023e package dependency cleanup 2021-03-26 21:05:18 +01:00
24 changed files with 381 additions and 169 deletions

109
.drone.yml Normal file
View File

@@ -0,0 +1,109 @@
---
kind: secret
name: docker_username
get:
path: odit-registry-builder
name: username
---
kind: secret
name: docker_password
get:
path: odit-registry-builder
name: password
---
kind: secret
name: git_ssh
get:
path: odit-git-bot
name: sshkey
---
kind: pipeline
type: kubernetes
name: build:dev
steps:
# - name: run full license export
# depends_on: ["clone"]
# image: node:alpine
# commands:
# - yarn
# - yarn licenses:export
# - name: push new licenses file to repo
# depends_on: ["run full license export"]
# image: appleboy/drone-git-push
# settings:
# branch: dev
# commit: true
# commit_message: new license file version [CI SKIP]
# author_email: bot@odit.services
# remote: git@git.odit.services:lfk/selfservice.git
# ssh_key:
# from_secret: git_ssh
- name: build dev
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
repo: registry.odit.services/lfk/selfservice
tags:
- dev
registry: registry.odit.services
mtu: 1000
trigger:
branch:
- dev
event:
- push
---
kind: pipeline
type: kubernetes
name: build:latest
steps:
- name: build latest
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
repo: registry.odit.services/lfk/selfservice
tags:
- latest
registry: registry.odit.services
mtu: 1000
trigger:
branch:
- main
event:
- push
---
kind: pipeline
type: kubernetes
name: build:tags
steps:
- name: build $DRONE_TAG
image: plugins/docker
depends_on: [clone]
settings:
username:
from_secret: docker_username
password:
from_secret: docker_password
repo: registry.odit.services/lfk/selfservice
tags:
- '${DRONE_TAG}'
registry: registry.odit.services
mtu: 1000
trigger:
event:
- tag

View File

@@ -2,11 +2,80 @@
All notable changes to this project will be documented in this file. Dates are displayed in UTC. All notable changes to this project will be documented in this file. Dates are displayed in UTC.
#### [0.4.4](https://git.odit.services/lfk/selfservice/compare/0.4.3...0.4.4)
- 🚑 hotfix - baseurl_selfservice -> baseurl [`84dc33b`](https://git.odit.services/lfk/selfservice/commit/84dc33bf14ace839261aea02ffbcac5d627f8200)
#### [0.4.3](https://git.odit.services/lfk/selfservice/compare/0.4.2...0.4.3)
> 31 March 2021
- 🚀Bumped version to v0.4.3 [`cad34d3`](https://git.odit.services/lfk/selfservice/commit/cad34d357b9bd8501eed26b35b5324d2b4f756c3)
- 🚑 hotfix - Profile api path [`2056ce1`](https://git.odit.services/lfk/selfservice/commit/2056ce1e62a33e14bce5bdef5ea8cd38e039dc62)
#### [0.4.2](https://git.odit.services/lfk/selfservice/compare/0.4.1...0.4.2)
> 31 March 2021
- 🚀Bumped version to v0.4.2 [`3b2c99c`](https://git.odit.services/lfk/selfservice/commit/3b2c99c7090de03aab12415342136460ddd735ee)
- 🚑 fix organization registration token [`f150821`](https://git.odit.services/lfk/selfservice/commit/f150821f0f60e4798b02ebf50588da61ccb51279)
#### [0.4.1](https://git.odit.services/lfk/selfservice/compare/0.4.0...0.4.1)
> 31 March 2021
- Fixed registration routing [`2141f62`](https://git.odit.services/lfk/selfservice/commit/2141f62dca7ecb2be2579a7e79ffca513563c22a)
- 🚀Bumped version to v0.4.1 [`5191ece`](https://git.odit.services/lfk/selfservice/commit/5191ecea1eb3ac66a3f0c2743d43ff5b505061b7)
#### [0.4.0](https://git.odit.services/lfk/selfservice/compare/0.3.1...0.4.0)
> 31 March 2021
- Merge pull request 'bugfix/27-route-matching' (#28) from bugfix/27-route-matching into dev [`#27`](https://git.odit.services/lfk/selfservice/issues/27)
- added missing routes [`f603e53`](https://git.odit.services/lfk/selfservice/commit/f603e531512a2245ea2fe41304eb039080bcba28)
- added env config instructions [`ba604f7`](https://git.odit.services/lfk/selfservice/commit/ba604f77e9ce770e60f032cf393a5987a0401fbe)
- 🚀Bumped version to v0.4.0 [`149fbdf`](https://git.odit.services/lfk/selfservice/commit/149fbdf58180d1af33f9741d9076df0bb1591130)
- Home - route fixes [`c178932`](https://git.odit.services/lfk/selfservice/commit/c178932d943e08168fa6be39eb0a1d7e4a25824a)
- route fix for favicon + background [`106bf4c`](https://git.odit.services/lfk/selfservice/commit/106bf4c0ff07fe847f98aa250230f2a272f55a04)
- favicon fix [`63d9ee2`](https://git.odit.services/lfk/selfservice/commit/63d9ee2f867e42ecd23ca1d48d59b6deb7458d76)
- load main.js as deferred [`2e7a718`](https://git.odit.services/lfk/selfservice/commit/2e7a718daa7ca607622e3e339bdb85f5c64cfcf0)
#### [0.3.1](https://git.odit.services/lfk/selfservice/compare/0.3.0...0.3.1)
> 31 March 2021
- 🐞 fixed Vite/ Tailwind build [`27b81d8`](https://git.odit.services/lfk/selfservice/commit/27b81d87aeb907f6c3d35ea6f55b4fe56c1e79b4)
- 🚀Bumped version to v0.3.1 [`6e0bf56`](https://git.odit.services/lfk/selfservice/commit/6e0bf56289852cda0c30325f4b8ca7826386abf4)
#### [0.3.0](https://git.odit.services/lfk/selfservice/compare/0.2.0...0.3.0)
> 30 March 2021
- Merge branch 'bugfix/23-broken-build' into dev [`#23`](https://git.odit.services/lfk/selfservice/issues/23)
- migrate to Tailwind JIT + views + router/ build fix [`15b60f6`](https://git.odit.services/lfk/selfservice/commit/15b60f60b5d4f3c4035460f25807c5f5f2f19578)
- 🚀Bumped version to v0.3.0 [`cb5f48d`](https://git.odit.services/lfk/selfservice/commit/cb5f48d913b8aff2b138c93c4e29a2b8a553529d)
- 🐞 fix release config [`ae44d7e`](https://git.odit.services/lfk/selfservice/commit/ae44d7e2e86b9bee74d453301846d02b29c632f2)
- 🚀Bumped version to v0.1.2 [`5253fb1`](https://git.odit.services/lfk/selfservice/commit/5253fb18325ce9069e84180b30110ae97752ef20)
#### [0.2.0](https://git.odit.services/lfk/selfservice/compare/0.1.1...0.2.0)
> 27 March 2021
- 🚀Bumped version to v0.2.0 [`83924a9`](https://git.odit.services/lfk/selfservice/commit/83924a9416dc966a417b32fa19b5fb725181e5ee)
- Added ci to build dev and tags [`a174df1`](https://git.odit.services/lfk/selfservice/commit/a174df19ddbf65b0229af38947a9416b1bcd0703)
- Now building latest from main [ci-skip] [`323ddc1`](https://git.odit.services/lfk/selfservice/commit/323ddc1c3d91ffa74200ed9250b891d2fe4da78d)
- Added releaseit config [`eec6a35`](https://git.odit.services/lfk/selfservice/commit/eec6a358d899a40eb6bac92bb3af37b2d37a5d91)
- package dependency cleanup [`00f8d80`](https://git.odit.services/lfk/selfservice/commit/00f8d8023e3ca47eb650c8b1c5c550112ed0d503)
- Added image to docker-compose [`bd29d99`](https://git.odit.services/lfk/selfservice/commit/bd29d9912023539b26cdac36997d7cb29ec0d538)
#### [0.1.1](https://git.odit.services/lfk/selfservice/compare/0.1.0...0.1.1) #### [0.1.1](https://git.odit.services/lfk/selfservice/compare/0.1.0...0.1.1)
> 26 March 2021
- org registration - add team select [`#18`](https://git.odit.services/lfk/selfservice/issues/18) - org registration - add team select [`#18`](https://git.odit.services/lfk/selfservice/issues/18)
- added baseurl_selfservice config [`#22`](https://git.odit.services/lfk/selfservice/issues/22) - added baseurl_selfservice config [`#22`](https://git.odit.services/lfk/selfservice/issues/22)
- [tmp] vue i18n error [`7b0bc22`](https://git.odit.services/lfk/selfservice/commit/7b0bc22a7157ee4551ab69dd5be856abed90b60c) - [tmp] vue i18n error [`7b0bc22`](https://git.odit.services/lfk/selfservice/commit/7b0bc22a7157ee4551ab69dd5be856abed90b60c)
- ⏫ v0.1.1 changelog [`e2be86c`](https://git.odit.services/lfk/selfservice/commit/e2be86c5589f9ca9053d5bcdc61be3a642b94791)
- ⏫ version bump to 0.1.1 [`4d57812`](https://git.odit.services/lfk/selfservice/commit/4d57812c043e9078656818a33d241df220127a92) - ⏫ version bump to 0.1.1 [`4d57812`](https://git.odit.services/lfk/selfservice/commit/4d57812c043e9078656818a33d241df220127a92)
- Merge tag '0.1.0' into dev [`88996f8`](https://git.odit.services/lfk/selfservice/commit/88996f81d8990969048f00a7c175d2a30da2588b) - Merge tag '0.1.0' into dev [`88996f8`](https://git.odit.services/lfk/selfservice/commit/88996f81d8990969048f00a7c175d2a30da2588b)

View File

@@ -4,7 +4,7 @@ runner selfservice portal
## ⚡ Development ## ⚡ Development
### Requirements ### Requirements
- Node.js v14.15.0 or newer - Node.js v14.16.0 or newer
- yarn package manager >= v1.22.10 < 2 - yarn package manager >= v1.22.10 < 2
### Recommended Extensions ### Recommended Extensions
@@ -14,9 +14,17 @@ runner selfservice portal
### Fastest Dev Environment ### Fastest Dev Environment
- You can install the [Remote - Containers](https://github.com/Microsoft/vscode-remote-release) extension and use all recommended extensions and editor settings via the provided `./devcontainer/` config - You can install the [Remote - Containers](https://github.com/Microsoft/vscode-remote-release) extension and use all recommended extensions and editor settings via the provided `./devcontainer/` config
## 🔨 environment config ### Manual Dev Environment
```
yarn && yarn dev --open
```
## 🔨 Environment config
- copy the `/public/env.sample.js` file to `/public/env.js` - copy the `/public/env.sample.js` file to `/public/env.js`
- set the required environment variables - set the required environment variables
- `documentserver_key`: url to the [document server](https://git.odit.services/lfk/document-server) instance - `documentserver_key`: url to the [document server](https://git.odit.services/lfk/document-server) instance
- `baseurl`: url to the main instance - `baseurl`: url to the main lfk instance - WITH TRAILING SLASH
- see [@lfk/deployment](https://git.odit.services/lfk/deployment) for a complete deployment guide - see [@lfk/deployment](https://git.odit.services/lfk/deployment) for a complete deployment guide
- `baseurl_selfservice`: location of the selfservice instance - WITH TRAILING SLASH
- e.g. path: `/selfservice/`
- e.g. url: `https://example.com/selfservice/`

View File

@@ -2,5 +2,8 @@ version: "3"
services: services:
httpd: httpd:
build: . build: .
#image: registry.odit.services/lfk/selfservice:dev
volumes:
- ./public/env.sample.js:/usr/share/nginx/html/env.js
ports: ports:
- 4050:80 - 4050:80

View File

@@ -11,7 +11,7 @@
<body class="dark:bg-gray-900 text-black dark:text-white p-0"> <body class="dark:bg-gray-900 text-black dark:text-white p-0">
<div id="app"></div> <div id="app"></div>
<script src="/env.js"></script> <script src="/env.js"></script>
<script type="module" src="/src/main.js"></script> <script defer type="module" src="/src/main.js"></script>
</body> </body>
</html> </html>

View File

@@ -7,9 +7,16 @@ http {
error_page 404 /index.html; error_page 404 /index.html;
root /usr/share/nginx/html; root /usr/share/nginx/html;
location / { location / {
rewrite /register/(.*) /$1 break;
rewrite /profile/(.*) /$1 break;
try_files $uri $uri/ /index.html; try_files $uri $uri/ /index.html;
} }
location ~* \.(?:ico|css|gif|jpe?g|png)$ { location ~* \.(?:ico|css|gif|jpe?g|png)$ {
rewrite /register/(.*) /$1 break;
rewrite /profile/(.*) /$1 break;
expires 1y; expires 1y;
add_header Pragma public; add_header Pragma public;
add_header Cache-Control "public"; add_header Cache-Control "public";

View File

@@ -1,44 +1,50 @@
{ {
"name": "@odit/lfk-selfservice", "name": "@odit/lfk-selfservice",
"version": "0.1.1", "version": "0.4.4",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",
"build": "vite build", "build": "vite build",
"release": "release-it --only-version" "release": "release-it --only-version"
}, },
"dependencies": { "dependencies": {
"got": "^11.8.2", "marked": "2.0.1",
"marked": "^2.0.1", "redaxios": "0.4.1",
"redaxios": "^0.4.1", "toastify-js": "1.10.0",
"toastify-js": "^1.9.3", "validator": "13.5.2",
"validator": "^13.5.2", "vue-i18n": "9.0.0",
"vue": "^3.0.5", "vue-toastification": "2.0.0-rc.1",
"vue-i18n": "^9.0.0", "vue": "3.0.9",
"vue-phone-number-input": "^1.1.10", "vue-router": "4.0.5"
"vue-router": "4", },
"vue-toastification": "^2.0.0-rc.1" "devDependencies": {
}, "@tailwindcss/jit": "0.1.18",
"devDependencies": { "@tailwindcss/aspect-ratio": "0.2.0",
"@vitejs/plugin-vue": "^1.1.5", "@tailwindcss/forms": "0.3.2",
"@vue/compiler-sfc": "^3.0.7", "@tailwindcss/line-clamp": "0.2.0",
"autoprefixer": "^10.2.5", "@tailwindcss/typography": "0.4.0",
"postcss": "^8.2.8", "@vitejs/plugin-vue": "1.2.1",
"release-it": "^14.5.0", "@vue/compiler-sfc": "3.0.10",
"tailwindcss": "^2.0.4", "autoprefixer": "10.2.5",
"vite": "^2.1.2", "tailwindcss": "2.0.4",
"vite-plugin-windicss": "^0.9.11" "release-it": "14.5.0",
}, "vite": "2.1.5"
"release-it": { },
"git": { "release-it": {
"commit": true, "git": {
"requireCleanWorkingDir": false, "commit": true,
"commitMessage": "🚀Bumped version to v${version}", "requireCleanWorkingDir": false,
"requireBranch": "dev", "commitMessage": "🚀Bumped version to v${version}",
"push": false, "requireBranch": "dev",
"tag": false "push": false,
}, "tag": true,
"npm": { "tagName": null,
"publish": false "tagAnnotation": "v${version}"
} },
} "npm": {
} "publish": false
},
"hooks": {
"after:bump": "npx auto-changelog --commit-limit false -p -u --hide-credit && git add CHANGELOG.md && node order_i18n.js && git add src/locales"
}
}
}

View File

@@ -1,6 +1,6 @@
module.exports = { module.exports = {
plugins: { plugins: {
tailwindcss: {}, '@tailwindcss/jit': {},
autoprefixer: {}, autoprefixer: {},
}, },
} }

View File

@@ -1,10 +1,10 @@
const config = { const config = {
// required // required
documentserver_key: '', documentserver_key: '',
// required // required, with trailing slash
baseurl: '', baseurl: '',
// optional, will fallback to /selfservice // optional, will fallback to /selfservice/
baseurl_selfservice: '/selfservice', baseurl_selfservice: '/selfservice/',
// optional, will fallback to /imprint // optional, will fallback to /imprint
url_imprint: '', url_imprint: '',
// optional, will fallback to /privacy // optional, will fallback to /privacy

View File

@@ -1,8 +1,5 @@
<template> <template>
<router-view></router-view> <main>
</template> <router-view></router-view>
</main>
<script setup> </template>
console.log(config.baseurl_selfservice);
config.baseurl_selfservice = (config.baseurl_selfservice || "/selfservice");
</script>

View File

@@ -1,43 +1,43 @@
{ {
"already_have_an_account": "Already have an account?", "already_have_an_account": "Already have an account?",
"apartment_suite_etc": "Apartment, suite, etc.", "apartment_suite_etc": "Apartment, suite, etc.",
"configuration_error": "Configuration error", "configuration_error": "Configuration error",
"confirm_personal_data": "I hereby confirm that the above information is complete and correct", "confirm_personal_data": "I hereby confirm that the above information is complete and correct",
"distance": "Distance", "distance": "Distance",
"download_certificate": "Download certificate", "download_certificate": "Download certificate",
"e_mail_adress": "mail address", "e_mail_adress": "mail address",
"go_to_login": "Go To Login", "go_to_login": "Go To Login",
"i_accept": "I have read and accepted the ", "i_accept": "I have read and accepted the ",
"i_accept_end": "", "i_accept_end": "",
"if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "If you are the system administrator, please refer to the official product documentation/ README for configuration guidance.", "if_you_are_the_system_administrator_please_refer_to_the_official_product_documentation_readme_for_configuration_guidance": "If you are the system administrator, please refer to the official product documentation/ README for configuration guidance.",
"imprint": "Imprint", "imprint": "Imprint",
"lap_time": "Lap time", "lap_time": "Lap time",
"lap_times": "Lap times", "lap_times": "Lap times",
"main_page_text": "Here you can register for the Lauf Für Kaya! or manage your runner profile.", "main_page_text": "Here you can register for the Lauf Für Kaya! or manage your runner profile.",
"mittelname": "Middlename", "mittelname": "Middlename",
"nachname": "Lastname", "nachname": "Lastname",
"no_laps_scans_were_recorded_yet": "No laps/ scans were recorded yet...", "no_laps_scans_were_recorded_yet": "No laps/ scans were recorded yet...",
"ort": "City", "organization": "Organization",
"phone_number": "Phone Number", "ort": "City",
"please_provide_a_valid_zipcode": "Please provide a valid zipcode...", "phone_number": "Phone Number",
"please_provide_valid_mail": "Please provide a valid mail address.", "please_provide_a_valid_zipcode": "Please provide a valid zipcode...",
"plz": "zipcode", "please_provide_valid_mail": "Please provide a valid mail address.",
"privacy_policy": "Privacy Policy", "plz": "zipcode",
"profile": "Profile", "privacy_policy": "Privacy Policy",
"provide_address": "Provide a postal address?", "profile": "Profile",
"register": { "provide_address": "Provide a postal address?",
"register_now": "Register now for Lauf für Kaya! 2021." "register": {
}, "register_now": "Register now for Lauf für Kaya! 2021."
"register_now": "Register now!", },
"registrieren": "Register Now", "register_now": "Register now!",
"save_changes": "Save changes", "registrieren": "Register Now",
"sponsoring": "Sponsoring", "save_changes": "Save changes",
"strasse": "Street/ Block", "sponsoring": "Sponsoring",
"the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "The system is not properly configured. Please contact the system administrator for help.", "strasse": "Street/ Block",
"this_is_not_a_valid_international_phone_number": "This is not a valid international phone number", "the_system_is_not_properly_configured_please_contact_the_system_administrator_for_help": "The system is not properly configured. Please contact the system administrator for help.",
"tos": "Terms of Service", "this_is_not_a_valid_international_phone_number": "This is not a valid international phone number",
"view_my_data": "View my data", "tos": "Terms of Service",
"vorname": "Firstname", "view_my_data": "View my data",
"organization": "Organization", "vorname": "Firstname",
"you_have_been_registered": "You have been registered!" "you_have_been_registered": "You have been registered!"
} }

View File

@@ -1,10 +1,21 @@
import { createApp } from 'vue'; import { createApp } from 'vue';
import App from './App.vue'; import './tailwind.css';
import Toast from 'vue-toastification';
import 'windi.css';
import 'toastify-js/src/toastify.css'; import 'toastify-js/src/toastify.css';
import 'vue-toastification/dist/index.css'; import 'vue-toastification/dist/index.css';
import { router } from './router'; import App from './App.vue';
import { routes } from './routes.js';
import { createRouter, createWebHistory } from 'vue-router';
import { i18n } from './language'; import { i18n } from './language';
import Toast from 'vue-toastification';
createApp(App).use(Toast).use(i18n).use(router).mount('#app'); const app = createApp(App);
const router = createRouter({
history: createWebHistory(),
routes
});
app.use(router);
app.use(i18n);
app.use(Toast);
app.mount('#app');

View File

@@ -1,26 +0,0 @@
import { createWebHistory, createRouter } from 'vue-router';
// ------------
const EnvError = import('./components/EnvError.vue');
const Home = import('./components/Home.vue');
const Imprint = import('./components/Imprint.vue');
const Privacy = import('./components/Privacy.vue');
const Register = () => import('./components/Register.vue');
const Profile = () => import('./components/Profile.vue');
//
let routes = [ { path: '/:pathMatch(.*)*', component: EnvError } ];
if (typeof config !== 'undefined') {
if (config.baseurl && config.documentserver_key) {
routes = [
{ path: '/', component: Home },
{ path: '/imprint', component: Imprint },
{ path: '/privacy', component: Privacy },
{ path: '/register', component: Register },
{ path: '/register/:token', component: Register, props: true },
{ path: '/profile/:token', component: Profile, props: true }
];
}
}
export const router = createRouter({
history: createWebHistory(),
routes
});

24
src/routes.js Normal file
View File

@@ -0,0 +1,24 @@
// import EnvError from './components/EnvError.vue';
import Home from './views/Home.vue';
import Imprint from './views/Imprint.vue';
import Privacy from './views/Privacy.vue';
import Register from './views/Register.vue';
import Profile from './views/Profile.vue';
import ProfileNone from './views/ProfileNone.vue';
console.log(config);
/** @type {import('vue-router').RouterOptions['routes']} */
export const routes = [
{ path: config.baseurl_selfservice + '', component: Home },
{ path: config.baseurl_selfservice + 'imprint', component: Imprint },
{ path: config.baseurl_selfservice + 'imprint/', component: Imprint },
{ path: config.baseurl_selfservice + 'privacy', component: Privacy },
{ path: config.baseurl_selfservice + 'privacy/', component: Privacy },
{ path: config.baseurl_selfservice + 'register', component: Register },
{ path: config.baseurl_selfservice + 'register/', component: Register },
{ path: config.baseurl_selfservice + 'register/:token', component: Register, props: true },
{ path: config.baseurl_selfservice + 'profile', component: Profile },
{ path: config.baseurl_selfservice + 'profile/', component: ProfileNone },
{ path: config.baseurl_selfservice + 'profile/:token', component: Profile, props: true }
];

3
src/tailwind.css Normal file
View File

@@ -0,0 +1,3 @@
@import 'tailwindcss/base';
@import 'tailwindcss/components';
@import 'tailwindcss/utilities';

View File

@@ -1,5 +1,5 @@
<template> <template>
<div class="bg-cover bg-fixed m-0 h-screen" style="background-image: url('/background.jpg');"> <div class="bg-cover bg-fixed m-0 h-screen" style="background-image: url('./background.jpg');">
<section class="container px-4 py-24 mx-auto"> <section class="container px-4 py-24 mx-auto">
<div class="w-full mx-auto text-center"> <div class="w-full mx-auto text-center">
<img src="/favicon.png" class="h-32 mx-auto" /> <img src="/favicon.png" class="h-32 mx-auto" />
@@ -9,14 +9,14 @@
<p class="px-0 mb-6 text-lg text-gray-100 md:text-xl lg:px-24">Selfservice Portal</p> <p class="px-0 mb-6 text-lg text-gray-100 md:text-xl lg:px-24">Selfservice Portal</p>
<p class="px-0 mb-6 text-md text-gray-100 lg:px-24">{{ $t('main_page_text') }}</p> <p class="px-0 mb-6 text-md text-gray-100 lg:px-24">{{ $t('main_page_text') }}</p>
<div class="mt-6 sm:flex place-content-center"> <div class="mt-6 sm:flex place-content-center">
<router-link <a
class="w-full sm:w-auto inline-flex px-6 py-3 border border-transparent text-base font-semibold rounded-md text-gray-900 bg-white shadow-sm hover:text-gray-600 focus:outline-none focus:text-gray-600 transition ease-in-out duration-150 xl:text-lg xl:py-4" class="w-full sm:w-auto inline-flex px-6 py-3 border border-transparent text-base font-semibold rounded-md text-gray-900 bg-white shadow-sm hover:text-gray-600 focus:outline-none focus:text-gray-600 transition ease-in-out duration-150 xl:text-lg xl:py-4"
to="/register" href="./register"
>{{ $t('register_now') }}</router-link> >{{ $t('register_now') }}</a>
<router-link <a
to="/profile" href="./profile"
class="mt-4 sm:ml-4 sm:mt-0 w-full sm:w-auto inline-flex px-6 py-3 border border-transparent text-base font-semibold rounded-md text-white bg-gray-800 shadow-sm hover:bg-gray-700 focus:outline-none focus:bg-gray-700 transition ease-in-out duration-150 xl:text-lg xl:py-4" class="mt-4 sm:ml-4 sm:mt-0 w-full sm:w-auto inline-flex px-6 py-3 border border-transparent text-base font-semibold rounded-md text-white bg-gray-800 shadow-sm hover:bg-gray-700 focus:outline-none focus:bg-gray-700 transition ease-in-out duration-150 xl:text-lg xl:py-4"
>{{ $t('view_my_data') }}</router-link> >{{ $t('view_my_data') }}</a>
</div> </div>
</div> </div>
</section> </section>
@@ -25,6 +25,6 @@
</template> </template>
<script setup> <script setup>
import LoginForm from "./LoginForm.vue"; import Footer from "@/components/Footer.vue";
import Footer from "./Footer.vue"; console.log(config);
</script> </script>

View File

@@ -10,7 +10,7 @@
</div> </div>
</section> </section>
</template> </template>
<style src="./simple.css"> <style src="../simple.css">
</style> </style>
<script> <script>
import marked from "marked"; import marked from "marked";

View File

@@ -10,7 +10,7 @@
</div> </div>
</section> </section>
</template> </template>
<style src="./simple.css"> <style src="../simple.css">
</style> </style>
<script> <script>
import marked from "marked"; import marked from "marked";

View File

@@ -165,13 +165,10 @@
</template> </template>
<script setup> <script setup>
import { ref, reactive } from "vue"; import { reactive } from "vue";
import { useToast } from "vue-toastification"; import { useToast } from "vue-toastification";
import axios from "redaxios"; import axios from "redaxios";
// import isEmail from 'validator/es/lib/isEmail';
// import isMobilePhone from 'validator/es/lib/isMobilePhone';
// import isPostalCode from 'validator/es/lib/isPostalCode';
//
const state = reactive({ const state = reactive({
phone: "", phone: "",
email: "", email: "",

View File

@@ -0,0 +1 @@
<template>You have not provided a valid access key...</template>

View File

@@ -261,14 +261,13 @@ import isEmail from 'validator/es/lib/isEmail';
import isMobilePhone from 'validator/es/lib/isMobilePhone'; import isMobilePhone from 'validator/es/lib/isMobilePhone';
import isPostalCode from 'validator/es/lib/isPostalCode'; import isPostalCode from 'validator/es/lib/isPostalCode';
import { useToast } from "vue-toastification"; import { useToast } from "vue-toastification";
import { router } from '../router'; // import { router } from '../router';
import { i18n } from '../language'; import { i18n } from '../language';
const props = defineProps({ const props = defineProps({
token: String token: String
}) })
if (props.token) { if (props.token) {
props.token = atob(props.token);
axios.get(`${config.baseurl}api/organizations/selfservice/${props.token}`) axios.get(`${config.baseurl}api/organizations/selfservice/${props.token}`)
.then(({ data }) => { .then(({ data }) => {
state.org_name = data.name; state.org_name = data.name;
@@ -328,7 +327,7 @@ function login() {
axios.post(url, postdata) axios.post(url, postdata)
.then(({ data }) => { .then(({ data }) => {
const token = btoa(data.token); const token = btoa(data.token);
router.push(`${config.baseurl_selfservice}/profile/${token}`); // router.push(`${config.baseurl_selfservice}/profile/${token}`);
}) })
.catch((error) => { .catch((error) => {
console.log(error); console.log(error);

View File

@@ -1,11 +1,11 @@
module.exports = { module.exports = {
purge: [], purge: [ './index.html', './src/**/*.{vue,js,ts,jsx,tsx}' ],
darkMode: "media", // or 'media' or 'class' darkMode: 'media', // or 'media' or 'class'
theme: { theme: {
extend: {}, extend: {}
}, },
variants: { variants: {
extend: {}, extend: {}
}, },
plugins: [], plugins: []
} };

View File

@@ -1,9 +1,13 @@
import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue'; import vue from '@vitejs/plugin-vue';
import WindiCSS from 'vite-plugin-windicss'; import path from 'path';
/** export default defineConfig({
* @type {import('vite').UserConfig} plugins: [ vue() ],
*/ base: './',
export default { resolve: {
plugins: [ vue(), WindiCSS() ] alias: {
}; '@': path.resolve(__dirname, '/src')
}
}
});