Englische Texte, Kopiericon, Get-Route für suche
This commit is contained in:
37
server.js
37
server.js
@@ -21,6 +21,43 @@ app.use(express.static(path.join(__dirname, 'public')));
|
||||
// API Routes
|
||||
app.use('/api/search', searchRoutes);
|
||||
|
||||
// Direkte URL-Aufrufe auf die UI umleiten und Suchbegriff vorbelegen:
|
||||
// - /search=meinbegriff -> /?q=meinbegriff
|
||||
// - /search?q=meinbegriff oder /search?search=meinbegriff -> /?q=meinbegriff
|
||||
app.get('/search=:searchTerm', (req, res) => {
|
||||
const searchTerm = (req.params.searchTerm || '').trim();
|
||||
const statusFilter = (req.query.status || '').trim();
|
||||
|
||||
if (!searchTerm) {
|
||||
return res.redirect('/');
|
||||
}
|
||||
|
||||
const redirectUrl = new URL(`http://localhost:${PORT}/`);
|
||||
redirectUrl.searchParams.set('q', searchTerm);
|
||||
if (statusFilter) {
|
||||
redirectUrl.searchParams.set('status', statusFilter);
|
||||
}
|
||||
|
||||
return res.redirect(`${redirectUrl.pathname}${redirectUrl.search}`);
|
||||
});
|
||||
|
||||
app.get('/search', (req, res) => {
|
||||
const searchTerm = (req.query.search || req.query.q || '').trim();
|
||||
const statusFilter = (req.query.status || '').trim();
|
||||
|
||||
if (!searchTerm) {
|
||||
return res.redirect('/');
|
||||
}
|
||||
|
||||
const redirectUrl = new URL(`http://localhost:${PORT}/`);
|
||||
redirectUrl.searchParams.set('q', searchTerm);
|
||||
if (statusFilter) {
|
||||
redirectUrl.searchParams.set('status', statusFilter);
|
||||
}
|
||||
|
||||
return res.redirect(`${redirectUrl.pathname}${redirectUrl.search}`);
|
||||
});
|
||||
|
||||
// Health check endpoint
|
||||
app.get('/api/health', async (req, res) => {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user