From 3a4684f3f13b971e563b8fa0f641862777aefd85 Mon Sep 17 00:00:00 2001 From: Unbewohnte <65883674+Unbewohnte@users.noreply.github.com> Date: Thu, 6 May 2021 10:38:56 +0300 Subject: [PATCH] Wrong path... --- settings.go | 124 ---------------------------------------------------- 1 file changed, 124 deletions(-) delete mode 100644 settings.go diff --git a/settings.go b/settings.go deleted file mode 100644 index 09b56ec..0000000 --- a/settings.go +++ /dev/null @@ -1,124 +0,0 @@ -package settings - -import ( - "encoding/json" - "errors" - "fmt" - "os" - - "github.com/Unbewohnte/OBM/logger" - "github.com/Unbewohnte/OBM/util" -) - -const ( - settingsFilename string = "settings.json" -) - -// checks if the settings.json exists in current directory -func DoesExist() (bool, error) { - files, err := os.ReadDir(".") - if err != nil { - return false, errors.New(fmt.Sprintf("Unable to read current directory %s", err)) - } - - for _, file := range files { - if !file.IsDir() && file.Name() == settingsFilename { - return true, nil - } - } - - return false, nil -} - -// creates "settings.json" in current directory -func Create() error { - exists, err := DoesExist() - if err != nil { - return err - } - if exists { - return nil - } - - file, err := os.Create(settingsFilename) - if err != nil { - return errors.New(fmt.Sprintf("Unable to create settings file : %s", err)) - } - - // marshaling default settings - settingsJson, err := json.MarshalIndent(Settings{ - OsuDir: "", - BackgroundReplacement: backgroundReplacement{ - Enabled: true, - ReplacementImagePath: "", - }, - BackgroundRetrievement: backgroundRetrievement{ - Enabled: false, - RetrievementPath: "", - }, - BackgroundRemovement: backgroundRemovement{ - Enabled: false, - }, - CreateBlackBGImage: backgroundCreatement{ - Enabled: true, - Width: 1920, - Height: 1080, - }, - Workers: 100, - }, "", " ") - if err != nil { - return errors.New(fmt.Sprintf("Could not marshal settings into file : %s", err)) - } - - file.Write(settingsJson) - file.Close() - - return nil -} - -// unmarshalls settings.json into struct and processes the edge-cases -func Get() Settings { - settingsFileContents, err := os.ReadFile(settingsFilename) - if err != nil { - logger.LogError(true, fmt.Sprintf("Could not read settings file : %s", err)) - } - - var settings Settings - err = json.Unmarshal(settingsFileContents, &settings) - if err != nil { - logger.LogError(true, fmt.Sprintf("Could not unmarshal json file : %s", err)) - } - - // if all features are disabled - if !settings.BackgroundReplacement.Enabled && !settings.BackgroundRetrievement.Enabled { - logger.LogInfo("No features enabled. Exiting...") - os.Exit(0) - } - - // checking for edge cases or mistakes made in the settings file, - // enabled and disabled fields - if settings.BackgroundReplacement.Enabled { - if settings.BackgroundReplacement.ReplacementImagePath == "" || settings.BackgroundReplacement.ReplacementImagePath == " " { - logger.LogError(true, "`replacementImagePath` is not specified !") - } else if !util.IsImage(settings.BackgroundReplacement.ReplacementImagePath) { - logger.LogError(true, "`replacementImagePath` is pointing to a non-image file !`") - } - } else { - settings.BackgroundReplacement.ReplacementImagePath = "" - } - - if settings.BackgroundRetrievement.Enabled { - if settings.BackgroundRetrievement.RetrievementPath == "" || settings.BackgroundRetrievement.RetrievementPath == " " { - logger.LogError(true, "`retrievementPath` is not specified !") - } - } else { - settings.BackgroundRetrievement.RetrievementPath = "" - } - - if settings.Workers <= 0 { - settings.Workers = 1 - logger.LogWarning("`workers` is set to 0 or less. Replaced with 1") - } - - return settings -}