From 6c827bef965e1adb4832a643553aa90a4fcc32a2 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Thu, 9 Jan 2020 10:53:06 +0100 Subject: [PATCH] 14 days no survey for new users --- rowers/middleware.py | 4 +-- rowers/tests/test_newusers.py | 2 +- rowers/tests/testdata/course.kml | 57 ++++++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 rowers/tests/testdata/course.kml diff --git a/rowers/middleware.py b/rowers/middleware.py index 03a7cb2c..42087eeb 100644 --- a/rowers/middleware.py +++ b/rowers/middleware.py @@ -1,4 +1,3 @@ - from django.utils import timezone from rowers.models import Workout, PowerTimeFitnessMetric, Rower, PaidPlan import datetime @@ -111,7 +110,8 @@ class SurveyMiddleWare(object): nexturl = request.path if 'survey' in nexturl: nexturl = '/rowers/list-workouts' - if not r.surveydone: + mustseesurvey = request.user.date_joined <= timezone.now()-datetime.timedelta(days=14) and not r.surveydone + if mustseesurvey: return redirect( '/rowers/survey/?next=%s' % nexturl ) diff --git a/rowers/tests/test_newusers.py b/rowers/tests/test_newusers.py index 29f93712..bdfae610 100644 --- a/rowers/tests/test_newusers.py +++ b/rowers/tests/test_newusers.py @@ -44,7 +44,7 @@ class NewUserRegistrationTest(TestCase): response = self.c.post('/rowers/register/', form_data, follow=True) self.assertRedirects(response, - expected_url='/rowers/survey/?next=/rowers/list-workouts/', + expected_url='/rowers/me/gdpr-optin/?next=/rowers/list-workouts/', status_code=302,target_status_code=200) diff --git a/rowers/tests/testdata/course.kml b/rowers/tests/testdata/course.kml new file mode 100644 index 00000000..56451bb7 --- /dev/null +++ b/rowers/tests/testdata/course.kml @@ -0,0 +1,57 @@ + + + + Courses.kml + + Courses + + CrewNerd Examples - Uherské Hradiště + 1 + + Start + + 1 + + + 17.4893745389,49.109471228,0 17.4911067423,49.1094811918,0 17.4909527884,49.1103411557,0 17.4888918133,49.1102899098,0 17.4893745389,49.109471228,0 17.4893745389,49.109471228,0 + + + + + + Turn + + 1 + + + 17.4836181002,49.0979347215,0 17.489332427,49.0981702202,0 17.4888058511,49.1024117428,0 17.4836162032,49.1030885423,0 17.4836181002,49.0979347215,0 17.4836181002,49.0979347215,0 + + + + + + Turn + + 1 + + + 17.4928830266,49.0866607478,0 17.4973472737,49.0861776065,0 17.4994059869,49.0903340046,0 17.4942740099,49.0899098202,0 17.4928830266,49.0866607478,0 17.4928830266,49.0866607478,0 + + + + + + Finish + + 1 + + + 17.4627698339,49.0723911762,0 17.4630054316,49.071305244,0 17.4643666779,49.0712945663,0 17.4641649495,49.0724875988,0 17.4627698339,49.0723911762,0 17.4627698339,49.0723911762,0 + + + + + + + +