|
20 | 20 | from cookbook.helper.permission_helper import group_required, has_group_permission
|
21 | 21 | from cookbook.helper.recipe_url_import import parse_cooktime
|
22 | 22 | from cookbook.models import (Comment, Food, Ingredient, Keyword, Recipe,
|
23 |
| - RecipeImport, Step, Sync, Unit) |
| 23 | + RecipeImport, Step, Sync, Unit, UserPreference) |
24 | 24 | from cookbook.tables import SyncTable
|
25 | 25 |
|
26 | 26 |
|
27 | 27 | @group_required('user')
|
28 | 28 | def sync(request):
|
| 29 | + if request.space.max_recipes != 0 and Recipe.objects.filter(space=request.space).count() >= request.space.max_recipes: # TODO move to central helper function |
| 30 | + messages.add_message(request, messages.WARNING, _('You have reached the maximum number of recipes for your space.')) |
| 31 | + return HttpResponseRedirect(reverse('index')) |
| 32 | + |
| 33 | + if request.space.max_users != 0 and UserPreference.objects.filter(space=request.space).count() > request.space.max_users: |
| 34 | + messages.add_message(request, messages.WARNING, _('You have more users than allowed in your space.')) |
| 35 | + return HttpResponseRedirect(reverse('index')) |
| 36 | + |
29 | 37 | if request.method == "POST":
|
30 | 38 | if not has_group_permission(request.user, ['admin']):
|
31 | 39 | messages.add_message(request, messages.ERROR, _('You do not have the required permissions to view this page!'))
|
@@ -109,6 +117,14 @@ def batch_edit(request):
|
109 | 117 | @group_required('user')
|
110 | 118 | @atomic
|
111 | 119 | def import_url(request):
|
| 120 | + if request.space.max_recipes != 0 and Recipe.objects.filter(space=request.space).count() >= request.space.max_recipes: # TODO move to central helper function |
| 121 | + messages.add_message(request, messages.WARNING, _('You have reached the maximum number of recipes for your space.')) |
| 122 | + return HttpResponseRedirect(reverse('index')) |
| 123 | + |
| 124 | + if request.space.max_users != 0 and UserPreference.objects.filter(space=request.space).count() > request.space.max_users: |
| 125 | + messages.add_message(request, messages.WARNING, _('You have more users than allowed in your space.')) |
| 126 | + return HttpResponseRedirect(reverse('index')) |
| 127 | + |
112 | 128 | if request.method == 'POST':
|
113 | 129 | data = json.loads(request.body)
|
114 | 130 | data['cookTime'] = parse_cooktime(data.get('cookTime', ''))
|
@@ -200,6 +216,7 @@ def import_url(request):
|
200 | 216 |
|
201 | 217 | return render(request, 'url_import.html', context)
|
202 | 218 |
|
| 219 | + |
203 | 220 | class Object(object):
|
204 | 221 | pass
|
205 | 222 |
|
|
0 commit comments