Commit 130928f16a15d8b918dc0a2af4113e8519e260b4
1 parent
ceeb61d8
Add diazobase to proxy.utils
Signed-off-by: Gustavo Jaruga <darksshades@gmail.com>
Showing
17 changed files
with
64 additions
and
64 deletions
Show diff stats
colab/proxy/gitlab/diazo.xml
colab/proxy/gitlab/views.py
colab/proxy/jenkins/views.py
colab/proxy/noosfero/diazo.xml
colab/proxy/noosfero/views.py
colab/proxy/proxybase/__init__.py
colab/proxy/proxybase/apps.py
colab/proxy/proxybase/diazobase.xml
| @@ -1,14 +0,0 @@ | @@ -1,14 +0,0 @@ | ||
| 1 | -<!-- | ||
| 2 | - This file will be included as a base rules for all diazo rules. | ||
| 3 | - e.g.: The file proxy/noosfero/diazo.xml the first lines indicates this source file and this code will be replaced in &proxybase; | ||
| 4 | ---> | ||
| 5 | -<rules | ||
| 6 | - xmlns="http://namespaces.plone.org/diazo" | ||
| 7 | - xmlns:css="http://namespaces.plone.org/diazo/css" | ||
| 8 | - xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> | ||
| 9 | - | ||
| 10 | - <before theme-children="/html/head" content-children="/html/head" /> | ||
| 11 | - <before css:theme-children="#main-content" css:content-children="body" /> | ||
| 12 | - | ||
| 13 | - <merge attributes="class" css:theme="body" css:content="body" /> | ||
| 14 | -</rules> |
colab/proxy/proxybase/views.py
| @@ -1,36 +0,0 @@ | @@ -1,36 +0,0 @@ | ||
| 1 | -import json | ||
| 2 | - | ||
| 3 | -from django.conf import settings | ||
| 4 | - | ||
| 5 | -from revproxy.views import ProxyView | ||
| 6 | - | ||
| 7 | - | ||
| 8 | -class ColabProxyView(ProxyView): | ||
| 9 | - add_remote_user = settings.REVPROXY_ADD_REMOTE_USER | ||
| 10 | - diazo_theme_template = 'base.html' | ||
| 11 | - html5 = True | ||
| 12 | - | ||
| 13 | - @property | ||
| 14 | - def upstream(self): | ||
| 15 | - proxy_config = settings.PROXIED_APPS.get(self.app_label, {}) | ||
| 16 | - return proxy_config.get('upstream') | ||
| 17 | - | ||
| 18 | - @property | ||
| 19 | - def app_label(self): | ||
| 20 | - raise NotImplementedError('app_label attribute must be set') | ||
| 21 | - | ||
| 22 | - def dispatch(self, request, *args, **kwargs): | ||
| 23 | - | ||
| 24 | - if request.user.is_authenticated(): | ||
| 25 | - | ||
| 26 | - remote_user_data = {} | ||
| 27 | - | ||
| 28 | - remote_user_data['email'] = request.user.email | ||
| 29 | - remote_user_data['name'] = request.user.get_full_name() | ||
| 30 | - | ||
| 31 | - request.META['HTTP_REMOTE_USER_DATA'] = json.dumps( | ||
| 32 | - remote_user_data, | ||
| 33 | - sort_keys=True, | ||
| 34 | - ) | ||
| 35 | - | ||
| 36 | - return super(ColabProxyView, self).dispatch(request, *args, **kwargs) |
colab/proxy/redmine/apps.py
colab/proxy/redmine/diazo.xml
| 1 | <?xml version="1.0" standalone="no" ?> | 1 | <?xml version="1.0" standalone="no" ?> |
| 2 | <!DOCTYPE rules [ | 2 | <!DOCTYPE rules [ |
| 3 | -<!ENTITY proxybase SYSTEM "../proxybase/diazobase.xml"> | 3 | +<!ENTITY proxybase SYSTEM "../utils/diazobase.xml"> |
| 4 | ]> | 4 | ]> |
| 5 | 5 | ||
| 6 | <rules | 6 | <rules |
| @@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
| 8 | xmlns:css="http://namespaces.plone.org/diazo/css" | 8 | xmlns:css="http://namespaces.plone.org/diazo/css" |
| 9 | xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> | 9 | xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> |
| 10 | 10 | ||
| 11 | - <!-- Includes base proxybase/diazobase.xml rules --> | 11 | + <!-- Includes base utils/diazobase.xml rules --> |
| 12 | &proxybase; | 12 | &proxybase; |
| 13 | 13 | ||
| 14 | <!-- Redmine specific rules --> | 14 | <!-- Redmine specific rules --> |
colab/proxy/redmine/views.py
colab/proxy/trac/views.py
| @@ -3,7 +3,7 @@ from django.conf import settings | @@ -3,7 +3,7 @@ from django.conf import settings | ||
| 3 | 3 | ||
| 4 | from hitcounter.views import HitCounterViewMixin | 4 | from hitcounter.views import HitCounterViewMixin |
| 5 | 5 | ||
| 6 | -from ..proxybase.views import ColabProxyView | 6 | +from ..utils.views import ColabProxyView |
| 7 | from .models import Wiki, Ticket, Revision | 7 | from .models import Wiki, Ticket, Revision |
| 8 | 8 | ||
| 9 | 9 |
| @@ -0,0 +1,14 @@ | @@ -0,0 +1,14 @@ | ||
| 1 | +<!-- | ||
| 2 | + This file will be included as a base rules for all diazo rules. | ||
| 3 | + e.g.: The file proxy/noosfero/diazo.xml the first lines indicates this source file and this code will be replaced in &proxybase; | ||
| 4 | +--> | ||
| 5 | +<rules | ||
| 6 | + xmlns="http://namespaces.plone.org/diazo" | ||
| 7 | + xmlns:css="http://namespaces.plone.org/diazo/css" | ||
| 8 | + xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> | ||
| 9 | + | ||
| 10 | + <before theme-children="/html/head" content-children="/html/head" /> | ||
| 11 | + <before css:theme-children="#main-content" css:content-children="body" /> | ||
| 12 | + | ||
| 13 | + <merge attributes="class" css:theme="body" css:content="body" /> | ||
| 14 | +</rules> |
| @@ -0,0 +1,36 @@ | @@ -0,0 +1,36 @@ | ||
| 1 | +import json | ||
| 2 | + | ||
| 3 | +from django.conf import settings | ||
| 4 | + | ||
| 5 | +from revproxy.views import ProxyView | ||
| 6 | + | ||
| 7 | + | ||
| 8 | +class ColabProxyView(ProxyView): | ||
| 9 | + add_remote_user = settings.REVPROXY_ADD_REMOTE_USER | ||
| 10 | + diazo_theme_template = 'base.html' | ||
| 11 | + html5 = True | ||
| 12 | + | ||
| 13 | + @property | ||
| 14 | + def upstream(self): | ||
| 15 | + proxy_config = settings.PROXIED_APPS.get(self.app_label, {}) | ||
| 16 | + return proxy_config.get('upstream') | ||
| 17 | + | ||
| 18 | + @property | ||
| 19 | + def app_label(self): | ||
| 20 | + raise NotImplementedError('app_label attribute must be set') | ||
| 21 | + | ||
| 22 | + def dispatch(self, request, *args, **kwargs): | ||
| 23 | + | ||
| 24 | + if request.user.is_authenticated(): | ||
| 25 | + | ||
| 26 | + remote_user_data = {} | ||
| 27 | + | ||
| 28 | + remote_user_data['email'] = request.user.email | ||
| 29 | + remote_user_data['name'] = request.user.get_full_name() | ||
| 30 | + | ||
| 31 | + request.META['HTTP_REMOTE_USER_DATA'] = json.dumps( | ||
| 32 | + remote_user_data, | ||
| 33 | + sort_keys=True, | ||
| 34 | + ) | ||
| 35 | + | ||
| 36 | + return super(ColabProxyView, self).dispatch(request, *args, **kwargs) |