def space(request): space_users = UserPreference.objects.filter(space=request.space).all() counts = Object() counts.recipes = Recipe.objects.filter(space=request.space).count() counts.keywords = Keyword.objects.filter(space=request.space).count() counts.recipe_import = RecipeImport.objects.filter( space=request.space).count() counts.units = Unit.objects.filter(space=request.space).count() counts.ingredients = Food.objects.filter(space=request.space).count() counts.comments = Comment.objects.filter( recipe__space=request.space).count() counts.recipes_internal = Recipe.objects.filter( internal=True, space=request.space).count() counts.recipes_external = counts.recipes - counts.recipes_internal counts.recipes_no_keyword = Recipe.objects.filter( keywords=None, space=request.space).count() invite_links = InviteLinkTable( InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, space=request.space).all()) RequestConfig(request, paginate={'per_page': 25}).configure(invite_links) return render(request, 'space.html', { 'space_users': space_users, 'counts': counts, 'invite_links': invite_links })
def invite_link(request): table = InviteLinkTable(InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, space=request.space).all()) RequestConfig(request, paginate={'per_page': 25}).configure(table) return render(request, 'generic/list_template.html', { 'title': _("Invite Links"), 'table': table, 'create_url': 'new_invite_link' })
def space(request): space_users = UserPreference.objects.filter(space=request.space).all() counts = Object() counts.recipes = Recipe.objects.filter(space=request.space).count() counts.keywords = Keyword.objects.filter(space=request.space).count() counts.recipe_import = RecipeImport.objects.filter(space=request.space).count() counts.units = Unit.objects.filter(space=request.space).count() counts.ingredients = Food.objects.filter(space=request.space).count() counts.comments = Comment.objects.filter(recipe__space=request.space).count() counts.recipes_internal = Recipe.objects.filter(internal=True, space=request.space).count() counts.recipes_external = counts.recipes - counts.recipes_internal counts.recipes_no_keyword = Recipe.objects.filter(keywords=None, space=request.space).count() invite_links = InviteLinkTable( InviteLink.objects.filter(valid_until__gte=datetime.today(), used_by=None, space=request.space).all()) RequestConfig(request, paginate={'per_page': 25}).configure(invite_links) space_form = SpacePreferenceForm(instance=request.space) space_form.base_fields['food_inherit'].queryset = Food.inheritable_fields if request.method == "POST" and 'space_form' in request.POST: form = SpacePreferenceForm(request.POST, prefix='space') if form.is_valid(): request.space.food_inherit.set(form.cleaned_data['food_inherit']) request.space.show_facet_count = form.cleaned_data['show_facet_count'] request.space.save() if form.cleaned_data['reset_food_inherit']: Food.reset_inheritance(space=request.space) return render(request, 'space.html', { 'space_users': space_users, 'counts': counts, 'invite_links': invite_links, 'space_form': space_form })