Skip to content
Snippets Groups Projects
Commit a3910326 authored by Vegard Murvold Sporstøl's avatar Vegard Murvold Sporstøl
Browse files

Merge branch 'UC-1' into 'master'

Uc 1

See merge request !6
parents fb433f0a 181d31e3
No related branches found
No related tags found
1 merge request!6Uc 1
Pipeline #113913 passed
...@@ -98,7 +98,9 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer): ...@@ -98,7 +98,9 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer):
if "files" in validated_data: if "files" in validated_data:
files_data = validated_data.pop("files") files_data = validated_data.pop("files")
print(validated_data)
workout = Workout.objects.create(**validated_data) workout = Workout.objects.create(**validated_data)
print(workout)
for exercise_instance_data in exercise_instances_data: for exercise_instance_data in exercise_instances_data:
ExerciseInstance.objects.create(workout=workout, **exercise_instance_data) ExerciseInstance.objects.create(workout=workout, **exercise_instance_data)
...@@ -127,6 +129,7 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer): ...@@ -127,6 +129,7 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer):
instance.name = validated_data.get("name", instance.name) instance.name = validated_data.get("name", instance.name)
instance.notes = validated_data.get("notes", instance.notes) instance.notes = validated_data.get("notes", instance.notes)
instance.owner = validated_data.get("owner", instance.owner)
instance.visibility = validated_data.get("visibility", instance.visibility) instance.visibility = validated_data.get("visibility", instance.visibility)
instance.date = validated_data.get("date", instance.date) instance.date = validated_data.get("date", instance.date)
instance.save() instance.save()
......
...@@ -26,6 +26,7 @@ from workouts.models import Workout, Exercise, ExerciseInstance, WorkoutFile ...@@ -26,6 +26,7 @@ from workouts.models import Workout, Exercise, ExerciseInstance, WorkoutFile
from workouts.serializers import WorkoutSerializer, ExerciseSerializer from workouts.serializers import WorkoutSerializer, ExerciseSerializer
from workouts.serializers import RememberMeSerializer from workouts.serializers import RememberMeSerializer
from workouts.serializers import ExerciseInstanceSerializer, WorkoutFileSerializer from workouts.serializers import ExerciseInstanceSerializer, WorkoutFileSerializer
from django.contrib.auth import get_user_model
from django.core.exceptions import PermissionDenied from django.core.exceptions import PermissionDenied
from rest_framework_simplejwt.tokens import RefreshToken from rest_framework_simplejwt.tokens import RefreshToken
from rest_framework.response import Response from rest_framework.response import Response
...@@ -128,7 +129,10 @@ class WorkoutList( ...@@ -128,7 +129,10 @@ class WorkoutList(
return self.create(request, *args, **kwargs) return self.create(request, *args, **kwargs)
def perform_create(self, serializer): def perform_create(self, serializer):
serializer.save(owner=self.request.user) owner = self.request.POST.get("owner")
User = get_user_model()
user = User.objects.get(username=owner)
serializer.save(owner=user)
def get_queryset(self): def get_queryset(self):
qs = Workout.objects.none() qs = Workout.objects.none()
......
This diff is collapsed.
...@@ -33,15 +33,15 @@ ...@@ -33,15 +33,15 @@
<div class="centering"> <div class="centering">
<div class="list-group list-group-horizontal d-inline-flex mt-2"> <div class="list-group list-group-horizontal d-inline-flex mt-2">
<div class="number"> <div class="number">
<h1 id="week">Last seven days</h1> <h1 id="week">0</h1>
<p>Last seven days</p> <p>Last seven days</p>
</div> </div>
<div class="number"> <div class="number">
<h1 id="month">Last thirty days</h1> <h1 id="month">0</h1>
<p>Last 30 days</p> <p>Last 30 days</p>
</div> </div>
<div class="number"> <div class="number">
<h1 id="year">Last 365 days</h1> <h1 id="year">0</h1>
<p>Last 365 days</p> <p>Last 365 days</p>
</div> </div>
</div> </div>
......
...@@ -11,6 +11,14 @@ ...@@ -11,6 +11,14 @@
integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1"
crossorigin="anonymous" crossorigin="anonymous"
/> />
<script src="scripts/defaults.js"></script>
<script src="scripts/scripts.js"></script>
<script type="text/javascript" src="scripts/workout.js"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js"
integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW"
crossorigin="anonymous"
></script>
<script <script
src="https://kit.fontawesome.com/0ce6c392ca.js" src="https://kit.fontawesome.com/0ce6c392ca.js"
...@@ -52,15 +60,34 @@ ...@@ -52,15 +60,34 @@
</div> </div>
<div class="col-lg-6"></div> <div class="col-lg-6"></div>
<div class="col-lg-6"> <div class="col-lg-6">
<label for="inputOwner" class="form-label">Owner</label> <div id="divAthlete">
<input <label for="forAthlete">Create workout for athlete</label>
type="text" <input id="forAthlete" type="checkbox" onclick="athleteChecked()" />
class="form-control" </div>
id="inputOwner" <div class="col-lg-6"></div>
name="owner_username" <p>Owner</p>
readonly
/> <div>
<select
id="athletes"
class="form-select"
name="owner_username"
style="display:none"
onclick="athletesInDropdown(); this.onclick=null;"
>
</select>
<input
type="text"
class="form-control"
id="inputOwner"
name="owner_username"
style="display:block"
readonly
/>
</div>
</div> </div>
<div class="col-lg-6"></div>
<div class="col-lg-6"> <div class="col-lg-6">
<label for="inputVisibility" class="form-label">Visibility</label> <label for="inputVisibility" class="form-label">Visibility</label>
<select <select
...@@ -74,6 +101,7 @@ ...@@ -74,6 +101,7 @@
<option value="PR">Private</option> <option value="PR">Private</option>
</select> </select>
</div> </div>
<div class="col-lg-6"></div>
<div class="col-lg-6"> <div class="col-lg-6">
<label for="inputNotes" class="form-label">Notes</label> <label for="inputNotes" class="form-label">Notes</label>
<textarea <textarea
...@@ -197,14 +225,5 @@ ...@@ -197,14 +225,5 @@
<div class="col-lg-6"></div> <div class="col-lg-6"></div>
</div> </div>
</template> </template>
<script src="scripts/defaults.js"></script>
<script src="scripts/scripts.js"></script>
<script src="scripts/workout.js"></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js"
integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW"
crossorigin="anonymous"
></script>
</body> </body>
</html> </html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment