Private
Public Access
1
0

ftp set stuff

This commit is contained in:
Sander Roosendaal
2022-12-16 19:42:44 +01:00
parent 57fe6413e6
commit 00e3807062
4 changed files with 30 additions and 1 deletions

View File

@@ -33,7 +33,8 @@ allowed_paths = [
'/rowers/me/gdpr-optin-confirm' '/rowers/me/gdpr-optin-confirm'
'/rowers/exportallworkouts/', '/rowers/exportallworkouts/',
'/rowers/exportallworkouts', '/rowers/exportallworkouts',
'/rowers/survey/' '/rowers/survey/',
'/rowers/me/prefs/'
] ]
@@ -58,6 +59,26 @@ class SurveyMiddleWare(object):
return response return response
class FTPMiddleWare(object):
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
if request.user.is_authenticated and request.path not in allowed_paths:
r = getrower(request.user)
nexturl = request.path
if 'ftp' in nexturl: # pragma: no cover
nexturl = '/rowers/me/prefs/'
mustsetftp = not r.ftpset
if mustsetftp: # pragma: no cover
return redirect(
'/rowers/me/prefs/?next=%s' % nexturl
)
response = self.get_response(request)
return response
class GDPRMiddleWare(object): class GDPRMiddleWare(object):
def __init__(self, get_response): def __init__(self, get_response):

View File

@@ -919,6 +919,7 @@ class Rower(models.Model):
# Privacy Data # Privacy Data
gdproptin = models.BooleanField(default=False) gdproptin = models.BooleanField(default=False)
gdproptindate = models.DateTimeField(blank=True, null=True) gdproptindate = models.DateTimeField(blank=True, null=True)
ftpset = models.BooleanField(default=False)
surveydone = models.BooleanField(default=False) surveydone = models.BooleanField(default=False)
surveydonedate = models.DateTimeField(blank=True, null=True) surveydonedate = models.DateTimeField(blank=True, null=True)

View File

@@ -575,6 +575,12 @@ def rower_simpleprefs_view(request, userid=0):
if form.is_valid(): if form.is_valid():
form.save(commit=True) form.save(commit=True)
messages.info(request,'FTP and OTW FTP saved') messages.info(request,'FTP and OTW FTP saved')
if not r.ftpset:
r.ftpset = True
r.save()
nexturl = request.GET.get('next', '/rowers/list-workouts/')
return HttpResponseRedirect(nexturl)
return render(request, 'rower_simplepreferences.html', return render(request, 'rower_simplepreferences.html',
{ {

View File

@@ -107,6 +107,7 @@ MIDDLEWARE = [
'rowers.middleware.GDPRMiddleWare', 'rowers.middleware.GDPRMiddleWare',
# 'rowers.middleware.PowerTimeFitnessMetricMiddleWare', # 'rowers.middleware.PowerTimeFitnessMetricMiddleWare',
'rowers.middleware.RowerPlanMiddleWare', 'rowers.middleware.RowerPlanMiddleWare',
'rowers.middleware.FTPMiddleWare',
] ]
ROOT_URLCONF = 'rowsandall_app.urls' ROOT_URLCONF = 'rowsandall_app.urls'