Statistics
| Branch: | Tag: | Revision:

root / utils / decorators.py @ 0492a5b5

History | View | Annotate | Download (1.2 kB)

1
# -*- coding: utf-8 -*- vim:fileencoding=utf-8:
2
# vim: tabstop=4:shiftwidth=4:softtabstop=4:expandtab
3

    
4
# Copyright (C) 2010-2014 GRNET S.A.
5
#
6
# This program is free software: you can redistribute it and/or modify
7
# it under the terms of the GNU General Public License as published by
8
# the Free Software Foundation, either version 3 of the License, or
9
# (at your option) any later version.
10
#
11
# This program is distributed in the hope that it will be useful,
12
# but WITHOUT ANY WARRANTY; without even the implied warranty of
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
# GNU General Public License for more details.
15
#
16
# You should have received a copy of the GNU General Public License
17
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
#
19

    
20
from django.http import HttpResponseRedirect
21
from django.core.urlresolvers import reverse
22

    
23

    
24
def shib_required(f):
25
    def wrap(request, *args, **kwargs):
26
        if 'HTTP_SHIB_SESSION_ID' not in request.META or not request.META['HTTP_SHIB_SESSION_ID']:
27
            return HttpResponseRedirect(reverse('login'))
28
        return f(request, *args, **kwargs)
29

    
30
    wrap.__doc__=f.__doc__
31
    wrap.__name__=f.__name__
32
    return wrap