diff --git a/cookbook/forms.py b/cookbook/forms.py index 0ac1d8cb..5f114117 100644 --- a/cookbook/forms.py +++ b/cookbook/forms.py @@ -36,6 +36,11 @@ class DateWidget(forms.DateInput): class UserPreferenceForm(forms.ModelForm): prefix = 'preference' + def __init__(self, *args, **kwargs): + space = kwargs.pop('space') + super().__init__(*args, **kwargs) + self.fields['plan_share'].queryset = User.objects.filter(userpreference__space=space).all() + class Meta: model = UserPreference fields = ( diff --git a/cookbook/views/views.py b/cookbook/views/views.py index 43e9c89e..23fafdd8 100644 --- a/cookbook/views/views.py +++ b/cookbook/views/views.py @@ -287,7 +287,7 @@ def user_settings(request): if request.method == "POST": if 'preference_form' in request.POST: active_tab = 'preferences' - form = UserPreferenceForm(request.POST, prefix='preference') + form = UserPreferenceForm(request.POST, prefix='preference', space=request.space) if form.is_valid(): if not up: up = UserPreference(user=request.user) @@ -380,9 +380,9 @@ def user_settings(request): sp.save() if up: - preference_form = UserPreferenceForm(instance=up) + preference_form = UserPreferenceForm(instance=up, space=request.space) else: - preference_form = UserPreferenceForm() + preference_form = UserPreferenceForm( space=request.space) fields_searched = len(sp.icontains.all()) + len(sp.istartswith.all()) + len(sp.trigram.all()) + len( sp.fulltext.all())