coldown fix
This commit is contained in:
@@ -11,6 +11,7 @@ interface Config {
|
||||
|
||||
autoExportIntervalSeconds: number;
|
||||
exportPath: string;
|
||||
adminKey: string;
|
||||
|
||||
enableKeycloak: boolean;
|
||||
keycloakRealm: string;
|
||||
@@ -22,87 +23,44 @@ function parseConfigFile(): Config {
|
||||
try {
|
||||
const configPath = join(process.cwd(), "config.cfg");
|
||||
const configContent = readFileSync(configPath, "utf-8");
|
||||
|
||||
const config: Partial<Config> = {};
|
||||
|
||||
|
||||
const configMap = new Map<string, string>();
|
||||
configContent.split("\n").forEach(line => {
|
||||
line = line.trim();
|
||||
if (line.startsWith("#") || !line.includes("=")) return;
|
||||
|
||||
const [key, value] = line.split("=");
|
||||
const trimmedKey = key.trim();
|
||||
const trimmedValue = value.trim();
|
||||
|
||||
switch (trimmedKey) {
|
||||
case "CANVAS_WIDTH":
|
||||
config.canvasWidth = parseInt(trimmedValue);
|
||||
break;
|
||||
case "CANVAS_HEIGHT":
|
||||
config.canvasHeight = parseInt(trimmedValue);
|
||||
break;
|
||||
case "DEFAULT_COOLDOWN":
|
||||
config.defaultCooldown = parseInt(trimmedValue);
|
||||
break;
|
||||
case "ENABLE_AUTOMATIC_EVENTS":
|
||||
config.enableAutomaticEvents = trimmedValue.toLowerCase() === "true";
|
||||
break;
|
||||
case "EVENT_DURATION_MINUTES":
|
||||
config.eventDurationMinutes = parseInt(trimmedValue);
|
||||
break;
|
||||
case "EVENT_INTERVAL_HOURS":
|
||||
config.eventIntervalHours = parseInt(trimmedValue);
|
||||
break;
|
||||
|
||||
case "AUTO_EXPORT_INTERVAL_SECONDS":
|
||||
config.autoExportIntervalSeconds = parseInt(trimmedValue);
|
||||
break;
|
||||
case "EXPORT_PATH":
|
||||
config.exportPath = trimmedValue;
|
||||
break;
|
||||
case "ENABLE_KEYCLOAK":
|
||||
config.enableKeycloak = trimmedValue.toLowerCase() === "true";
|
||||
break;
|
||||
case "KEYCLOAK_REALM":
|
||||
config.keycloakRealm = trimmedValue;
|
||||
break;
|
||||
case "KEYCLOAK_AUTH_URL":
|
||||
config.keycloakAuthUrl = trimmedValue;
|
||||
break;
|
||||
case "KEYCLOAK_CLIENT_ID":
|
||||
config.keycloakClientId = trimmedValue;
|
||||
break;
|
||||
}
|
||||
configMap.set(key.trim(), value.trim());
|
||||
});
|
||||
|
||||
// Set defaults for missing values
|
||||
|
||||
|
||||
return {
|
||||
canvasWidth: config.canvasWidth || 100,
|
||||
canvasHeight: config.canvasHeight || 100,
|
||||
defaultCooldown: config.defaultCooldown || 5,
|
||||
enableAutomaticEvents: config.enableAutomaticEvents || false,
|
||||
eventDurationMinutes: config.eventDurationMinutes || 30,
|
||||
eventIntervalHours: config.eventIntervalHours || 6,
|
||||
|
||||
autoExportIntervalSeconds: config.autoExportIntervalSeconds || 60,
|
||||
exportPath: config.exportPath || "./exports/",
|
||||
|
||||
enableKeycloak: config.enableKeycloak || false,
|
||||
keycloakRealm: config.keycloakRealm || "rplace",
|
||||
keycloakAuthUrl: config.keycloakAuthUrl || "http://localhost:8080/auth",
|
||||
keycloakClientId: config.keycloakClientId || "rplace-client",
|
||||
canvasWidth: parseInt(configMap.get('CANVAS_WIDTH') || '500'),
|
||||
canvasHeight: parseInt(configMap.get('CANVAS_HEIGHT') || '200'),
|
||||
defaultCooldown: parseInt(configMap.get('DEFAULT_COOLDOWN') || '10'),
|
||||
enableAutomaticEvents: configMap.get('ENABLE_AUTOMATIC_EVENTS') === 'true',
|
||||
eventDurationMinutes: parseInt(configMap.get('EVENT_DURATION_MINUTES') || '30'),
|
||||
eventIntervalHours: parseInt(configMap.get('EVENT_INTERVAL_HOURS') || '1'),
|
||||
autoExportIntervalSeconds: parseInt(configMap.get('AUTO_EXPORT_INTERVAL_SECONDS') || '60'),
|
||||
exportPath: configMap.get('EXPORT_PATH') || './exports/',
|
||||
adminKey: configMap.get('ADMIN_KEY') || 'admin123',
|
||||
enableKeycloak: configMap.get('ENABLE_KEYCLOAK') === 'true',
|
||||
keycloakRealm: configMap.get('KEYCLOAK_REALM') || 'rplace',
|
||||
keycloakAuthUrl: configMap.get('KEYCLOAK_AUTH_URL') || 'http://localhost:8080/auth',
|
||||
keycloakClientId: configMap.get('KEYCLOAK_CLIENT_ID') || 'rplace-client',
|
||||
};
|
||||
} catch (error) {
|
||||
console.error("Error reading config file, using defaults:", error);
|
||||
return {
|
||||
canvasWidth: 100,
|
||||
canvasHeight: 100,
|
||||
defaultCooldown: 5,
|
||||
canvasWidth: 500,
|
||||
canvasHeight: 200,
|
||||
defaultCooldown: 10,
|
||||
enableAutomaticEvents: false,
|
||||
eventDurationMinutes: 30,
|
||||
eventIntervalHours: 6,
|
||||
eventIntervalHours: 1,
|
||||
|
||||
autoExportIntervalSeconds: 60,
|
||||
exportPath: "./exports/",
|
||||
adminKey: 'admin123',
|
||||
|
||||
enableKeycloak: false,
|
||||
keycloakRealm: "rplace",
|
||||
|
||||
Reference in New Issue
Block a user