def __init__(self, article, request, *args, **kwargs): self.article = article self.user = request.user self.request = request kwargs['instance'] = article kwargs['initial'] = {'locked': article.current_revision.locked} super(PermissionsForm, self).__init__(*args, **kwargs) self.can_change_groups = False self.can_assign = False if permissions.can_assign(article, request.user): self.can_assign = True self.fields['group'].queryset = models.Group.objects.all() elif permissions.can_assign_owner(article, request.user): self.fields['group'].queryset = models.Group.objects.filter(user=request.user) self.can_change_groups = True else: self.fields['group'].widget = forms.HiddenInput() self.fields['group_read'].widget = forms.HiddenInput() self.fields['group_write'].widget = forms.HiddenInput() if not self.can_assign: self.fields['owner_username'].widget = forms.HiddenInput() self.fields['recursive'].widget = forms.HiddenInput() self.fields['locked'].widget = forms.HiddenInput() self.fields['owner_username'].initial = article.owner.username if article.owner else ""
def __init__(self, article, request, *args, **kwargs): self.article = article self.user = request.user self.request = request kwargs['instance'] = article kwargs['initial'] = {'locked': article.current_revision.locked} super(PermissionsForm, self).__init__(*args, **kwargs) self.can_change_groups = False self.can_assign = False print "checking can_assing", permissions.can_assign( article, request.user), request.user.is_staff if permissions.can_assign(article, request.user): self.can_assign = True self.fields['group'].queryset = models.Group.objects.all() elif permissions.can_assign_owner(article, request.user): self.fields['group'].queryset = models.Group.objects.filter( user=request.user) self.can_change_groups = True else: self.fields['group'].widget = forms.HiddenInput() self.fields['group_read'].widget = forms.HiddenInput() self.fields['group_write'].widget = forms.HiddenInput() if not self.can_assign: self.fields['owner_username'].widget = forms.HiddenInput() self.fields['recursive'].widget = forms.HiddenInput() self.fields['locked'].widget = forms.HiddenInput() self.fields[ 'owner_username'].initial = article.owner.username if article.owner else ""
def __init__(self, article, request, *args, **kwargs): self.article = article self.user = request.user self.request = request kwargs["instance"] = article kwargs["initial"] = {"locked": article.current_revision.locked} super(PermissionsForm, self).__init__(*args, **kwargs) self.can_change_groups = False self.can_assign = False print "checking can_assing", permissions.can_assign(article, request.user), request.user.is_staff if permissions.can_assign(article, request.user): self.can_assign = True self.fields["group"].queryset = models.Group.objects.all() elif permissions.can_assign_owner(article, request.user): self.fields["group"].queryset = models.Group.objects.filter(user=request.user) self.can_change_groups = True else: self.fields["group"].widget = forms.HiddenInput() self.fields["group_read"].widget = forms.HiddenInput() self.fields["group_write"].widget = forms.HiddenInput() if not self.can_assign: self.fields["owner_username"].widget = forms.HiddenInput() self.fields["recursive"].widget = forms.HiddenInput() self.fields["locked"].widget = forms.HiddenInput() self.fields["owner_username"].initial = article.owner.username if article.owner else ""
def __init__(self, article, request, *args, **kwargs): self.article = article self.user = request.user self.request = request kwargs['instance'] = article kwargs['initial'] = {'locked': article.current_revision.locked} super(PermissionsForm, self).__init__(*args, **kwargs) self.can_change_groups = False self.can_assign = False if permissions.can_assign(article, request.user): self.can_assign = True self.can_change_groups = True self.fields['group'].queryset = models.Group.objects.all() elif permissions.can_assign_owner(article, request.user): self.fields['group'].queryset = models.Group.objects.filter( user=request.user) self.can_change_groups = True else: # Quick-fix... # Set the group dropdown to readonly and with the current # group as only selectable option self.fields['group'] = forms.ModelChoiceField( queryset=models.Group.objects.filter( id=self.instance.group.id) if self.instance.group else models.Group.objects.none(), empty_label=_('(none)'), required=False, widget=SelectWidgetBootstrap( disabled=True) if settings.USE_BOOTSTRAP_SELECT_WIDGET else forms.Select( attrs={'disabled': True})) self.fields['group_read'].widget = forms.HiddenInput() self.fields['group_write'].widget = forms.HiddenInput() if not self.can_assign: self.fields['owner_username'].widget = forms.TextInput( attrs={ 'readonly': 'true'}) self.fields['recursive'].widget = forms.HiddenInput() self.fields['recursive_group'].widget = forms.HiddenInput() self.fields['recursive_owner'].widget = forms.HiddenInput() self.fields['locked'].widget = forms.HiddenInput() self.fields['owner_username'].initial = getattr( article.owner, User.USERNAME_FIELD) if article.owner else ""
def __init__(self, article, request, *args, **kwargs): self.article = article self.user = request.user self.request = request kwargs['instance'] = article kwargs['initial'] = {'locked': article.current_revision.locked} super(PermissionsForm, self).__init__(*args, **kwargs) self.can_change_groups = False self.can_assign = False if permissions.can_assign(article, request.user): self.can_assign = True self.can_change_groups = True self.fields['group'].queryset = Group.objects.all() elif permissions.can_assign_owner(article, request.user): self.fields['group'].queryset = Group.objects.filter( user=request.user) self.can_change_groups = True else: # Quick-fix... # Set the group dropdown to readonly and with the current # group as only selectable option self.fields['group'] = forms.ModelChoiceField( queryset=Group.objects.filter( id=self.instance.group.id) if self.instance.group else Group.objects.none(), empty_label=_('(none)'), required=False, widget=SelectWidgetBootstrap( disabled=True) if settings.USE_BOOTSTRAP_SELECT_WIDGET else forms.Select( attrs={'disabled': True})) self.fields['group_read'].widget = forms.HiddenInput() self.fields['group_write'].widget = forms.HiddenInput() if not self.can_assign: self.fields['owner_username'].widget = forms.TextInput( attrs={ 'readonly': 'true'}) self.fields['recursive'].widget = forms.HiddenInput() self.fields['recursive_group'].widget = forms.HiddenInput() self.fields['recursive_owner'].widget = forms.HiddenInput() self.fields['locked'].widget = forms.HiddenInput() self.fields['owner_username'].initial = getattr( article.owner, User.USERNAME_FIELD) if article.owner else ""