// TagAlly Engine — wo die Einstellungen liegen.
//
// Im ausgelieferten Paket liegt der Code in einem Unterordner, damit der
// entpackte Ordner nur die Startdatei und die Einstellungen zeigt:
//
//   tagally-engine/
//     START TagAlly (macOS).command
//     START TagAlly (Windows).bat
//     config.json          ← eine Ebene ÜBER dem Code
//     programm/            ← hier liegt dieses Modul
//
// In der Entwicklungskopie liegt alles flach in engine/. Deshalb wird beides
// unterstützt: erst eine Ebene höher suchen, dann daneben.

const fs = require("fs");
const path = require("path");

const OBEN = path.join(__dirname, "..", "config.json");
const DANEBEN = path.join(__dirname, "config.json");

// Auch als Schreibziel gedacht: Existiert noch keine Datei, wird die Fassung
// neben dem Code angelegt — die flache Anordnung ist der Ausgangszustand.
function configPath() {
  if (fs.existsSync(OBEN)) return OBEN;
  return DANEBEN;
}

function loadConfig() {
  try {
    return JSON.parse(fs.readFileSync(configPath(), "utf8"));
  } catch (e) {
    return {};
  }
}

module.exports = { configPath, loadConfig };
