Implementierung Wissensmanagement

Dieser Commit ist enthalten in:
HG
2025-12-30 22:49:56 +00:00
committet von Server Deploy
Ursprung 9bf298c26b
Commit 395598c2b0
51 geänderte Dateien mit 7598 neuen und 32 gelöschten Zeilen

Datei anzeigen

@ -20,6 +20,7 @@ import adminManager from './admin.js';
import proposalsManager from './proposals.js';
import notificationManager from './notifications.js';
import giteaManager from './gitea.js';
import knowledgeManager from './knowledge.js';
import { $, $$, debounce, getFromStorage, setToStorage } from './utils.js';
class App {
@ -79,6 +80,9 @@ class App {
// Initialize gitea manager
await giteaManager.init();
// Initialize knowledge manager
await knowledgeManager.init();
// Update UI
this.updateUserMenu();
}
@ -596,6 +600,18 @@ class App {
v.classList.toggle('hidden', !isActive);
});
// Clear search field when switching views
const searchInput = $('#search-input');
if (searchInput && searchInput.value) {
searchInput.value = '';
store.setFilter('search', '');
store.setState({ searchResultIds: [] }, 'CLEAR_SEARCH_RESULTS');
proposalsManager.setSearchQuery('');
knowledgeManager.setSearchQuery('');
$('#search-clear')?.classList.add('hidden');
$('.search-container')?.classList.remove('has-search');
}
// Load proposals when switching to proposals view - reset to active (non-archived)
if (view === 'proposals') {
proposalsManager.resetToActiveView();
@ -607,6 +623,13 @@ class App {
} else {
giteaManager.hide();
}
// Show/hide knowledge manager
if (view === 'knowledge') {
knowledgeManager.show();
} else {
knowledgeManager.hide();
}
}
// =====================
@ -823,8 +846,9 @@ class App {
updateSearchUI('');
searchInput.focus();
// Clear proposals search as well
// Clear view-specific search
proposalsManager.setSearchQuery('');
knowledgeManager.setSearchQuery('');
// Cancel any pending server search
if (searchAbortController) {
@ -897,6 +921,9 @@ class App {
if (currentView === 'proposals') {
// Search proposals only
proposalsManager.setSearchQuery(value);
} else if (currentView === 'knowledge') {
// Search knowledge base
knowledgeManager.setSearchQuery(value);
} else {
// Immediate client-side filtering for tasks
store.setFilter('search', value);