diff --git a/module_manager.py b/module_manager.py index b1a9ec1..8b480a6 100644 --- a/module_manager.py +++ b/module_manager.py @@ -195,6 +195,15 @@ class ModuleManager: ''', [module_key, module['name'], module['version'], module['author'], module['description']]) + # Also register in old Modules table for compatibility + old_module = query_db('SELECT module_id FROM Modules WHERE module_key = ?', [module_key], one=True) + if not old_module: + execute_db(''' + INSERT INTO Modules (module_name, module_key, description, icon, is_active) + VALUES (?, ?, ?, ?, 1) + ''', [module['name'], module_key, module['description'], module.get('icon', '')]) + + # Also register in old Modules table for compatibility old_module = query_db('SELECT module_id FROM Modules WHERE module_key = ?', [module_key], one=True) if not old_module: @@ -213,6 +222,8 @@ class ModuleManager: import traceback traceback.print_exc() return {'success': False, 'message': f'Installation failed: {str(e)}'} + + def uninstall_module(self, module_key: str, drop_tables: bool = True) -> Dict: """ diff --git a/modules/invcount/manifest.json b/modules/invcount/manifest.json index b01225c..a9206fa 100644 --- a/modules/invcount/manifest.json +++ b/modules/invcount/manifest.json @@ -4,6 +4,7 @@ "version": "1.0.0", "author": "STUFF", "description": "Cycle counting and physical inventory workflows with session-based tracking", + "icon": "fa-clipboard-check", "requires_roles": ["owner", "admin", "staff"], "routes_prefix": "/invcount", "has_migrations": true, diff --git a/templates/admin_dashboard.html b/templates/admin_dashboard.html index 302909b..bffb7ed 100644 --- a/templates/admin_dashboard.html +++ b/templates/admin_dashboard.html @@ -25,13 +25,13 @@
{{ module.description }}