diff options
Diffstat (limited to 'android')
3 files changed, 18 insertions, 14 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/RedeemVoucherDialog.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/RedeemVoucherDialog.kt index 3d49a7afca..04f3c05a11 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/RedeemVoucherDialog.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/RedeemVoucherDialog.kt @@ -41,6 +41,7 @@ import net.mullvad.mullvadvpn.compose.textfield.CustomTextField import net.mullvad.mullvadvpn.compose.util.MAX_VOUCHER_LENGTH import net.mullvad.mullvadvpn.compose.util.vouchersVisualTransformation import net.mullvad.mullvadvpn.constant.VOUCHER_LENGTH +import net.mullvad.mullvadvpn.lib.model.DAYS_PER_VOUCHER_MONTH import net.mullvad.mullvadvpn.lib.model.RedeemVoucherError import net.mullvad.mullvadvpn.lib.theme.AppTheme import net.mullvad.mullvadvpn.lib.theme.Dimens @@ -162,18 +163,18 @@ fun RedeemVoucherDialog( val message = stringResource( R.string.added_to_your_account, - when (days) { - 0 -> { + when { + days == 0 -> { stringResource(R.string.less_than_one_day) } - in 1..59 -> { + days < 2 * DAYS_PER_VOUCHER_MONTH -> { pluralStringResource(id = R.plurals.days, count = days, days) } else -> { pluralStringResource( id = R.plurals.months, - count = days / 30, - days / 30, + count = days / DAYS_PER_VOUCHER_MONTH, + days / DAYS_PER_VOUCHER_MONTH, ) } }, diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt index 11b41dd27a..9611897e76 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/extensions/ResourcesExtensions.kt @@ -2,20 +2,20 @@ package net.mullvad.mullvadvpn.compose.extensions import android.content.res.Resources import net.mullvad.mullvadvpn.R -import org.joda.time.DateTime import org.joda.time.Duration -import org.joda.time.Period + +private const val DAYS_IN_STANDARD_YEAR = 365 fun Resources.getExpiryQuantityString(accountExpiry: Duration): String { - val expiryPeriod = Period(DateTime.now(), accountExpiry) + val days = accountExpiry.standardDays.toInt() + val years = (accountExpiry.standardDays / DAYS_IN_STANDARD_YEAR).toInt() + return if (accountExpiry.millis <= 0) { getString(R.string.out_of_time) - } else if (expiryPeriod.years > 0) { - getRemainingText(this, R.plurals.years_left, expiryPeriod.years) - } else if (expiryPeriod.months >= 3) { - getRemainingText(this, R.plurals.months_left, expiryPeriod.months) - } else if (expiryPeriod.months > 0 || expiryPeriod.days >= 1) { - getRemainingText(this, R.plurals.days_left, expiryPeriod.days) + } else if (years > 1) { + getRemainingText(this, R.plurals.years_left, years) + } else if (days >= 1) { + getRemainingText(this, R.plurals.days_left, days) } else { getString(R.string.less_than_a_day_left) } diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/VoucherConstant.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/VoucherConstant.kt new file mode 100644 index 0000000000..a27efa6bf3 --- /dev/null +++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/VoucherConstant.kt @@ -0,0 +1,3 @@ +package net.mullvad.mullvadvpn.lib.model + +const val DAYS_PER_VOUCHER_MONTH = 30 |
