diff --git a/seahub/base/context_processors.py b/seahub/base/context_processors.py index 4f1899c8df..62af02de23 100644 --- a/seahub/base/context_processors.py +++ b/seahub/base/context_processors.py @@ -17,7 +17,8 @@ from constance import config from seahub.settings import SEAFILE_VERSION, SITE_TITLE, SITE_NAME, \ MAX_FILE_NAME, BRANDING_CSS, LOGO_PATH, LOGO_WIDTH, LOGO_HEIGHT,\ SHOW_REPO_DOWNLOAD_BUTTON, SITE_ROOT, ENABLE_GUEST_INVITATION, \ - FAVICON_PATH, ENABLE_THUMBNAIL, MEDIA_ROOT + FAVICON_PATH, ENABLE_THUMBNAIL, THUMBNAIL_SIZE_FOR_ORIGINAL, \ + MEDIA_ROOT try: from seahub.settings import SEACLOUD_MODE @@ -108,6 +109,7 @@ def base(request): 'constance_enabled': dj_settings.CONSTANCE_ENABLED, 'FILE_SERVER_ROOT': file_server_root, 'enable_thumbnail': ENABLE_THUMBNAIL, + 'thumbnail_size_for_original': THUMBNAIL_SIZE_FOR_ORIGINAL, 'enable_guest_invitation': ENABLE_GUEST_INVITATION, 'enable_terms_and_conditions': dj_settings.ENABLE_TERMS_AND_CONDITIONS, 'is_pro': True if is_pro_version() else False, diff --git a/seahub/settings.py b/seahub/settings.py index fc2297b504..c7af34844b 100644 --- a/seahub/settings.py +++ b/seahub/settings.py @@ -519,6 +519,7 @@ THUMBNAIL_EXTENSION = 'png' # for thumbnail: height(px) and width(px) THUMBNAIL_DEFAULT_SIZE = 48 THUMBNAIL_SIZE_FOR_GRID = 192 +THUMBNAIL_SIZE_FOR_ORIGINAL = 1024 # size(MB) limit for generate thumbnail THUMBNAIL_IMAGE_SIZE_LIMIT = 20 diff --git a/seahub/templates/libraries.html b/seahub/templates/libraries.html index eb212fc3fa..0e24c3e7a5 100644 --- a/seahub/templates/libraries.html +++ b/seahub/templates/libraries.html @@ -253,6 +253,7 @@ app["pageOptions"] = { enable_thumbnail: {% if enable_thumbnail %} true {% else %} false {% endif %}, thumbnail_default_size: {{ thumbnail_default_size }}, thumbnail_size_for_grid: {{ thumbnail_size_for_grid }}, + thumbnail_size_for_original: {{ thumbnail_size_for_original }}, language_code: "{{ LANGUAGE_CODE }}", enable_encrypted_library: {% if enable_encrypted_library %} true {% else %} false {% endif %}, enable_repo_history_setting: {% if enable_repo_history_setting %} true {% else %} false {% endif %}, diff --git a/seahub/templates/shared_file_view.html b/seahub/templates/shared_file_view.html index 238d6f4b2d..bcdfc2eaac 100644 --- a/seahub/templates/shared_file_view.html +++ b/seahub/templates/shared_file_view.html @@ -127,9 +127,9 @@ $('#file-save-form').submit(function() { {% if enable_thumbnail %} {% if from_shared_dir %} var encoded_path = encodePath('{{ path|escapejs }}'); // path: '/Portrait_8.jpg' - $('#image-view').attr('src', '{{ SITE_ROOT }}thumbnail/{{ shared_token }}/1024' + encoded_path); + $('#image-view').attr('src', '{{ SITE_ROOT }}thumbnail/{{ shared_token }}/{{ thumbnail_size_for_original }}' + encoded_path); {% else %} - $('#image-view').attr('src', '{{ SITE_ROOT }}thumbnail/{{ shared_token }}/1024/' + encodeURIComponent('{{file_name|escapejs}}')); + $('#image-view').attr('src', '{{ SITE_ROOT }}thumbnail/{{ shared_token }}/{{ thumbnail_size_for_original }}/' + encodeURIComponent('{{file_name|escapejs}}')); {% endif %} $('#image-view').on('error', function() { // fail to load thumbnail $(this).attr('src', '{{ raw_path|escapejs }}'); diff --git a/seahub/templates/view_file_image.html b/seahub/templates/view_file_image.html index e2b677184c..637fed6fb3 100644 --- a/seahub/templates/view_file_image.html +++ b/seahub/templates/view_file_image.html @@ -27,7 +27,7 @@ body { overflow:hidden; } {% if enable_thumbnail and not repo.encrypted %} var encoded_path = encodePath('{{ path|escapejs }}'); // path: '/Portrait_8.jpg' $('#image-view') - .attr('src', '{{ SITE_ROOT }}thumbnail/{{ repo.id }}/1024' + encoded_path) + .attr('src', '{{ SITE_ROOT }}thumbnail/{{ repo.id }}/{{ thumbnail_size_for_original }}' + encoded_path) .on('error', function() { // fail to load thumbnail $(this).attr('src', '{{ raw_path|escapejs }}'); }) diff --git a/seahub/templates/view_shared_dir.html b/seahub/templates/view_shared_dir.html index d5ea7fb1cf..fce8efa42d 100644 --- a/seahub/templates/view_shared_dir.html +++ b/seahub/templates/view_shared_dir.html @@ -191,7 +191,7 @@ var magnificOptions = { $('[data-mfp-src]').each(function(index, item) { var $item = $(item); var file_name = $item.closest('.file-item').attr('data-name'); - $item.attr('data-mfp-src', '{{ SITE_ROOT }}thumbnail/{{ token }}/1024' + encodePath(cur_path + file_name)); + $item.attr('data-mfp-src', '{{ SITE_ROOT }}thumbnail/{{ token }}/{{ thumbnail_size_for_original }}' + encodePath(cur_path + file_name)); }); {% endif %} $('.img-name-link').magnificPopup(magnificOptions); diff --git a/static/scripts/app/views/dir.js b/static/scripts/app/views/dir.js index d334bef689..8120d7965e 100644 --- a/static/scripts/app/views/dir.js +++ b/static/scripts/app/views/dir.js @@ -238,7 +238,7 @@ define([ if (use_thumbnail) { item_src = Common.getUrl($.extend(url_options, { 'name': 'thumbnail_get', - 'size': 1024 + 'size': app.pageOptions.thumbnail_size_for_original })); } else { item_src = Common.getUrl($.extend(url_options, { diff --git a/static/scripts/app/views/starred-file-item.js b/static/scripts/app/views/starred-file-item.js index fd235c2641..9c722efcff 100644 --- a/static/scripts/app/views/starred-file-item.js +++ b/static/scripts/app/views/starred-file-item.js @@ -37,7 +37,7 @@ define([ this.$('.img-name-link').attr('data-mfp-src', Common.getUrl({ 'name': 'thumbnail_get', 'repo_id': data.repo_id, - 'size': 1024, + 'size': app.pageOptions.thumbnail_size_for_original, 'path': data.encoded_path })); }