diff --git a/cookbook/urls.py b/cookbook/urls.py index 7f88acd04..649f43826 100644 --- a/cookbook/urls.py +++ b/cookbook/urls.py @@ -121,6 +121,8 @@ urlpatterns = [ path('api/get_recipe_file//', api.get_recipe_file, name='api_get_recipe_file'), path('api/sync_all/', api.sync_all, name='api_sync'), path('api/log_cooking//', api.log_cooking, name='api_log_cooking'), + path('api/plan-ical/', api.get_plan_ical, name='api_get_plan_ical_future'), + path('api/plan-ical//', api.get_plan_ical, name='api_get_plan_ical_from'), path('api/plan-ical///', api.get_plan_ical, name='api_get_plan_ical'), path('api/recipe-from-source/', api.RecipeUrlImportView.as_view(), name='api_recipe_from_source'), path('api/backup/', api.get_backup, name='api_backup'), diff --git a/cookbook/views/api.py b/cookbook/views/api.py index b6f37acfa..670bd9cbf 100644 --- a/cookbook/views/api.py +++ b/cookbook/views/api.py @@ -1692,8 +1692,9 @@ def log_cooking(request, recipe_id): return {'error': 'recipe does not exist'} -@group_required('user') -def get_plan_ical(request, from_date, to_date): +@api_view(['GET']) +@permission_classes([CustomIsUser & CustomTokenHasReadWriteScope]) +def get_plan_ical(request, from_date=datetime.date.today(), to_date=None): queryset = MealPlan.objects.filter(Q(created_by=request.user) | Q(shared=request.user)).filter(space=request.user.userspace_set.filter(active=1).first().space).distinct().all()