diff options
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); + } + +} |
