Skip to content

Commit 12c7818

Browse files
show outdated warning depending on subscription key
Signed-off-by: tobiasKaminsky <[email protected]>
1 parent 3453a7a commit 12c7818

File tree

10 files changed

+1245
-7
lines changed

10 files changed

+1245
-7
lines changed

app/schemas/com.nextcloud.client.database.NextcloudDatabase/94.json

Lines changed: 1210 additions & 0 deletions
Large diffs are not rendered by default.

app/src/androidTest/java/com/owncloud/android/utils/theme/CapabilityUtilsIT.kt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ class CapabilityUtilsIT : AbstractIT() {
3232
assertTrue(test(OwnCloudVersion.nextcloud_20))
3333
}
3434

35-
private fun test(version: OwnCloudVersion): Boolean =
36-
CapabilityUtils.checkOutdatedWarning(targetContext.resources, version, false)
35+
@Test
36+
fun checkOutdatedWarningWithSubscription() {
37+
assertFalse(test(NextcloudVersion.nextcloud_31))
38+
assertFalse(test(NextcloudVersion.nextcloud_30))
39+
40+
assertFalse(test(OwnCloudVersion.nextcloud_20, true))
41+
}
42+
43+
private fun test(version: OwnCloudVersion, hasValidSubscription: Boolean = false): Boolean =
44+
CapabilityUtils.checkOutdatedWarning(targetContext.resources, version, false, hasValidSubscription)
3745
}

app/src/main/java/com/nextcloud/client/database/NextcloudDatabase.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,8 @@ import com.owncloud.android.db.ProviderMeta
8383
AutoMigration(from = 89, to = 90),
8484
AutoMigration(from = 90, to = 91),
8585
AutoMigration(from = 91, to = 92),
86-
AutoMigration(from = 92, to = 93, spec = DatabaseMigrationUtil.ResetCapabilitiesPostMigration::class)
86+
AutoMigration(from = 92, to = 93, spec = DatabaseMigrationUtil.ResetCapabilitiesPostMigration::class),
87+
AutoMigration(from = 93, to = 94, spec = DatabaseMigrationUtil.ResetCapabilitiesPostMigration::class)
8788
],
8889
exportSchema = true
8990
)

app/src/main/java/com/nextcloud/client/database/entity/CapabilityEntity.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,5 +142,7 @@ data class CapabilityEntity(
142142
@ColumnInfo(name = ProviderTableMeta.CAPABILITIES_DEFAULT_PERMISSIONS)
143143
val defaultPermissions: Int?,
144144
@ColumnInfo(name = ProviderTableMeta.CAPABILITIES_USER_STATUS_SUPPORTS_BUSY)
145-
val userStatusSupportsBusy: Int?
145+
val userStatusSupportsBusy: Int?,
146+
@ColumnInfo(name = ProviderTableMeta.CAPABILITIES_HAS_VALID_SUBSCRIPTION)
147+
val hasValidSubscription: Int?
146148
)

app/src/main/java/com/owncloud/android/datamodel/FileDataStorageManager.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2419,6 +2419,8 @@ private ContentValues createContentValues(String accountName, OCCapability capab
24192419
contentValues.put(ProviderTableMeta.CAPABILITIES_NOTES_FOLDER_PATH, capability.getNotesFolderPath());
24202420

24212421
contentValues.put(ProviderTableMeta.CAPABILITIES_DEFAULT_PERMISSIONS, capability.getDefaultPermissions());
2422+
2423+
contentValues.put(ProviderTableMeta.CAPABILITIES_HAS_VALID_SUBSCRIPTION, capability.getHasValidSubscription().getValue());
24222424

24232425
return contentValues;
24242426
}
@@ -2603,6 +2605,7 @@ private OCCapability createCapabilityInstance(Cursor cursor) {
26032605
capability.setNotesFolderPath(getString(cursor, ProviderTableMeta.CAPABILITIES_NOTES_FOLDER_PATH));
26042606

26052607
capability.setDefaultPermissions(getInt(cursor, ProviderTableMeta.CAPABILITIES_DEFAULT_PERMISSIONS));
2608+
capability.setHasValidSubscription(getBoolean(cursor, ProviderTableMeta.CAPABILITIES_HAS_VALID_SUBSCRIPTION));
26062609
}
26072610

26082611
return capability;

app/src/main/java/com/owncloud/android/db/ProviderMeta.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
*/
2424
public class ProviderMeta {
2525
public static final String DB_NAME = "filelist";
26-
public static final int DB_VERSION = 93;
26+
public static final int DB_VERSION = 94;
2727

2828
private ProviderMeta() {
2929
// No instance
@@ -289,6 +289,7 @@ static public class ProviderTableMeta implements BaseColumns {
289289
public static final String CAPABILITIES_FILES_DOWNLOAD_LIMIT_DEFAULT = "files_download_limit_default";
290290
public static final String CAPABILITIES_NOTES_FOLDER_PATH = "notes_folder_path";
291291
public static final String CAPABILITIES_DEFAULT_PERMISSIONS = "default_permissions";
292+
public static final String CAPABILITIES_HAS_VALID_SUBSCRIPTION = "has_valid_subscription";
292293

293294
//Columns of Uploads table
294295
public static final String UPLOADS_LOCAL_PATH = "local_path";

app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,8 @@ class FileDisplayActivity :
431431
CapabilityUtils.checkOutdatedWarning(
432432
getResources(),
433433
user.get().server.version,
434-
capabilities.extendedSupport.isTrue
434+
capabilities.extendedSupport.isTrue,
435+
capabilities.hasValidSubscription.isTrue
435436
)
436437
) {
437438
DisplayUtils.showServerOutdatedSnackbar(this, Snackbar.LENGTH_LONG)

app/src/main/java/com/owncloud/android/utils/theme/CapabilityUtils.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,4 +87,11 @@ public static boolean checkOutdatedWarning(Resources resources,
8787
version.isOlderThan(MainApp.OUTDATED_SERVER_VERSION))
8888
&& !hasExtendedSupport;
8989
}
90+
91+
public static boolean checkOutdatedWarning(Resources resources,
92+
OwnCloudVersion version,
93+
boolean hasExtendedSupport,
94+
boolean hasValidSubscription) {
95+
return checkOutdatedWarning(resources, version, hasExtendedSupport) && !hasValidSubscription;
96+
}
9097
}

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*/
1111
buildscript {
1212
ext {
13-
androidLibraryVersion ="2f798d3f4b0b18458af0c917eb39ad8ca45e5b55"
13+
androidLibraryVersion ="d525104338a94b61df6cf44041081d95ed2955c9"
1414
androidCommonLibraryVersion = "0.29.0"
1515
androidPluginVersion = '8.13.0'
1616
androidxMediaVersion = "1.5.1"

gradle/verification-metadata.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17648,6 +17648,11 @@
1764817648
<sha256 value="b29d8928cba81c13d016ac2e0b7a7d40f1b2e71f8229d65efcffb871a27576de" origin="Generated by Gradle" reason="Artifact is not signed"/>
1764917649
</artifact>
1765017650
</component>
17651+
<component group="com.github.nextcloud" name="android-library" version="d525104338a94b61df6cf44041081d95ed2955c9">
17652+
<artifact name="android-library-d525104338a94b61df6cf44041081d95ed2955c9.pom">
17653+
<sha256 value="54aed157e9fbecdd01361b651f4f25163ffe6589d50c9506110f450e6faa9b01" origin="Generated by Gradle" reason="Artifact is not signed"/>
17654+
</artifact>
17655+
</component>
1765117656
<component group="com.github.nextcloud" name="android-library" version="d5f21fa1ec5b67c564983b0c8a07bc3acd96f695">
1765217657
<artifact name="android-library-d5f21fa1ec5b67c564983b0c8a07bc3acd96f695.aar">
1765317658
<sha256 value="95c86f501a4c1a2e055ba2d1fe68f5ffeed3613492bdaf0594abbae4b21b9227" origin="Generated by Gradle" reason="Artifact is not signed"/>

0 commit comments

Comments
 (0)