From 6f52890313a5b60be641cc17231bc428f75cfe9f Mon Sep 17 00:00:00 2001 From: Kari Pahula Date: Thu, 3 Oct 2024 09:26:29 +0300 Subject: [PATCH 1/2] Allow credit card updates based on subscription state --- apps/kort/src/Components/Subscription.purs | 4 ++-- packages/components/src/Api/Subscription.purs | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/kort/src/Components/Subscription.purs b/apps/kort/src/Components/Subscription.purs index 74bb46709..cacc6f201 100644 --- a/apps/kort/src/Components/Subscription.purs +++ b/apps/kort/src/Components/Subscription.purs @@ -8,7 +8,7 @@ import Data.Maybe (Maybe(..)) import Data.Nullable (toMaybe) import Data.Tuple (Tuple(..)) import KSF.Api.Subscription (toString) as Subsno -import KSF.Api.Subscription (isSubscriptionExpired) +import KSF.Api.Subscription (isSubscriptionExpired, isSubscriptionRenewable) import KSF.DescriptionList as DescriptionList import KSF.Grid as Grid import KSF.User as User @@ -79,5 +79,5 @@ render self@{ props: { now, subscription: sub } } informationColumn = , id: "subscription-" <> subsno } where - expired = isSubscriptionExpired sub now + expired = isSubscriptionExpired sub now && not (isSubscriptionRenewable sub) subsno = Subsno.toString sub.subsno diff --git a/packages/components/src/Api/Subscription.purs b/packages/components/src/Api/Subscription.purs index e3f301347..372a6155c 100644 --- a/packages/components/src/Api/Subscription.purs +++ b/packages/components/src/Api/Subscription.purs @@ -6,6 +6,7 @@ import Bottega.Models.PaymentMethod (PaymentMethodId) import Control.Alt ((<|>)) import Data.Date (Date) import Data.Either (Either(..)) +import Data.Foldable (elem) import Data.Generic.Rep (class Generic) import Data.Int as Int import Data.JSDate (JSDate, toDate) @@ -146,3 +147,12 @@ isSubscriptionExpired subs today = let end = toDate =<< toMaybe subs.dates.end suspend = toDate =<< toMaybe subs.dates.suspend in maybe false (_ < today) end || maybe false (_ <= today) suspend + +-- Can the payment card be changed +isSubscriptionRenewable :: Subscription -> Boolean +isSubscriptionRenewable subs = + (\(SubscriptionState x) -> x) subs.state `elem` + [ "Active" + , "Paused" + , "RestartedAfterLatePayment" + ] From 8f9e03a03d89d6db2fff02c5e9cc39f38095cb48 Mon Sep 17 00:00:00 2001 From: Christoffer Holmberg Date: Thu, 3 Oct 2024 09:48:35 +0300 Subject: [PATCH 2/2] use raw.github instead of prelude.dhall-lang.org Some fastly issues it seems --- ci/Prelude.dhall | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/Prelude.dhall b/ci/Prelude.dhall index 51fea288d..4ba573e02 100644 --- a/ci/Prelude.dhall +++ b/ci/Prelude.dhall @@ -1 +1 @@ -https://prelude.dhall-lang.org/v18.0.0/package.dhall sha256:2086c6a2e7ce8ee371858036ab60d24d045969defadb4bc9d87639921ec2e028 \ No newline at end of file +https://raw.githubusercontent.com/dhall-lang/dhall-lang/v18.0.0/Prelude/package.dhall sha256:2086c6a2e7ce8ee371858036ab60d24d045969defadb4bc9d87639921ec2e028