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