diff options
| author | Roman / Nea <roman.graef@gmail.com> | 2022-05-31 20:53:26 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-31 20:53:26 +0200 |
| commit | dfdc2d9519556dfec528ab9d1732cdf32aab0639 (patch) | |
| tree | 6f046db7b581f40b2deedd202ceaf98ba9ec2567 /src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java | |
| parent | a6546a1abe954b394c40be58d73d6fb03d93709e (diff) | |
| download | notenoughupdates-dfdc2d9519556dfec528ab9d1732cdf32aab0639.tar.gz notenoughupdates-dfdc2d9519556dfec528ab9d1732cdf32aab0639.tar.bz2 notenoughupdates-dfdc2d9519556dfec528ab9d1732cdf32aab0639.zip | |
Move repository related configuration to GUI. (#151)
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java')
| -rw-r--r-- | src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java new file mode 100644 index 00000000..6121e189 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java @@ -0,0 +1,87 @@ +package io.github.moulberry.notenoughupdates.options.seperateSections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigAccordionId; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigEditorAccordion; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigEditorBoolean; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigEditorButton; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigEditorText; +import io.github.moulberry.notenoughupdates.core.config.annotations.ConfigOption; + +public class ApiData { + @Expose + @ConfigOption( + name = "Api Key", + desc = "Hypixel api key\nYou can run §a/api new§r to autofill this value." + ) + @ConfigEditorText + public String apiKey = ""; + + @ConfigEditorAccordion(id = 0) + @ConfigOption(name = "Repository", desc = "") + public boolean repository = false; + + @Expose + @ConfigOption(name = "Automatically Update Repository", desc = "Update the repository on every startup") + @ConfigEditorBoolean() + @ConfigAccordionId(id = 0) + public boolean autoupdate = true; + + @ConfigAccordionId(id = 0) + @ConfigOption(name = "Update Repository now", desc = "Refresh your repository") + @ConfigEditorButton(runnableId = 22, buttonText = "Update") + public int updateRepositoryButton = 0; + + @ConfigEditorAccordion(id = 1) + @ConfigAccordionId(id = 0) + @ConfigOption(name = "Repository Location", desc = "") + public boolean repositoryLocation = false; + + @ConfigAccordionId(id = 1) + @ConfigOption(name = "Use default repository", desc = "The latest, most up to date item list for the official NEU releases.") + @ConfigEditorButton(runnableId = 23, buttonText = "Reset") + public int setRepositoryToDefaultButton = 0; + + @ConfigAccordionId(id = 1) + @ConfigOption(name = "Use dangerous Repository", desc = "The latest, most up to date item list for the NEU prereleases.\n§4Use §lonly§r§4 with the prereleases.") + @ConfigEditorButton(runnableId = 24, buttonText = "Use") + public int setRepositoryToDangerousButton = 0; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption(name = "Repository User", desc = "Repository User") + @ConfigEditorText + public String repoUser = "NotEnoughUpdates"; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption(name = "Repository Name", desc = "Repository Name") + @ConfigEditorText + public String repoName = "NotEnoughUpdates-REPO"; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption(name = "Repository Branch", desc = "Repository Branch") + @ConfigEditorText + public String repoBranch = "master"; + + @Expose + @ConfigAccordionId(id = 0) + @ConfigOption(name = "Edit Mode", desc = "Enables you to edit items in the item list.\n§4Recommended for repository maintainers only.\n§4§lRemember: §rTurn off auto update as well") + @ConfigEditorBoolean + public boolean repositoryEditing = false; + + @Expose + @ConfigOption(name = "Lowestbin API", desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing\n§fDefault: §amoulberry.codes") + @ConfigEditorText + public String moulberryCodesApi = "moulberry.codes"; + + public String getCommitApiUrl() { + return String.format("https://api.github.com/repos/%s/%s/commits/%s", repoUser, repoName, repoBranch); + } + + public String getDownloadUrl(String commitId) { + return String.format("https://github.com/%s/%s/archive/%s.zip", repoUser, repoName, commitId); + } + +} |
