diff --git a/seahub/views/file.py b/seahub/views/file.py index 9c738b905d..8312567856 100644 --- a/seahub/views/file.py +++ b/seahub/views/file.py @@ -636,7 +636,7 @@ def view_shared_file(request, token): else: return render_to_response('share_access_validation.html', d, context_instance=RequestContext(request)) - + shared_by = fileshare.username repo_id = fileshare.repo_id repo = get_repo(repo_id) @@ -696,6 +696,8 @@ def view_shared_file(request, token): save_to_link = reverse('save_shared_link') + '?t=' + token traffic_over_limit = user_traffic_over_limit(shared_by) + office_preview_token = ret_dict.get('office_preview_token', '') + return render_to_response('shared_file_view.html', { 'repo': repo, 'obj_id': obj_id, @@ -713,6 +715,7 @@ def view_shared_file(request, token): 'file_encoding_list':ret_dict['file_encoding_list'], 'html_exists': ret_dict['html_exists'], 'html_detail': ret_dict.get('html_detail', {}), + 'office_preview_token': office_preview_token, 'filetype': ret_dict['filetype'], 'use_pdfjs':USE_PDFJS, 'accessible_repos': accessible_repos, @@ -722,7 +725,7 @@ def view_shared_file(request, token): def view_raw_shared_file(request, token, obj_id, file_name): """Returns raw content of a shared file. - + Arguments: - `request`: - `token`: @@ -844,6 +847,7 @@ def view_file_via_shared_dir(request, token): ret_dict['err'] = err_msg traffic_over_limit = user_traffic_over_limit(shared_by) + office_preview_token = ret_dict.get('office_preview_token', '') return render_to_response('shared_file_view.html', { 'repo': repo, @@ -863,6 +867,7 @@ def view_file_via_shared_dir(request, token): 'file_encoding_list':ret_dict['file_encoding_list'], 'html_exists': ret_dict['html_exists'], 'html_detail': ret_dict.get('html_detail', {}), + 'office_preview_token': office_preview_token, 'filetype': ret_dict['filetype'], 'use_pdfjs':USE_PDFJS, 'zipped': zipped, @@ -1033,7 +1038,7 @@ def file_edit(request, repo_id): @login_required def view_raw_file(request, repo_id, file_path): """Returns raw content of a file. - + Arguments: - `request`: - `repo_id`: @@ -1059,7 +1064,7 @@ def view_raw_file(request, repo_id, file_path): def send_file_download_msg(request, repo, path, dl_type): """Send file downlaod msg. - + Arguments: - `request`: - `repo`: @@ -1256,9 +1261,9 @@ def office_convert_add_task(request): return HttpResponseBadRequest('invalid params') resp = add_office_convert_task(file_id, doctype, raw_path, internal=True) - + return HttpResponse(json.dumps(resp), content_type=content_type) - + def check_office_token(func): '''Set the `office_convert_add_task` attr on the request object for office preview related requests @@ -1268,14 +1273,14 @@ def check_office_token(func): token = request.META.get('HTTP_X_SEAFILE_OFFICE_PREVIEW_TOKEN', '') if token and len(token) != 32: return HttpResponseForbidden() - + if not token: token = request.GET.get('office_preview_token', '') - + request.office_preview_token = token - + return func(request, *args, **kwargs) - + return newfunc @check_office_token @@ -1320,7 +1325,7 @@ def office_convert_get_page(request, path, internal=False): m = _OFFICE_PAGE_PATTERN.match(path) if not m: return HttpResponseForbidden() - + file_id = m.group(1) if path.endswith('file.css'): pass @@ -1409,6 +1414,7 @@ def view_priv_shared_file(request, token): accessible_repos = get_unencry_rw_repos_by_user(request) save_to_link = reverse('save_private_file_share', args=[pfs.token]) + office_preview_token = ret_dict.get('office_preview_token', '') return render_to_response('shared_file_view.html', { 'repo': repo, @@ -1426,6 +1432,7 @@ def view_priv_shared_file(request, token): 'file_encoding_list':ret_dict['file_encoding_list'], 'html_exists': ret_dict['html_exists'], 'html_detail': ret_dict.get('html_detail', {}), + 'office_preview_token': office_preview_token, 'filetype': ret_dict['filetype'], 'use_pdfjs':USE_PDFJS, 'accessible_repos': accessible_repos,