Add restrictions for editing recipe title

This commit is contained in:
Benjamin 2023-03-11 18:20:22 +01:00
parent 8f79bf5dd2
commit bc440dfa2a

View file

@ -72,6 +72,16 @@ def add_recipe(request):
def edit_recipe(request, slug):
recipe = get_object_or_404(Recipe, slug=slug)
# It is assumed every recipe has at least one version
if not request.user.is_superuser:
users = set()
for version in recipe.versions.all(): # type: ignore
users.add(version.user)
if len(users) > 1 or (len(users) == 1 and next(iter(users)) != request.user):
return redirect(f"/accounts/login/?next={request.path}")
if request.method == 'POST':
form = RecipeForm(request.POST, instance=recipe, prefix=RECIPE_FORM_PREFIX)
if form.is_valid():