kAldown

Untitled

May 27th, 2016
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1.  
  2. def in_groups(groups, function=None, home_url=None, redirect_field_name=None):
  3.     assert isinstance(groups, list)
  4.  
  5.     def _dec(view_func):
  6.         def _view(request, *args, **kwargs):
  7.             if 'Admin' in groups:
  8.                 if not request.user.is_superuser:
  9.  
  10.                     for g in groups:
  11.                         if not request.user.groups.filter(name=g).exists():
  12.                             return redirect('/admin/')
  13.  
  14.             return view_func(request, *args, **kwargs)
  15.  
  16.         _view.__name__ = view_func.__name__
  17.         _view.__dict__ = view_func.__dict__
  18.         _view.__doc__ = view_func.__doc__
  19.  
  20.         return _view
  21.  
  22.     if function is None:
  23.         return _dec
  24.     else:
  25.         return _dec(function)
Advertisement
Add Comment
Please, Sign In to add comment