mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-09 02:42:47 +00:00
Fixed bug when cloud_mode is false
This commit is contained in:
@@ -18,6 +18,12 @@ def ctx_switch_required(func):
|
||||
same template when both in org context and personal context.
|
||||
"""
|
||||
def _decorated(request, *args, **kwargs):
|
||||
if not request.cloud_mode:
|
||||
# no need to switch context when `CLOUD_MODE` is false
|
||||
request.user.org = None
|
||||
request.base_template = 'myhome_base.html'
|
||||
return func(request, *args, **kwargs)
|
||||
|
||||
repo_id = kwargs.get('repo_id', '')
|
||||
group_id = kwargs.get('group_id', '')
|
||||
if repo_id and group_id:
|
||||
|
@@ -1,21 +1,31 @@
|
||||
from django.core.cache import cache
|
||||
|
||||
from seaserv import get_binding_peerids
|
||||
from seaserv import get_binding_peerids, get_orgs_by_user
|
||||
|
||||
from seahub.notifications.models import Notification
|
||||
from seahub.notifications.utils import refresh_cache
|
||||
try:
|
||||
from seahub.settings import CLOUD_MODE
|
||||
except ImportError:
|
||||
CLOUD_MODE = False
|
||||
|
||||
class UseridMiddleware(object):
|
||||
"""Store ccnet user ids in request.user.userid_list"""
|
||||
class BaseMiddleware(object):
|
||||
"""
|
||||
Middleware that add organization info to request when user in organization
|
||||
context.
|
||||
"""
|
||||
|
||||
def process_request(self, request):
|
||||
if not request.user.is_authenticated():
|
||||
return None
|
||||
if CLOUD_MODE:
|
||||
request.cloud_mode = True
|
||||
|
||||
try:
|
||||
request.user.userid_list = get_binding_peerids(request.user.username)
|
||||
except:
|
||||
request.user.userid_list = []
|
||||
# Get all orgs user created.
|
||||
orgs = get_orgs_by_user(request.user.username)
|
||||
request.user.orgs = orgs
|
||||
else:
|
||||
request.cloud_mode = False
|
||||
request.user.org = None
|
||||
request.user.orgs = None
|
||||
|
||||
return None
|
||||
|
||||
|
@@ -1,37 +0,0 @@
|
||||
from django.core.cache import cache
|
||||
from django.http import HttpResponseRedirect
|
||||
|
||||
from seaserv import get_org_by_url_prefix, get_orgs_by_user
|
||||
|
||||
try:
|
||||
from seahub.settings import CLOUD_MODE
|
||||
except ImportError:
|
||||
CLOUD_MODE = False
|
||||
# from seahub.utils import get_cur_ctx
|
||||
|
||||
class OrganizationMiddleware(object):
|
||||
"""
|
||||
Middleware that add organization info to request when user in organization
|
||||
context.
|
||||
"""
|
||||
|
||||
def process_request(self, request):
|
||||
if CLOUD_MODE:
|
||||
request.cloud_mode = True
|
||||
|
||||
# Get current org context
|
||||
# ctx_dict = get_cur_ctx(request)
|
||||
# request.user.org = ctx_dict.get('org_dict', None)
|
||||
|
||||
# Get all orgs user created.
|
||||
orgs = get_orgs_by_user(request.user.username)
|
||||
request.user.orgs = orgs
|
||||
else:
|
||||
request.cloud_mode = False
|
||||
request.user.org = None
|
||||
request.user.orgs = None
|
||||
|
||||
return None
|
||||
|
||||
def process_response(self, request, response):
|
||||
return response
|
@@ -44,7 +44,7 @@
|
||||
{% endif %}
|
||||
<td>
|
||||
<img src="{{ MEDIA_URL }}img/sync-20.png" data="{{ repo.props.id }}" class="download-btn vh" title="同步到本地" alt="同步" />
|
||||
<!-- <img src="{{ MEDIA_URL }}img/share-20.png" data="{{ repo.props.id }}" class="repo-share-btn vh" title="共享" alt="共享" /> -->
|
||||
<img src="{{ MEDIA_URL }}img/share-20.png" data="{{ repo.props.id }}" class="repo-share-btn vh" title="共享" alt="共享" />
|
||||
<img src="{{ MEDIA_URL }}img/delete-20.png" data="{{ SITE_ROOT }}repo/remove/{{ repo.props.id }}/?next={{ request.path }}" class="repo-delete-btn vh" title="删除" alt="删除" />
|
||||
</td>
|
||||
</tr>
|
||||
@@ -52,6 +52,7 @@
|
||||
{% endif %}
|
||||
</table>
|
||||
|
||||
{% include "snippets/repo_share_form.html" %}
|
||||
{% include "snippets/repo_create_form.html" %}
|
||||
|
||||
{% endblock %}
|
||||
|
@@ -28,8 +28,7 @@ from seahub.contacts import Contact
|
||||
from seahub.forms import RepoCreateForm
|
||||
import seahub.settings as seahub_settings
|
||||
from seahub.utils import render_error, render_permission_error, gen_token, \
|
||||
validate_group_name, string2list, calculate_repo_last_modify,\
|
||||
MAX_INT
|
||||
validate_group_name, string2list, calculate_repo_last_modify, MAX_INT
|
||||
from seahub.views import myhome
|
||||
|
||||
@login_required
|
||||
|
@@ -67,9 +67,9 @@ MIDDLEWARE_CLASSES = (
|
||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||
'django.contrib.messages.middleware.MessageMiddleware',
|
||||
'auth.middleware.AuthenticationMiddleware',
|
||||
'seahub.base.middleware.InfobarMiddleware',
|
||||
'base.middleware.BaseMiddleware',
|
||||
'base.middleware.InfobarMiddleware',
|
||||
'seahub.subdomain.middleware.SubdomainMiddleware',
|
||||
'seahub.organizations.middleware.OrganizationMiddleware',
|
||||
)
|
||||
|
||||
SITE_ROOT_URLCONF = 'seahub.urls'
|
||||
|
@@ -1,4 +1,4 @@
|
||||
{% extends base_template %}
|
||||
{% extends "myhome_base.html" %}
|
||||
{% load seahub_tags avatar_tags %}
|
||||
{% load url from future %}
|
||||
|
||||
|
Reference in New Issue
Block a user