Private
Public Access
1
0

team manager can edit user

This commit is contained in:
Sander Roosendaal
2018-03-04 16:18:58 +01:00
parent fd99872160
commit e517767641
4 changed files with 48 additions and 23 deletions

View File

@@ -10866,8 +10866,16 @@ def rower_exportsettings_view(request):
# Page where user can set his details
# Add email address to form so user can change his email address
@login_required()
def rower_edit_view(request,message=""):
r = getrower(request.user)
def rower_edit_view(request,rowerid=0,message=""):
if rowerid==0:
r = getrower(request.user)
else:
r = Rower.objects.get(id=rowerid)
if not checkaccessuser(request.user,r):
raise PermissionDenied("You have no access to these user settings")
rowerid = r.id
if request.method == 'POST' and "ut2" in request.POST:
form = RowerForm(request.POST)
if form.is_valid():
@@ -10881,7 +10889,6 @@ def rower_edit_view(request,message=""):
an = cd['an']
rest = cd['rest']
try:
r = getrower(request.user)
r.max = max(min(hrmax,250),10)
r.ut2 = max(min(ut2,250),10)
r.ut1 = max(min(ut1,250),10)
@@ -10896,7 +10903,7 @@ def rower_edit_view(request,message=""):
powerform = RowerPowerForm(instance=r)
powerzonesform = RowerPowerZonesForm(instance=r)
accountform = AccountRowerForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
return render(request, 'rower_form.html',
{'form':form,
'powerzonesform':powerzonesform,
@@ -10916,7 +10923,7 @@ def rower_edit_view(request,message=""):
#form = RowerForm(instance=r)
powerform = RowerPowerForm(instance=r)
powerzonesform = RowerPowerZonesForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
accountform = AccountRowerForm(instance=r)
return render(request, 'rower_form.html',
{'form':form,
@@ -10938,7 +10945,6 @@ def rower_edit_view(request,message=""):
ftp = cd['ftp']
otwslack = cd['otwslack']
try:
r = getrower(request.user)
powerfrac = 100*np.array([r.pw_ut2,
r.pw_ut1,
r.pw_at,
@@ -10954,7 +10960,10 @@ def rower_edit_view(request,message=""):
r.save()
message = "FTP and/or OTW slack values changed."
messages.info(request,message)
url = reverse(rower_edit_view)
url = reverse(rower_edit_view,
kwargs = {
'rowerid':r.id,
})
response = HttpResponseRedirect(url)
except Rower.DoesNotExist:
message = "Funny. This user doesn't exist."
@@ -10966,7 +10975,7 @@ def rower_edit_view(request,message=""):
form = RowerForm(instance=r)
#powerform = RowerPowerForm(instance=r)
powerzonesform = RowerPowerZonesForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
accountform = AccountRowerForm(instance=r)
return render(request, 'rower_form.html',
{'form':form,
@@ -10996,7 +11005,6 @@ def rower_edit_view(request,message=""):
anname = cd['anname']
powerzones = [ut3name,ut2name,ut1name,atname,trname,anname]
try:
r = getrower(request.user)
r.pw_ut2 = pw_ut2
r.pw_ut1 = pw_ut1
r.pw_at = pw_at
@@ -11008,7 +11016,7 @@ def rower_edit_view(request,message=""):
messages.info(request,successmessage)
form = RowerForm(instance=r)
accountform = AccountRowerForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
powerform = RowerPowerForm(instance=r)
powerzonesform = RowerPowerZonesForm(instance=r)
return render(request, 'rower_form.html',
@@ -11030,7 +11038,7 @@ def rower_edit_view(request,message=""):
form = RowerForm(instance=r)
powerform = RowerPowerForm(instance=r)
accountform = AccountRowerForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
#powerzonesform = RowerPowerZonesForm(instance=r)
message = HttpResponse("invalid form")
return render(request, 'rower_form.html',
@@ -11044,7 +11052,7 @@ def rower_edit_view(request,message=""):
})
elif request.method == 'POST' and "weightcategory" in request.POST:
accountform = AccountRowerForm(request.POST)
userform = UserForm(request.POST,instance=request.user)
userform = UserForm(request.POST,instance=r.user)
if accountform.is_valid() and userform.is_valid():
# process
cd = accountform.cleaned_data
@@ -11059,7 +11067,7 @@ def rower_edit_view(request,message=""):
showfavoritechartnotes = cd['showfavoritechartnotes']
getemailnotifications = cd['getemailnotifications']
defaulttimezone=cd['defaulttimezone']
u = request.user
u = r.user
if len(first_name):
u.first_name = first_name
u.last_name = last_name
@@ -11068,7 +11076,6 @@ def rower_edit_view(request,message=""):
u.save()
r = getrower(u)
r.defaulttimezone=defaulttimezone
r.weightcategory = weightcategory
r.getemailnotifications = getemailnotifications
@@ -11110,13 +11117,11 @@ def rower_edit_view(request,message=""):
else:
try:
r = getrower(request.user)
form = RowerForm(instance=r)
powerform = RowerPowerForm(instance=r)
powerzonesform = RowerPowerZonesForm(instance=r)
accountform = AccountRowerForm(instance=r)
userform = UserForm(instance=request.user)
userform = UserForm(instance=r.user)
grants = AccessToken.objects.filter(user=request.user)
return render(request, 'rower_form.html',
{