Example #1
0
    def __init__(self, *args, **kwargs):
        self.gallery = kwargs.pop('gallery', None)
        ModelForm.__init__(self, *args, **kwargs)
        if hasattr(self.Meta, 'required'):
            for key in self.Meta.required:
                self.fields[key].required = True

        self.user = get_user()
        if not self.user.is_authenticated():
            raise ValueError("Anonymous user can't create or edit resources!")

        if not self.user.has_perm('resource.change_resourcemirror'):
            self.fields.pop('mirror', None)
        if not self.user.gpg_key:
            self.fields.pop('signature', None)

        for field in ('download', 'rendering', 'signature'):
            if field in self.fields:
                if isinstance(self.fields[field].widget, ClearableFileInput):
                    self.fields[field].widget = FileInput()

        if 'category' in self.fields:
            f = self.fields['category']
            if self.gallery and self.gallery.category:
                f.queryset = Category.objects.filter(
                    pk=self.gallery.category.pk)
                f.widget = DisabledSelect(f.widget.attrs, f.widget.choices)
            else:
                f.queryset = f.queryset.filter(Q(selectable=True) & \
                    (Q(groups__isnull=True) | Q(groups__in=self.user.groups.all()))
                )
                f.widget = CategorySelect(f.widget.attrs, f.widget.choices)
                f.choices = [(o, unicode(o)) for o in f.queryset]

        if 'license' in self.fields:
            f = self.fields['license']
            f.queryset = f.queryset.filter(selectable=True)
            if 'category' in self.fields:
                f.widget = FilterSelect(f.queryset, 'category', 'id_category',
                                        f.widget)

        if 'owner' in self.fields:
            f = self.fields['owner']
            f.to_python = self.ex_clean_owner(f.to_python)
Example #2
0
 def __init__(self, *args, **kwargs):
     super(GalleryForm, self).__init__(*args, **kwargs)
     source = self.fields['source']
     source.queryset = source.queryset.filter(Q(user=get_user())|Q(group__in=get_user().groups.all()))
Example #3
0
 def is_editable(self):
     user = get_user()
     return user and (not user.id is None) and (
         self.user == user or user.is_superuser \
           or (user.groups.count() and self.group in user.groups.all()))
Example #4
0
 def is_visible(self):
     return self.items.for_user(get_user()).count() or self.is_editable()
Example #5
0
 def voted(self):
     return self.votes.filter(voter_id=get_user().pk).first()
Example #6
0
 def is_visible(self):
     return get_user(
     ).pk == self.user_id or self.published and self.is_available()
Example #7
0
 def latest(self, column=None):
     if column:
         return super(ResourceManager, self).latest(column)
     user = get_user()
     return self.for_user(user).exclude(category=Category.objects.get(
         pk=1)).order_by('-created')[:4]
Example #8
0
 def i_added(self):
     from cms.utils.permissions import get_current_user as get_user
     user = get_user()
     if user.is_authenticated():
         return bool(self.get(from_user=user.pk))
     return False
Example #9
0
    def viewer_is_subscribed(self):
        from cms.utils.permissions import get_current_user as get_user
        user = get_user()
        if user.is_authenticated():
	    return bool(self.resources.subscriptions().get(user=user.pk))
        return False
Example #10
0
 def __init__(self, *args, **kwargs):
     ModelForm.__init__(self, *args, **kwargs)
     self.fields['group'].queryset = get_user().groups.all()
     qs = self.fields['category'].queryset
     self.fields['category'].queryset = qs.filter(selectable=True)