mirror of
https://github.com/szkolny-eu/szkolny-android.git
synced 2024-11-24 10:54:36 -06:00
Update Profile, remove older app version check
This commit is contained in:
parent
3827aeb9b4
commit
1bdee7857c
@ -514,7 +514,7 @@ public class App extends androidx.multidex.MultiDexApplication {
|
||||
}
|
||||
}
|
||||
|
||||
if (appConfig.lastAppVersion > BuildConfig.VERSION_CODE) {
|
||||
/*if (appConfig.lastAppVersion > BuildConfig.VERSION_CODE) {
|
||||
BootReceiver br = new BootReceiver();
|
||||
Intent i = new Intent();
|
||||
//i.putExtra("UserChecked", true);
|
||||
@ -522,7 +522,7 @@ public class App extends androidx.multidex.MultiDexApplication {
|
||||
Toast.makeText(mContext, R.string.warning_older_version_running, Toast.LENGTH_LONG).show();
|
||||
//Toast.makeText(mContext, "Zaktualizuj aplikację.", Toast.LENGTH_LONG).show();
|
||||
//System.exit(0);
|
||||
}
|
||||
}*/
|
||||
|
||||
if (appConfig == null) {
|
||||
appConfig = new AppConfig(this);
|
||||
|
@ -6,21 +6,14 @@ import android.content.Context
|
||||
import android.content.pm.PackageManager
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
import androidx.core.app.ActivityCompat
|
||||
import com.google.gson.JsonArray
|
||||
import com.google.gson.JsonNull
|
||||
import com.google.gson.JsonObject
|
||||
import im.wangchao.mhttp.Response
|
||||
import im.wangchao.mhttp.callback.JsonCallbackHandler
|
||||
import im.wangchao.mhttp.callback.TextCallbackHandler
|
||||
import im.wangchao.mhttp.internal.exception.ResponseFailException
|
||||
import pl.szczodrzynski.edziennik.datamodels.Profile
|
||||
import pl.szczodrzynski.edziennik.datamodels.Teacher
|
||||
import pl.szczodrzynski.navlib.R
|
||||
import pl.szczodrzynski.navlib.crc16
|
||||
import pl.szczodrzynski.navlib.getColorFromRes
|
||||
import kotlin.contracts.contract
|
||||
|
||||
|
||||
fun List<Teacher>.byId(id: Long) = firstOrNull { it.id == id }
|
||||
fun List<Teacher>.byNameFirstLast(nameFirstLast: String) = firstOrNull { it.name + " " + it.surname == nameFirstLast }
|
||||
@ -28,11 +21,19 @@ fun List<Teacher>.byNameLastFirst(nameLastFirst: String) = firstOrNull { it.surn
|
||||
fun List<Teacher>.byNameFDotLast(nameFDotLast: String) = firstOrNull { it.name + "." + it.surname == nameFDotLast }
|
||||
fun List<Teacher>.byNameFDotSpaceLast(nameFDotSpaceLast: String) = firstOrNull { it.name + ". " + it.surname == nameFDotSpaceLast }
|
||||
|
||||
fun JsonObject.getString(key: String): String? = get(key).let { if (it.isJsonNull) null else it.asString }
|
||||
fun JsonObject.getInt(key: String): Int? = get(key).let { if (it.isJsonNull) null else it.asInt }
|
||||
fun JsonObject.getLong(key: String): Long? = get(key).let { if (it.isJsonNull) null else it.asLong }
|
||||
fun JsonObject.getJsonObject(key: String): JsonObject? = get(key).let { if (it.isJsonNull) null else it.asJsonObject }
|
||||
fun JsonObject.getJsonArray(key: String): JsonArray? = get(key).let { if (it.isJsonNull) null else it.asJsonArray }
|
||||
fun JsonObject.getBoolean(key: String): Boolean? = get(key)?.let { if (it.isJsonNull) null else it.asBoolean }
|
||||
fun JsonObject.getString(key: String): String? = get(key)?.let { if (it.isJsonNull) null else it.asString }
|
||||
fun JsonObject.getInt(key: String): Int? = get(key)?.let { if (it.isJsonNull) null else it.asInt }
|
||||
fun JsonObject.getLong(key: String): Long? = get(key)?.let { if (it.isJsonNull) null else it.asLong }
|
||||
fun JsonObject.getJsonObject(key: String): JsonObject? = get(key)?.let { if (it.isJsonNull) null else it.asJsonObject }
|
||||
fun JsonObject.getJsonArray(key: String): JsonArray? = get(key)?.let { if (it.isJsonNull) null else it.asJsonArray }
|
||||
|
||||
fun JsonObject.getBoolean(key: String, defaultValue: Boolean): Boolean = get(key)?.let { if (it.isJsonNull) defaultValue else it.asBoolean } ?: defaultValue
|
||||
fun JsonObject.getString(key: String, defaultValue: String): String = get(key)?.let { if (it.isJsonNull) defaultValue else it.asString } ?: defaultValue
|
||||
fun JsonObject.getInt(key: String, defaultValue: Int): Int = get(key)?.let { if (it.isJsonNull) defaultValue else it.asInt } ?: defaultValue
|
||||
fun JsonObject.getLong(key: String, defaultValue: Long): Long = get(key)?.let { if (it.isJsonNull) defaultValue else it.asLong } ?: defaultValue
|
||||
fun JsonObject.getJsonObject(key: String, defaultValue: JsonObject): JsonObject = get(key)?.let { if (it.isJsonNull) defaultValue else it.asJsonObject } ?: defaultValue
|
||||
fun JsonObject.getJsonArray(key: String, defaultValue: JsonArray): JsonArray = get(key)?.let { if (it.isJsonNull) defaultValue else it.asJsonArray } ?: defaultValue
|
||||
|
||||
fun CharSequence?.isNotNullNorEmpty(): Boolean {
|
||||
return this != null && this.isNotEmpty()
|
||||
@ -53,6 +54,26 @@ fun Bundle?.getString(key: String, defaultValue: String): String {
|
||||
return this?.getString(key, defaultValue) ?: defaultValue
|
||||
}
|
||||
|
||||
fun changeStringCase(s: String): String {
|
||||
val delimiters = " '-/"
|
||||
val sb = StringBuilder()
|
||||
var capNext = true
|
||||
for (ch in s.toCharArray()) {
|
||||
var c = ch
|
||||
c = if (capNext)
|
||||
Character.toUpperCase(c)
|
||||
else
|
||||
Character.toLowerCase(c)
|
||||
sb.append(c)
|
||||
capNext = delimiters.indexOf(c) >= 0
|
||||
}
|
||||
return sb.toString()
|
||||
}
|
||||
|
||||
fun buildFullName(firstName: String?, lastName: String?): String {
|
||||
return changeStringCase("$firstName $lastName").trim()
|
||||
}
|
||||
|
||||
fun colorFromName(context: Context, name: String?): Int {
|
||||
var crc = crc16(name ?: "")
|
||||
crc = (crc and 0xff) or (crc shr 8)
|
||||
|
@ -47,11 +47,26 @@ open class Profile : IDrawerProfile {
|
||||
var empty = true
|
||||
var archived = false
|
||||
|
||||
/**
|
||||
* The name of the student.
|
||||
* This doesn't change, no matter if it's a parent or student account.
|
||||
*/
|
||||
var studentNameLong: String? = null
|
||||
var studentNameShort: String? = null
|
||||
/**
|
||||
* The student's number in the class register.
|
||||
*/
|
||||
var studentNumber = -1
|
||||
var studentData: JsonObject? = null
|
||||
|
||||
/**
|
||||
* A full name of the account owner.
|
||||
* If null, then it's a student account.
|
||||
* If not null, then it's a parent account with this name.
|
||||
*/
|
||||
@Ignore
|
||||
var accountNameLong: String? = null
|
||||
|
||||
var registration = REGISTRATION_UNSPECIFIED
|
||||
|
||||
var gradeColorMode = COLOR_MODE_WEIGHTED
|
||||
@ -61,7 +76,7 @@ open class Profile : IDrawerProfile {
|
||||
|
||||
var currentSemester = 1
|
||||
|
||||
var attendancePercentage: Float = 0.toFloat()
|
||||
var attendancePercentage: Float = 0.0f
|
||||
|
||||
var dateSemester1Start: Date? = null
|
||||
var dateSemester2Start: Date? = null
|
||||
@ -192,6 +207,12 @@ open class Profile : IDrawerProfile {
|
||||
getImageHolder(imageView.context).applyTo(imageView)
|
||||
}
|
||||
|
||||
fun hasStudentData(key: String): Boolean {
|
||||
if (studentData == null)
|
||||
return false
|
||||
return studentData?.has(key) ?: false
|
||||
}
|
||||
|
||||
fun getStudentData(key: String, defaultValue: String?): String? {
|
||||
if (studentData == null)
|
||||
return defaultValue
|
||||
@ -229,7 +250,7 @@ open class Profile : IDrawerProfile {
|
||||
return element?.asBoolean ?: defaultValue
|
||||
}
|
||||
|
||||
fun putStudentData(key: String, value: String) {
|
||||
fun putStudentData(key: String, value: String?) {
|
||||
if (studentData == null)
|
||||
studentData = JsonObject()
|
||||
studentData!!.addProperty(key, value)
|
||||
|
Loading…
Reference in New Issue
Block a user