25 lines
777 B
TypeScript
25 lines
777 B
TypeScript
import { Request, Response } from 'express';
|
|
import environment from '../config/environment';
|
|
import settingsService from '../services/settings.service';
|
|
|
|
class ConfigController {
|
|
async getExternalLinks(_req: Request, res: Response): Promise<void> {
|
|
const envLinks: Record<string, string> = {};
|
|
if (environment.nextcloudUrl) envLinks.nextcloud = environment.nextcloudUrl;
|
|
if (environment.bookstack.url) envLinks.bookstack = environment.bookstack.url;
|
|
if (environment.vikunja.url) envLinks.vikunja = environment.vikunja.url;
|
|
|
|
const customLinks = await settingsService.getExternalLinks();
|
|
|
|
res.status(200).json({
|
|
success: true,
|
|
data: {
|
|
...envLinks,
|
|
customLinks,
|
|
},
|
|
});
|
|
}
|
|
}
|
|
|
|
export default new ConfigController();
|