Fix module import issue on fresh installs
- Added create_directories function to properly set up directory structure - Added copy_module_files function to ensure JS modules are copied correctly - Updated server.js to handle module imports more resiliently - Fixed imports to work with both .js and no extension module references 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -15,9 +15,41 @@ const jwt = require('jsonwebtoken');
|
||||
const bcrypt = require('bcrypt');
|
||||
|
||||
// Import custom modules
|
||||
const RssFeedManager = require('./modules/rss-feed-manager.js');
|
||||
const TransmissionClient = require('./modules/transmission-client.js');
|
||||
const PostProcessor = require('./modules/post-processor.js');
|
||||
// Try to import with .js extension first, then fallback to no extension for better compatibility
|
||||
let RssFeedManager, TransmissionClient, PostProcessor;
|
||||
|
||||
try {
|
||||
RssFeedManager = require('./modules/rss-feed-manager.js');
|
||||
} catch (e) {
|
||||
try {
|
||||
RssFeedManager = require('./modules/rss-feed-manager');
|
||||
} catch (err) {
|
||||
console.error('Failed to load RssFeedManager module:', err);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
TransmissionClient = require('./modules/transmission-client.js');
|
||||
} catch (e) {
|
||||
try {
|
||||
TransmissionClient = require('./modules/transmission-client');
|
||||
} catch (err) {
|
||||
console.error('Failed to load TransmissionClient module:', err);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
PostProcessor = require('./modules/post-processor.js');
|
||||
} catch (e) {
|
||||
try {
|
||||
PostProcessor = require('./modules/post-processor');
|
||||
} catch (err) {
|
||||
console.error('Failed to load PostProcessor module:', err);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
// Constants and configuration
|
||||
const DEFAULT_CONFIG_PATH = '/etc/transmission-rss-manager/config.json';
|
||||
|
||||
Reference in New Issue
Block a user