Merge pull request 'hardcode-fix' (#25) from hardcode-fix into main

Reviewed-on: #25

close #24
This commit was merged in pull request #25.
This commit is contained in:
2025-11-19 19:58:37 -06:00
4 changed files with 32 additions and 8 deletions

19
api/.env.example Normal file
View File

@@ -0,0 +1,19 @@
# DATABASE SETTINGS
DB_HOST=
DB_PORT=
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
# AUTH SETTINGS
AUTH_DOMAIN=
AUTH_ISSUER=
AUTH_CLIENT_ID=
AUTH_CLIENT_SECRET=
AUTH_REDIRECT_URI=
AUTH_REVOCATION_URI=
# AUTH_MODE=mock #uncomment this to bypass authentik
# SERVER SETTINGS
SERVER_PORT=3000

View File

@@ -12,9 +12,9 @@ const querystring = require('querystring');
passport.use(new OpenIDConnectStrategy({ passport.use(new OpenIDConnectStrategy({
issuer: process.env.AUTH_ISSUER, issuer: process.env.AUTH_ISSUER,
authorizationURL: 'https://sso.iceberg-gaming.com/application/o/authorize/', authorizationURL: process.env.AUTH_DOMAIN +'/authorize/',
tokenURL: 'https://sso.iceberg-gaming.com/application/o/token/', tokenURL: process.env.AUTH_DOMAIN +'/token/',
userInfoURL: 'https://sso.iceberg-gaming.com/application/o/userinfo/', userInfoURL: process.env.AUTH_DOMAIN +'/userinfo/',
clientID: process.env.AUTH_CLIENT_ID, clientID: process.env.AUTH_CLIENT_ID,
clientSecret: process.env.AUTH_CLIENT_SECRET, clientSecret: process.env.AUTH_CLIENT_SECRET,
callbackURL: process.env.AUTH_REDIRECT_URI, callbackURL: process.env.AUTH_REDIRECT_URI,
@@ -69,7 +69,7 @@ router.get('/login', (req, res, next) => {
// router.get('/callback', (req, res, next) => { // router.get('/callback', (req, res, next) => {
// passport.authenticate('openidconnect', { // passport.authenticate('openidconnect', {
// successRedirect: req.session.redirectTo, // successRedirect: req.session.redirectTo,
// failureRedirect: 'https://aj17thdev.nexuszone.net/' // failureRedirect: process.env.BASE_URL
// }) // })
// }); // });
@@ -77,13 +77,13 @@ router.get('/callback', (req, res, next) => {
const redirectURI = req.session.redirectTo; const redirectURI = req.session.redirectTo;
passport.authenticate('openidconnect', (err, user) => { passport.authenticate('openidconnect', (err, user) => {
if (err) return next(err); if (err) return next(err);
if (!user) return res.redirect('https://aj17thdev.nexuszone.net/'); if (!user) return res.redirect(process.env.BASE_URL);
req.logIn(user, err => { req.logIn(user, err => {
if (err) return next(err); if (err) return next(err);
// Use redirect saved from session // Use redirect saved from session
const redirectTo = redirectURI || 'https://aj17thdev.nexuszone.net/'; const redirectTo = redirectURI || process.env.BASE_URL;
delete req.session.redirectTo; delete req.session.redirectTo;
return res.redirect(redirectTo); return res.redirect(redirectTo);
}); });
@@ -95,7 +95,7 @@ router.post('/logout', function (req, res, next) {
if (err) { return next(err); } if (err) { return next(err); }
var params = { var params = {
client_id: process.env.AUTH_CLIENT_ID, client_id: process.env.AUTH_CLIENT_ID,
returnTo: 'https://aj17thdev.nexuszone.net/' returnTo: process.env.BASE_URL
}; };
res.redirect(process.env.AUTH_DOMAIN + '/v2/logout?' + querystring.stringify(params)); res.redirect(process.env.AUTH_DOMAIN + '/v2/logout?' + querystring.stringify(params));
}); });

2
ui/.env.example Normal file
View File

@@ -0,0 +1,2 @@
# SITE SETTINGS
BASE_URL=

View File

@@ -37,6 +37,9 @@ const router = createRouter({
] ]
}) })
const addr = import.meta.env.BASE_URL;
router.beforeEach(async (to) => { router.beforeEach(async (to) => {
const user = useUserStore() const user = useUserStore()
@@ -49,7 +52,7 @@ router.beforeEach(async (to) => {
if (to.meta.requiresAuth && !user.isLoggedIn) { if (to.meta.requiresAuth && !user.isLoggedIn) {
// Redirect back to original page after login // Redirect back to original page after login
const redirectUrl = encodeURIComponent(window.location.origin + to.fullPath) const redirectUrl = encodeURIComponent(window.location.origin + to.fullPath)
window.location.href = `https://aj17thdevapi.nexuszone.net/login?redirect=${redirectUrl}` window.location.href = `${addr}/login?redirect=${redirectUrl}`
return false // Prevent Vue Router from continuing return false // Prevent Vue Router from continuing
} }