diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 2c7e034..6e5389e 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -7,14 +7,13 @@ - diff --git a/.idea/misc.xml b/.idea/misc.xml index f7be5bf..d55b0cb 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -7,7 +7,7 @@ - + diff --git a/app/build.gradle b/app/build.gradle index ffb4d9b..66039b3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "org.wildstang.wildrank.android" minSdkVersion 21 targetSdkVersion 30 - versionCode 5 - versionName "rc4" + versionCode 6 + versionName "rc5" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } diff --git a/app/src/main/java/org/wildstang/wildrank/android/MainActivity.kt b/app/src/main/java/org/wildstang/wildrank/android/MainActivity.kt index beb436a..0c73dc6 100644 --- a/app/src/main/java/org/wildstang/wildrank/android/MainActivity.kt +++ b/app/src/main/java/org/wildstang/wildrank/android/MainActivity.kt @@ -275,6 +275,9 @@ class MainActivity : AppCompatActivity() { if (page.contains(relStr)) { var latest = page.substring(page.indexOf(relStr) + relStr.length) latest = latest.substring(0, latest.indexOf("\"")) + if (latest.contains("&")) { + latest = latest.substring(0, latest.indexOf("&")) + } println("[FETCH] Found release $latest") useRelease(latest) return @@ -299,11 +302,14 @@ class MainActivity : AppCompatActivity() { } // if the desired release does not exist - if (!isReleaseCached(release) || release == "master") { + if ((!isReleaseCached(release) && release != "master-cached") || release == "master") { // download it fetchRelease(release) } else { + if (release == "master-cached") { + release = "master" + } // otherwise, start app with release startRelease(release) } diff --git a/app/src/main/java/org/wildstang/wildrank/android/POSTServer.kt b/app/src/main/java/org/wildstang/wildrank/android/POSTServer.kt index 67d298f..e806614 100644 --- a/app/src/main/java/org/wildstang/wildrank/android/POSTServer.kt +++ b/app/src/main/java/org/wildstang/wildrank/android/POSTServer.kt @@ -38,7 +38,7 @@ class POSTServer(directory: String, apiKey: String) : NanoHTTPD(8080) { println("Request: $request") // get upload directory - val uploadDir = File(directory, "uploads") + var uploadDir = File(directory, "uploads") uploadDir.mkdirs() // save posted files to /uploads @@ -67,6 +67,12 @@ class POSTServer(directory: String, apiKey: String) : NanoHTTPD(8080) { file += ".json" } + // handle incoming configs by backing up + if (file.endsWith("config.json")) { + uploadDir = File(directory, "config") + File(uploadDir, file).renameTo(File(uploadDir, "$file.bkp")) + } + // write JSON to file val writer = FileWriter(File(uploadDir, file)) writer.write(content) diff --git a/app/src/main/java/org/wildstang/wildrank/android/ReleaseDialog.kt b/app/src/main/java/org/wildstang/wildrank/android/ReleaseDialog.kt index bd5ea6f..1ada1b4 100644 --- a/app/src/main/java/org/wildstang/wildrank/android/ReleaseDialog.kt +++ b/app/src/main/java/org/wildstang/wildrank/android/ReleaseDialog.kt @@ -14,7 +14,10 @@ class ReleaseDialog : DialogFragment() { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { return activity?.let { val mainActivity = (activity as MainActivity) - val lastUsed = mainActivity.getLastRelease() + var lastUsed = mainActivity.getLastRelease() + if (lastUsed == "master") { + lastUsed = "master-cached" + } // create base list of releases val releases = ArrayList() @@ -48,7 +51,7 @@ class ReleaseDialog : DialogFragment() { 1 -> "latest" 2 -> "master" releases.size - 1 -> "manual" - else -> releases[which - 3].substring(8) + else -> releases[which].substring(8) } if (release != "manual") { diff --git a/build.gradle b/build.gradle index 9fde24e..2059557 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.2.1' + classpath 'com.android.tools.build:gradle:7.0.3' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 9ca8f33..599a548 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip