diff --git a/routes/settings.go b/routes/settings.go index 74e2c37..b99ae2d 100644 --- a/routes/settings.go +++ b/routes/settings.go @@ -181,6 +181,10 @@ func (h *SettingsHandler) actionUpdateUser(w http.ResponseWriter, r *http.Reques return http.StatusBadRequest, "", "invalid parameters" } + if user.Email == "" && user.HasActiveSubscription() { + return http.StatusBadRequest, "", "cannot unset email while subscription is active" + } + user.Email = payload.Email user.Location = payload.Location user.ReportsWeekly = payload.ReportsWeekly diff --git a/routes/subscription.go b/routes/subscription.go index f694713..4ef41b5 100644 --- a/routes/subscription.go +++ b/routes/subscription.go @@ -209,8 +209,6 @@ func (h *SubscriptionHandler) handleSubscriptionEvent(subscription *stripe.Subsc until := models.CustomTime(time.Unix(subscription.CurrentPeriodEnd, 0)) if user.SubscribedUntil == nil || !user.SubscribedUntil.T().Equal(until.T()) { - println(user.SubscribedUntil.T().String()) - println(until.T().String()) user.SubscribedUntil = &until logbuch.Info("user %s got active subscription %s until %v", user.ID, subscription.ID, user.SubscribedUntil) } diff --git a/views/settings.tpl.html b/views/settings.tpl.html index 6f3102b..bd5598b 100644 --- a/views/settings.tpl.html +++ b/views/settings.tpl.html @@ -79,13 +79,20 @@