diff --git a/cookbook/templates/meal_plan.html b/cookbook/templates/meal_plan.html index 3f5407e51..ac0fae52c 100644 --- a/cookbook/templates/meal_plan.html +++ b/cookbook/templates/meal_plan.html @@ -317,8 +317,8 @@ this.default_shared_users = [{% for u in request.user.userpreference.plan_share.all %} {{ u.pk }}, {% endfor %}] - - this.$set(this.user_names, {{ request.user.pk }}, '{{ request.user.get_user_name }}') + + this.$set(this.user_names, {{ request.user.pk }}, '{{ request.user.get_user_name }}') this.user_id_update = Array.from(this.default_shared_users) this.updatePlan(); @@ -357,12 +357,18 @@ buildGrid: function () { console.log("BUILD GRID EXECUTED") this.meal_plan = {} + + for (let e of this.plan_entries) { + let new_type = {id: e.meal_type, name: e.meal_type_name,} + if (this.meal_types.filter(el => el.id === new_type.id).length === 0){ + this.meal_types.push(new_type) + } + } for (let t of this.meal_types) { this.$set(this.meal_plan, t.id, { name: t.name, meal_type: t.id, - type: t, days: {} }) for (let d of this.days) { diff --git a/cookbook/views/api.py b/cookbook/views/api.py index 92752e6c6..99bdfbeba 100644 --- a/cookbook/views/api.py +++ b/cookbook/views/api.py @@ -43,7 +43,7 @@ class MealPlanViewSet(viewsets.ModelViewSet): permission_classes = [permissions.IsAuthenticated] def get_queryset(self): - queryset = MealPlan.objects.filter(Q(created_by=self.request.user) or Q(shared=self.request.user)).all() + queryset = MealPlan.objects.filter(Q(created_by=self.request.user) | Q(shared=self.request.user)).distinct().all() week = self.request.query_params.get('html_week', None) if week is not None: y, w = week.replace('-W', ' ').split()