diff --git a/app/src/main/java/protect/card_locker/DBHelper.java b/app/src/main/java/protect/card_locker/DBHelper.java index 5bce5939d..e4df172d4 100644 --- a/app/src/main/java/protect/card_locker/DBHelper.java +++ b/app/src/main/java/protect/card_locker/DBHelper.java @@ -577,6 +577,22 @@ public class DBHelper extends SQLiteOpenHelper { whereAttrs(LoyaltyCardDbIds.ARCHIVE_STATUS), withArgs(1)); } + public static int getArchivedCardsCount(SQLiteDatabase database, final String groupName) { + Cursor data = database.rawQuery( + "select * from " + LoyaltyCardDbIds.TABLE + " c " + + " LEFT JOIN " + LoyaltyCardDbIdsGroups.TABLE + " cg " + + " ON c." + LoyaltyCardDbIds.ID + " = cg." + LoyaltyCardDbIdsGroups.cardID + + " where " + LoyaltyCardDbIds.ARCHIVE_STATUS + " = 1" + + " AND " + LoyaltyCardDbIdsGroups.groupID + "= ?", + withArgs(groupName) + ); + + int count = data.getCount(); + + data.close(); + return count; + } + public static Cursor getLoyaltyCardCursor(SQLiteDatabase database) { // An empty string will match everything return getLoyaltyCardCursor(database, LoyaltyCardArchiveFilter.All); diff --git a/app/src/main/java/protect/card_locker/GroupCursorAdapter.java b/app/src/main/java/protect/card_locker/GroupCursorAdapter.java index 032e8d544..770e6795c 100644 --- a/app/src/main/java/protect/card_locker/GroupCursorAdapter.java +++ b/app/src/main/java/protect/card_locker/GroupCursorAdapter.java @@ -1,6 +1,7 @@ package protect.card_locker; import android.content.Context; +import android.content.res.Resources; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.view.LayoutInflater; @@ -43,8 +44,18 @@ public class GroupCursorAdapter extends BaseCursorAdapter 0) { + cardCountText = resources.getQuantityString(R.plurals.groupCardCountWithArchived, groupCardCount, groupCardCount, archivedCardCount); + } else { + cardCountText = resources.getQuantityString(R.plurals.groupCardCount, groupCardCount, groupCardCount); + } + + inputHolder.mCardCount.setText(cardCountText); inputHolder.mName.setTextSize(mSettings.getFontSizeMax(mSettings.getMediumFont())); inputHolder.mCardCount.setTextSize(mSettings.getFontSizeMax(mSettings.getSmallFont())); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index f6a77fa0d..08628ceaf 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -286,4 +286,8 @@ Overflow menu No unarchived cards exist Could not find a supported gallery app + + %1$d card (%2$d archived) + %1$d cards (%2$d archived) + \ No newline at end of file